diff options
Diffstat (limited to 'src/Registries/BlockStates.h')
-rw-r--r-- | src/Registries/BlockStates.h | 60150 |
1 files changed, 34719 insertions, 25431 deletions
diff --git a/src/Registries/BlockStates.h b/src/Registries/BlockStates.h index 4419fc896..e4fc25f4e 100644 --- a/src/Registries/BlockStates.h +++ b/src/Registries/BlockStates.h @@ -6,25480 +6,34768 @@ namespace Block { - namespace AcaciaButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState AcaciaButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6442; - else return 6443; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6444; - else return 6445; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6446; - else return 6447; - else - if (Powered) return 6448; - else return 6449; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6450; - else return 6451; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6452; - else return 6453; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6454; - else return 6455; - else - if (Powered) return 6456; - else return 6457; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6458; - else return 6459; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6460; - else return 6461; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6462; - else return 6463; - else - if (Powered) return 6464; - else return 6465; - } - BlockState AcaciaButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace AcaciaDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState AcaciaDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8930; - else return 8931; - else - if (Powered) return 8932; - else return 8933; - else - if (Open) - if (Powered) return 8934; - else return 8935; - else - if (Powered) return 8936; - else return 8937; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8938; - else return 8939; - else - if (Powered) return 8940; - else return 8941; - else - if (Open) - if (Powered) return 8942; - else return 8943; - else - if (Powered) return 8944; - else return 8945; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8946; - else return 8947; - else - if (Powered) return 8948; - else return 8949; - else - if (Open) - if (Powered) return 8950; - else return 8951; - else - if (Powered) return 8952; - else return 8953; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8954; - else return 8955; - else - if (Powered) return 8956; - else return 8957; - else - if (Open) - if (Powered) return 8958; - else return 8959; - else - if (Powered) return 8960; - else return 8961; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8962; - else return 8963; - else - if (Powered) return 8964; - else return 8965; - else - if (Open) - if (Powered) return 8966; - else return 8967; - else - if (Powered) return 8968; - else return 8969; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8970; - else return 8971; - else - if (Powered) return 8972; - else return 8973; - else - if (Open) - if (Powered) return 8974; - else return 8975; - else - if (Powered) return 8976; - else return 8977; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8978; - else return 8979; - else - if (Powered) return 8980; - else return 8981; - else - if (Open) - if (Powered) return 8982; - else return 8983; - else - if (Powered) return 8984; - else return 8985; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8986; - else return 8987; - else - if (Powered) return 8988; - else return 8989; - else - if (Open) - if (Powered) return 8990; - else return 8991; - else - if (Powered) return 8992; - else return 8993; - } - BlockState AcaciaDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace AcaciaFence - { - constexpr BlockState AcaciaFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 8676; - else return 8677; - else - if (West) return 8680; - else return 8681; - else - if (South) - if (West) return 8684; - else return 8685; - else - if (West) return 8688; - else return 8689; +namespace AcaciaButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState AcaciaButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6442; else - if (North) - if (South) - if (West) return 8692; - else return 8693; - else - if (West) return 8696; - else return 8697; - else - if (South) - if (West) return 8700; - else return 8701; - else - if (West) return 8704; - else return 8705; - } - BlockState AcaciaFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace AcaciaFenceGate - { - constexpr BlockState AcaciaFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 8514; - else return 8515; - else - if (Powered) return 8516; - else return 8517; - else - if (Open) - if (Powered) return 8518; - else return 8519; - else - if (Powered) return 8520; - else return 8521; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 8522; - else return 8523; - else - if (Powered) return 8524; - else return 8525; - else - if (Open) - if (Powered) return 8526; - else return 8527; - else - if (Powered) return 8528; - else return 8529; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 8530; - else return 8531; - else - if (Powered) return 8532; - else return 8533; - else - if (Open) - if (Powered) return 8534; - else return 8535; - else - if (Powered) return 8536; - else return 8537; - else - if (InWall) - if (Open) - if (Powered) return 8538; - else return 8539; - else - if (Powered) return 8540; - else return 8541; - else - if (Open) - if (Powered) return 8542; - else return 8543; - else - if (Powered) return 8544; - else return 8545; - } - BlockState AcaciaFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace AcaciaLeaves - { - constexpr BlockState AcaciaLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 201; - else return 202; - else if (Distance == 2) - if (Persistent) return 203; - else return 204; - else if (Distance == 3) - if (Persistent) return 205; - else return 206; - else if (Distance == 4) - if (Persistent) return 207; - else return 208; - else if (Distance == 5) - if (Persistent) return 209; - else return 210; - else if (Distance == 6) - if (Persistent) return 211; - else return 212; - else - if (Persistent) return 213; - else return 214; - } - BlockState AcaciaLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace AcaciaLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState AcaciaLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 85; - else if (Axis == Axis::Y) return 86; - else return 87; - } - BlockState AcaciaLog(); - enum Axis Axis(BlockState Block); - } - namespace AcaciaPlanks - { - constexpr BlockState AcaciaPlanks() - { - return 19; - } - } - namespace AcaciaPressurePlate - { - constexpr BlockState AcaciaPressurePlate(const bool Powered) - { - if (Powered) return 3881; - else return 3882; - } - BlockState AcaciaPressurePlate(); - bool Powered(BlockState Block); - } - namespace AcaciaSapling - { - constexpr BlockState AcaciaSapling(const unsigned char Stage) - { - if (Stage == 0) return 29; - else return 30; - } - BlockState AcaciaSapling(); - unsigned char Stage(BlockState Block); - } - namespace AcaciaSign - { - constexpr BlockState AcaciaSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3478; - else if (Rotation == 1) return 3480; - else if (Rotation == 2) return 3482; - else if (Rotation == 3) return 3484; - else if (Rotation == 4) return 3486; - else if (Rotation == 5) return 3488; - else if (Rotation == 6) return 3490; - else if (Rotation == 7) return 3492; - else if (Rotation == 8) return 3494; - else if (Rotation == 9) return 3496; - else if (Rotation == 10) return 3498; - else if (Rotation == 11) return 3500; - else if (Rotation == 12) return 3502; - else if (Rotation == 13) return 3504; - else if (Rotation == 14) return 3506; - else return 3508; - } - BlockState AcaciaSign(); - unsigned char Rotation(BlockState Block); - } - namespace AcaciaSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState AcaciaSlab(const enum Type Type) - { - if (Type == Type::Top) return 8325; - else if (Type == Type::Bottom) return 8327; - else return 8329; - } - BlockState AcaciaSlab(); - enum Type Type(BlockState Block); - } - namespace AcaciaStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState AcaciaStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7376; - else if (Shape == Shape::InnerLeft) return 7378; - else if (Shape == Shape::InnerRight) return 7380; - else if (Shape == Shape::OuterLeft) return 7382; - else return 7384; - else - if (Shape == Shape::Straight) return 7386; - else if (Shape == Shape::InnerLeft) return 7388; - else if (Shape == Shape::InnerRight) return 7390; - else if (Shape == Shape::OuterLeft) return 7392; - else return 7394; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7396; - else if (Shape == Shape::InnerLeft) return 7398; - else if (Shape == Shape::InnerRight) return 7400; - else if (Shape == Shape::OuterLeft) return 7402; - else return 7404; - else - if (Shape == Shape::Straight) return 7406; - else if (Shape == Shape::InnerLeft) return 7408; - else if (Shape == Shape::InnerRight) return 7410; - else if (Shape == Shape::OuterLeft) return 7412; - else return 7414; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7416; - else if (Shape == Shape::InnerLeft) return 7418; - else if (Shape == Shape::InnerRight) return 7420; - else if (Shape == Shape::OuterLeft) return 7422; - else return 7424; - else - if (Shape == Shape::Straight) return 7426; - else if (Shape == Shape::InnerLeft) return 7428; - else if (Shape == Shape::InnerRight) return 7430; - else if (Shape == Shape::OuterLeft) return 7432; - else return 7434; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7436; - else if (Shape == Shape::InnerLeft) return 7438; - else if (Shape == Shape::InnerRight) return 7440; - else if (Shape == Shape::OuterLeft) return 7442; - else return 7444; - else - if (Shape == Shape::Straight) return 7446; - else if (Shape == Shape::InnerLeft) return 7448; - else if (Shape == Shape::InnerRight) return 7450; - else if (Shape == Shape::OuterLeft) return 7452; - else return 7454; - } - BlockState AcaciaStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace AcaciaTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState AcaciaTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4368; - else return 4370; - else - if (Powered) return 4372; - else return 4374; - else - if (Open) - if (Powered) return 4376; - else return 4378; - else - if (Powered) return 4380; - else return 4382; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4384; - else return 4386; - else - if (Powered) return 4388; - else return 4390; - else - if (Open) - if (Powered) return 4392; - else return 4394; - else - if (Powered) return 4396; - else return 4398; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4400; - else return 4402; - else - if (Powered) return 4404; - else return 4406; - else - if (Open) - if (Powered) return 4408; - else return 4410; - else - if (Powered) return 4412; - else return 4414; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4416; - else return 4418; - else - if (Powered) return 4420; - else return 4422; - else - if (Open) - if (Powered) return 4424; - else return 4426; - else - if (Powered) return 4428; - else return 4430; - } - BlockState AcaciaTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace AcaciaWallSign - { - constexpr BlockState AcaciaWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3760; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3762; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3764; - else return 3766; - } - BlockState AcaciaWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace AcaciaWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState AcaciaWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 121; - else if (Axis == Axis::Y) return 122; - else return 123; - } - BlockState AcaciaWood(); - enum Axis Axis(BlockState Block); - } - namespace ActivatorRail - { - enum class Shape - { - NorthSouth, - EastWest, - AscendingEast, - AscendingWest, - AscendingNorth, - AscendingSouth - }; - constexpr BlockState ActivatorRail(const bool Powered, const enum Shape Shape) - { - if (Powered) - if (Shape == Shape::NorthSouth) return 6823; - else if (Shape == Shape::EastWest) return 6824; - else if (Shape == Shape::AscendingEast) return 6825; - else if (Shape == Shape::AscendingWest) return 6826; - else if (Shape == Shape::AscendingNorth) return 6827; - else return 6828; - else - if (Shape == Shape::NorthSouth) return 6829; - else if (Shape == Shape::EastWest) return 6830; - else if (Shape == Shape::AscendingEast) return 6831; - else if (Shape == Shape::AscendingWest) return 6832; - else if (Shape == Shape::AscendingNorth) return 6833; - else return 6834; - } - BlockState ActivatorRail(); - bool Powered(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace Air - { - constexpr BlockState Air() - { - return -0; - } - } - namespace Allium - { - constexpr BlockState Allium() - { - return 1415; - } - } - namespace AncientDebris - { - constexpr BlockState AncientDebris() - { - return 15827; - } - } - namespace Andesite - { - constexpr BlockState Andesite() - { - return 6; - } - } - namespace AndesiteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState AndesiteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10844; - else if (Type == Type::Bottom) return 10846; - else return 10848; - } - BlockState AndesiteSlab(); - enum Type Type(BlockState Block); - } - namespace AndesiteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState AndesiteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10470; - else if (Shape == Shape::InnerLeft) return 10472; - else if (Shape == Shape::InnerRight) return 10474; - else if (Shape == Shape::OuterLeft) return 10476; - else return 10478; - else - if (Shape == Shape::Straight) return 10480; - else if (Shape == Shape::InnerLeft) return 10482; - else if (Shape == Shape::InnerRight) return 10484; - else if (Shape == Shape::OuterLeft) return 10486; - else return 10488; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10490; - else if (Shape == Shape::InnerLeft) return 10492; - else if (Shape == Shape::InnerRight) return 10494; - else if (Shape == Shape::OuterLeft) return 10496; - else return 10498; - else - if (Shape == Shape::Straight) return 10500; - else if (Shape == Shape::InnerLeft) return 10502; - else if (Shape == Shape::InnerRight) return 10504; - else if (Shape == Shape::OuterLeft) return 10506; - else return 10508; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10510; - else if (Shape == Shape::InnerLeft) return 10512; - else if (Shape == Shape::InnerRight) return 10514; - else if (Shape == Shape::OuterLeft) return 10516; - else return 10518; - else - if (Shape == Shape::Straight) return 10520; - else if (Shape == Shape::InnerLeft) return 10522; - else if (Shape == Shape::InnerRight) return 10524; - else if (Shape == Shape::OuterLeft) return 10526; - else return 10528; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10530; - else if (Shape == Shape::InnerLeft) return 10532; - else if (Shape == Shape::InnerRight) return 10534; - else if (Shape == Shape::OuterLeft) return 10536; - else return 10538; - else - if (Shape == Shape::Straight) return 10540; - else if (Shape == Shape::InnerLeft) return 10542; - else if (Shape == Shape::InnerRight) return 10544; - else if (Shape == Shape::OuterLeft) return 10546; - else return 10548; - } - BlockState AndesiteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState AndesiteWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13138; - else if (West == West::Low) return 13139; - else return 13140; - else - if (West == West::None) return 13144; - else if (West == West::Low) return 13145; - else return 13146; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13150; - else if (West == West::Low) return 13151; - else return 13152; - else - if (West == West::None) return 13156; - else if (West == West::Low) return 13157; - else return 13158; - else - if (Up) - if (West == West::None) return 13162; - else if (West == West::Low) return 13163; - else return 13164; - else - if (West == West::None) return 13168; - else if (West == West::Low) return 13169; - else return 13170; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13174; - else if (West == West::Low) return 13175; - else return 13176; - else - if (West == West::None) return 13180; - else if (West == West::Low) return 13181; - else return 13182; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13186; - else if (West == West::Low) return 13187; - else return 13188; - else - if (West == West::None) return 13192; - else if (West == West::Low) return 13193; - else return 13194; - else - if (Up) - if (West == West::None) return 13198; - else if (West == West::Low) return 13199; - else return 13200; - else - if (West == West::None) return 13204; - else if (West == West::Low) return 13205; - else return 13206; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13210; - else if (West == West::Low) return 13211; - else return 13212; - else - if (West == West::None) return 13216; - else if (West == West::Low) return 13217; - else return 13218; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13222; - else if (West == West::Low) return 13223; - else return 13224; - else - if (West == West::None) return 13228; - else if (West == West::Low) return 13229; - else return 13230; - else - if (Up) - if (West == West::None) return 13234; - else if (West == West::Low) return 13235; - else return 13236; - else - if (West == West::None) return 13240; - else if (West == West::Low) return 13241; - else return 13242; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13246; - else if (West == West::Low) return 13247; - else return 13248; - else - if (West == West::None) return 13252; - else if (West == West::Low) return 13253; - else return 13254; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13258; - else if (West == West::Low) return 13259; - else return 13260; - else - if (West == West::None) return 13264; - else if (West == West::Low) return 13265; - else return 13266; - else - if (Up) - if (West == West::None) return 13270; - else if (West == West::Low) return 13271; - else return 13272; - else - if (West == West::None) return 13276; - else if (West == West::Low) return 13277; - else return 13278; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13282; - else if (West == West::Low) return 13283; - else return 13284; - else - if (West == West::None) return 13288; - else if (West == West::Low) return 13289; - else return 13290; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13294; - else if (West == West::Low) return 13295; - else return 13296; - else - if (West == West::None) return 13300; - else if (West == West::Low) return 13301; - else return 13302; - else - if (Up) - if (West == West::None) return 13306; - else if (West == West::Low) return 13307; - else return 13308; - else - if (West == West::None) return 13312; - else if (West == West::Low) return 13313; - else return 13314; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13318; - else if (West == West::Low) return 13319; - else return 13320; - else - if (West == West::None) return 13324; - else if (West == West::Low) return 13325; - else return 13326; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13330; - else if (West == West::Low) return 13331; - else return 13332; - else - if (West == West::None) return 13336; - else if (West == West::Low) return 13337; - else return 13338; - else - if (Up) - if (West == West::None) return 13342; - else if (West == West::Low) return 13343; - else return 13344; - else - if (West == West::None) return 13348; - else if (West == West::Low) return 13349; - else return 13350; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13354; - else if (West == West::Low) return 13355; - else return 13356; - else - if (West == West::None) return 13360; - else if (West == West::Low) return 13361; - else return 13362; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13366; - else if (West == West::Low) return 13367; - else return 13368; - else - if (West == West::None) return 13372; - else if (West == West::Low) return 13373; - else return 13374; - else - if (Up) - if (West == West::None) return 13378; - else if (West == West::Low) return 13379; - else return 13380; - else - if (West == West::None) return 13384; - else if (West == West::Low) return 13385; - else return 13386; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13390; - else if (West == West::Low) return 13391; - else return 13392; - else - if (West == West::None) return 13396; - else if (West == West::Low) return 13397; - else return 13398; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13402; - else if (West == West::Low) return 13403; - else return 13404; - else - if (West == West::None) return 13408; - else if (West == West::Low) return 13409; - else return 13410; - else - if (Up) - if (West == West::None) return 13414; - else if (West == West::Low) return 13415; - else return 13416; - else - if (West == West::None) return 13420; - else if (West == West::Low) return 13421; - else return 13422; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13426; - else if (West == West::Low) return 13427; - else return 13428; - else - if (West == West::None) return 13432; - else if (West == West::Low) return 13433; - else return 13434; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13438; - else if (West == West::Low) return 13439; - else return 13440; - else - if (West == West::None) return 13444; - else if (West == West::Low) return 13445; - else return 13446; - else - if (Up) - if (West == West::None) return 13450; - else if (West == West::Low) return 13451; - else return 13452; - else - if (West == West::None) return 13456; - else if (West == West::Low) return 13457; - else return 13458; - } - BlockState AndesiteWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Anvil - { - constexpr BlockState Anvil(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6610; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6611; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6612; - else return 6613; - } - BlockState Anvil(); - eBlockFace Facing(BlockState Block); - } - namespace AttachedMelonStem - { - constexpr BlockState AttachedMelonStem(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4768; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4769; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 4770; - else return 4771; - } - BlockState AttachedMelonStem(); - eBlockFace Facing(BlockState Block); - } - namespace AttachedPumpkinStem - { - constexpr BlockState AttachedPumpkinStem(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4764; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4765; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 4766; - else return 4767; - } - BlockState AttachedPumpkinStem(); - eBlockFace Facing(BlockState Block); - } - namespace AzureBluet - { - constexpr BlockState AzureBluet() - { - return 1416; - } - } - namespace Bamboo - { - enum class Leaves - { - None, - Small, - Large - }; - constexpr BlockState Bamboo(const unsigned char Age, const enum Leaves Leaves, const unsigned char Stage) - { - if (Age == 0) - if (Leaves == Leaves::None) - if (Stage == 0) return 9652; - else return 9653; - else if (Leaves == Leaves::Small) - if (Stage == 0) return 9654; - else return 9655; - else - if (Stage == 0) return 9656; - else return 9657; - else - if (Leaves == Leaves::None) - if (Stage == 0) return 9658; - else return 9659; - else if (Leaves == Leaves::Small) - if (Stage == 0) return 9660; - else return 9661; - else - if (Stage == 0) return 9662; - else return 9663; - } - BlockState Bamboo(); - unsigned char Age(BlockState Block); - enum Leaves Leaves(BlockState Block); - unsigned char Stage(BlockState Block); - } - namespace BambooSapling - { - constexpr BlockState BambooSapling() - { - return 9651; - } - } - namespace Barrel - { - constexpr BlockState Barrel(const eBlockFace Facing, const bool Open) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Open) return 14791; - else return 14792; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Open) return 14793; - else return 14794; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Open) return 14795; - else return 14796; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Open) return 14797; - else return 14798; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Open) return 14799; - else return 14800; - else - if (Open) return 14801; - else return 14802; - } - BlockState Barrel(); - eBlockFace Facing(BlockState Block); - bool Open(BlockState Block); - } - namespace Barrier - { - constexpr BlockState Barrier() - { - return 7536; - } - } - namespace Basalt - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState Basalt(const enum Axis Axis) - { - if (Axis == Axis::X) return 4002; - else if (Axis == Axis::Y) return 4003; - else return 4004; - } - BlockState Basalt(); - enum Axis Axis(BlockState Block); - } - namespace Beacon - { - constexpr BlockState Beacon() - { - return 5656; - } - } - namespace Bedrock - { - constexpr BlockState Bedrock() - { - return 33; - } - } - namespace BeeNest - { - constexpr BlockState BeeNest(const eBlockFace Facing, const unsigned char HoneyLevel) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (HoneyLevel == 0) return 15776; - else if (HoneyLevel == 1) return 15777; - else if (HoneyLevel == 2) return 15778; - else if (HoneyLevel == 3) return 15779; - else if (HoneyLevel == 4) return 15780; - else return 15781; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (HoneyLevel == 0) return 15782; - else if (HoneyLevel == 1) return 15783; - else if (HoneyLevel == 2) return 15784; - else if (HoneyLevel == 3) return 15785; - else if (HoneyLevel == 4) return 15786; - else return 15787; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (HoneyLevel == 0) return 15788; - else if (HoneyLevel == 1) return 15789; - else if (HoneyLevel == 2) return 15790; - else if (HoneyLevel == 3) return 15791; - else if (HoneyLevel == 4) return 15792; - else return 15793; - else - if (HoneyLevel == 0) return 15794; - else if (HoneyLevel == 1) return 15795; - else if (HoneyLevel == 2) return 15796; - else if (HoneyLevel == 3) return 15797; - else if (HoneyLevel == 4) return 15798; - else return 15799; - } - BlockState BeeNest(); - eBlockFace Facing(BlockState Block); - unsigned char HoneyLevel(BlockState Block); - } - namespace Beehive - { - constexpr BlockState Beehive(const eBlockFace Facing, const unsigned char HoneyLevel) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (HoneyLevel == 0) return 15800; - else if (HoneyLevel == 1) return 15801; - else if (HoneyLevel == 2) return 15802; - else if (HoneyLevel == 3) return 15803; - else if (HoneyLevel == 4) return 15804; - else return 15805; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (HoneyLevel == 0) return 15806; - else if (HoneyLevel == 1) return 15807; - else if (HoneyLevel == 2) return 15808; - else if (HoneyLevel == 3) return 15809; - else if (HoneyLevel == 4) return 15810; - else return 15811; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (HoneyLevel == 0) return 15812; - else if (HoneyLevel == 1) return 15813; - else if (HoneyLevel == 2) return 15814; - else if (HoneyLevel == 3) return 15815; - else if (HoneyLevel == 4) return 15816; - else return 15817; - else - if (HoneyLevel == 0) return 15818; - else if (HoneyLevel == 1) return 15819; - else if (HoneyLevel == 2) return 15820; - else if (HoneyLevel == 3) return 15821; - else if (HoneyLevel == 4) return 15822; - else return 15823; - } - BlockState Beehive(); - eBlockFace Facing(BlockState Block); - unsigned char HoneyLevel(BlockState Block); - } - namespace Beetroots - { - constexpr BlockState Beetroots(const unsigned char Age) - { - if (Age == 0) return 9219; - else if (Age == 1) return 9220; - else if (Age == 2) return 9221; - else return 9222; - } - BlockState Beetroots(); - unsigned char Age(BlockState Block); - } - namespace Bell - { - enum class Attachment - { - Floor, - Ceiling, - SingleWall, - DoubleWall - }; - constexpr BlockState Bell(const enum Attachment Attachment, const eBlockFace Facing, const bool Powered) - { - if (Attachment == Attachment::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 14854; - else return 14855; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 14856; - else return 14857; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 14858; - else return 14859; - else - if (Powered) return 14860; - else return 14861; - else if (Attachment == Attachment::Ceiling) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 14862; - else return 14863; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 14864; - else return 14865; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 14866; - else return 14867; - else - if (Powered) return 14868; - else return 14869; - else if (Attachment == Attachment::SingleWall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 14870; - else return 14871; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 14872; - else return 14873; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 14874; - else return 14875; - else - if (Powered) return 14876; - else return 14877; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 14878; - else return 14879; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 14880; - else return 14881; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 14882; - else return 14883; - else - if (Powered) return 14884; - else return 14885; - } - BlockState Bell(); - enum Attachment Attachment(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace BirchButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState BirchButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6394; - else return 6395; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6396; - else return 6397; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6398; - else return 6399; - else - if (Powered) return 6400; - else return 6401; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6402; - else return 6403; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6404; - else return 6405; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6406; - else return 6407; - else - if (Powered) return 6408; - else return 6409; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6410; - else return 6411; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6412; - else return 6413; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6414; - else return 6415; - else - if (Powered) return 6416; - else return 6417; - } - BlockState BirchButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace BirchDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState BirchDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8802; - else return 8803; - else - if (Powered) return 8804; - else return 8805; - else - if (Open) - if (Powered) return 8806; - else return 8807; - else - if (Powered) return 8808; - else return 8809; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8810; - else return 8811; - else - if (Powered) return 8812; - else return 8813; - else - if (Open) - if (Powered) return 8814; - else return 8815; - else - if (Powered) return 8816; - else return 8817; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8818; - else return 8819; - else - if (Powered) return 8820; - else return 8821; - else - if (Open) - if (Powered) return 8822; - else return 8823; - else - if (Powered) return 8824; - else return 8825; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8826; - else return 8827; - else - if (Powered) return 8828; - else return 8829; - else - if (Open) - if (Powered) return 8830; - else return 8831; - else - if (Powered) return 8832; - else return 8833; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8834; - else return 8835; - else - if (Powered) return 8836; - else return 8837; - else - if (Open) - if (Powered) return 8838; - else return 8839; - else - if (Powered) return 8840; - else return 8841; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8842; - else return 8843; - else - if (Powered) return 8844; - else return 8845; - else - if (Open) - if (Powered) return 8846; - else return 8847; - else - if (Powered) return 8848; - else return 8849; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8850; - else return 8851; - else - if (Powered) return 8852; - else return 8853; - else - if (Open) - if (Powered) return 8854; - else return 8855; - else - if (Powered) return 8856; - else return 8857; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8858; - else return 8859; - else - if (Powered) return 8860; - else return 8861; - else - if (Open) - if (Powered) return 8862; - else return 8863; - else - if (Powered) return 8864; - else return 8865; - } - BlockState BirchDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace BirchFence - { - constexpr BlockState BirchFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 8612; - else return 8613; - else - if (West) return 8616; - else return 8617; - else - if (South) - if (West) return 8620; - else return 8621; - else - if (West) return 8624; - else return 8625; + return 6443; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6444; else - if (North) - if (South) - if (West) return 8628; - else return 8629; - else - if (West) return 8632; - else return 8633; - else - if (South) - if (West) return 8636; - else return 8637; - else - if (West) return 8640; - else return 8641; - } - BlockState BirchFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace BirchFenceGate - { - constexpr BlockState BirchFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 8450; - else return 8451; - else - if (Powered) return 8452; - else return 8453; - else - if (Open) - if (Powered) return 8454; - else return 8455; - else - if (Powered) return 8456; - else return 8457; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 8458; - else return 8459; - else - if (Powered) return 8460; - else return 8461; - else - if (Open) - if (Powered) return 8462; - else return 8463; - else - if (Powered) return 8464; - else return 8465; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 8466; - else return 8467; - else - if (Powered) return 8468; - else return 8469; - else - if (Open) - if (Powered) return 8470; - else return 8471; - else - if (Powered) return 8472; - else return 8473; - else - if (InWall) - if (Open) - if (Powered) return 8474; - else return 8475; - else - if (Powered) return 8476; - else return 8477; - else - if (Open) - if (Powered) return 8478; - else return 8479; - else - if (Powered) return 8480; - else return 8481; - } - BlockState BirchFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace BirchLeaves - { - constexpr BlockState BirchLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 173; - else return 174; - else if (Distance == 2) - if (Persistent) return 175; - else return 176; - else if (Distance == 3) - if (Persistent) return 177; - else return 178; - else if (Distance == 4) - if (Persistent) return 179; - else return 180; - else if (Distance == 5) - if (Persistent) return 181; - else return 182; - else if (Distance == 6) - if (Persistent) return 183; - else return 184; - else - if (Persistent) return 185; - else return 186; - } - BlockState BirchLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace BirchLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState BirchLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 79; - else if (Axis == Axis::Y) return 80; - else return 81; - } - BlockState BirchLog(); - enum Axis Axis(BlockState Block); - } - namespace BirchPlanks - { - constexpr BlockState BirchPlanks() - { - return 17; - } - } - namespace BirchPressurePlate - { - constexpr BlockState BirchPressurePlate(const bool Powered) - { - if (Powered) return 3877; - else return 3878; - } - BlockState BirchPressurePlate(); - bool Powered(BlockState Block); - } - namespace BirchSapling - { - constexpr BlockState BirchSapling(const unsigned char Stage) - { - if (Stage == 0) return 25; - else return 26; - } - BlockState BirchSapling(); - unsigned char Stage(BlockState Block); - } - namespace BirchSign - { - constexpr BlockState BirchSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3446; - else if (Rotation == 1) return 3448; - else if (Rotation == 2) return 3450; - else if (Rotation == 3) return 3452; - else if (Rotation == 4) return 3454; - else if (Rotation == 5) return 3456; - else if (Rotation == 6) return 3458; - else if (Rotation == 7) return 3460; - else if (Rotation == 8) return 3462; - else if (Rotation == 9) return 3464; - else if (Rotation == 10) return 3466; - else if (Rotation == 11) return 3468; - else if (Rotation == 12) return 3470; - else if (Rotation == 13) return 3472; - else if (Rotation == 14) return 3474; - else return 3476; - } - BlockState BirchSign(); - unsigned char Rotation(BlockState Block); - } - namespace BirchSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState BirchSlab(const enum Type Type) - { - if (Type == Type::Top) return 8313; - else if (Type == Type::Bottom) return 8315; - else return 8317; - } - BlockState BirchSlab(); - enum Type Type(BlockState Block); - } - namespace BirchStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState BirchStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5485; - else if (Shape == Shape::InnerLeft) return 5487; - else if (Shape == Shape::InnerRight) return 5489; - else if (Shape == Shape::OuterLeft) return 5491; - else return 5493; - else - if (Shape == Shape::Straight) return 5495; - else if (Shape == Shape::InnerLeft) return 5497; - else if (Shape == Shape::InnerRight) return 5499; - else if (Shape == Shape::OuterLeft) return 5501; - else return 5503; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5505; - else if (Shape == Shape::InnerLeft) return 5507; - else if (Shape == Shape::InnerRight) return 5509; - else if (Shape == Shape::OuterLeft) return 5511; - else return 5513; - else - if (Shape == Shape::Straight) return 5515; - else if (Shape == Shape::InnerLeft) return 5517; - else if (Shape == Shape::InnerRight) return 5519; - else if (Shape == Shape::OuterLeft) return 5521; - else return 5523; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5525; - else if (Shape == Shape::InnerLeft) return 5527; - else if (Shape == Shape::InnerRight) return 5529; - else if (Shape == Shape::OuterLeft) return 5531; - else return 5533; - else - if (Shape == Shape::Straight) return 5535; - else if (Shape == Shape::InnerLeft) return 5537; - else if (Shape == Shape::InnerRight) return 5539; - else if (Shape == Shape::OuterLeft) return 5541; - else return 5543; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5545; - else if (Shape == Shape::InnerLeft) return 5547; - else if (Shape == Shape::InnerRight) return 5549; - else if (Shape == Shape::OuterLeft) return 5551; - else return 5553; - else - if (Shape == Shape::Straight) return 5555; - else if (Shape == Shape::InnerLeft) return 5557; - else if (Shape == Shape::InnerRight) return 5559; - else if (Shape == Shape::OuterLeft) return 5561; - else return 5563; - } - BlockState BirchStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace BirchTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState BirchTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4240; - else return 4242; - else - if (Powered) return 4244; - else return 4246; - else - if (Open) - if (Powered) return 4248; - else return 4250; - else - if (Powered) return 4252; - else return 4254; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4256; - else return 4258; - else - if (Powered) return 4260; - else return 4262; - else - if (Open) - if (Powered) return 4264; - else return 4266; - else - if (Powered) return 4268; - else return 4270; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4272; - else return 4274; - else - if (Powered) return 4276; - else return 4278; - else - if (Open) - if (Powered) return 4280; - else return 4282; - else - if (Powered) return 4284; - else return 4286; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4288; - else return 4290; - else - if (Powered) return 4292; - else return 4294; - else - if (Open) - if (Powered) return 4296; - else return 4298; - else - if (Powered) return 4300; - else return 4302; - } - BlockState BirchTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace BirchWallSign - { - constexpr BlockState BirchWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3752; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3754; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3756; - else return 3758; - } - BlockState BirchWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace BirchWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState BirchWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 115; - else if (Axis == Axis::Y) return 116; - else return 117; - } - BlockState BirchWood(); - enum Axis Axis(BlockState Block); - } - namespace BlackBanner - { - constexpr BlockState BlackBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8137; - else if (Rotation == 1) return 8138; - else if (Rotation == 2) return 8139; - else if (Rotation == 3) return 8140; - else if (Rotation == 4) return 8141; - else if (Rotation == 5) return 8142; - else if (Rotation == 6) return 8143; - else if (Rotation == 7) return 8144; - else if (Rotation == 8) return 8145; - else if (Rotation == 9) return 8146; - else if (Rotation == 10) return 8147; - else if (Rotation == 11) return 8148; - else if (Rotation == 12) return 8149; - else if (Rotation == 13) return 8150; - else if (Rotation == 14) return 8151; - else return 8152; - } - BlockState BlackBanner(); - unsigned char Rotation(BlockState Block); - } - namespace BlackBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState BlackBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1289; - else return 1290; - else - if (Part == Part::Head) return 1291; - else return 1292; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1293; - else return 1294; - else - if (Part == Part::Head) return 1295; - else return 1296; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1297; - else return 1298; - else - if (Part == Part::Head) return 1299; - else return 1300; - else - if (Occupied) - if (Part == Part::Head) return 1301; - else return 1302; - else - if (Part == Part::Head) return 1303; - else return 1304; - } - BlockState BlackBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace BlackCarpet - { - constexpr BlockState BlackCarpet() - { - return 7881; - } - } - namespace BlackConcrete - { - constexpr BlockState BlackConcrete() - { - return 9453; - } - } - namespace BlackConcretePowder - { - constexpr BlockState BlackConcretePowder() - { - return 9469; - } - } - namespace BlackGlazedTerracotta - { - constexpr BlockState BlackGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9434; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9435; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9436; - else return 9437; - } - BlockState BlackGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace BlackShulkerBox - { - constexpr BlockState BlackShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9368; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9369; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9370; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9371; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9372; - else return 9373; - } - BlockState BlackShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace BlackStainedGlass - { - constexpr BlockState BlackStainedGlass() - { - return 4110; - } - } - namespace BlackStainedGlassPane - { - constexpr BlockState BlackStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7345; - else return 7346; - else - if (West) return 7349; - else return 7350; - else - if (South) - if (West) return 7353; - else return 7354; - else - if (West) return 7357; - else return 7358; + return 6445; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6446; else - if (North) - if (South) - if (West) return 7361; - else return 7362; - else - if (West) return 7365; - else return 7366; - else - if (South) - if (West) return 7369; - else return 7370; - else - if (West) return 7373; - else return 7374; - } - BlockState BlackStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace BlackTerracotta - { - constexpr BlockState BlackTerracotta() - { - return 6862; - } - } - namespace BlackWallBanner - { - constexpr BlockState BlackWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8213; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8214; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8215; - else return 8216; - } - BlockState BlackWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace BlackWool - { - constexpr BlockState BlackWool() - { - return 1399; - } - } - namespace Blackstone - { - constexpr BlockState Blackstone() - { - return 15839; - } - } - namespace BlackstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState BlackstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 16245; - else if (Type == Type::Bottom) return 16247; - else return 16249; - } - BlockState BlackstoneSlab(); - enum Type Type(BlockState Block); - } - namespace BlackstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState BlackstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15841; - else if (Shape == Shape::InnerLeft) return 15843; - else if (Shape == Shape::InnerRight) return 15845; - else if (Shape == Shape::OuterLeft) return 15847; - else return 15849; - else - if (Shape == Shape::Straight) return 15851; - else if (Shape == Shape::InnerLeft) return 15853; - else if (Shape == Shape::InnerRight) return 15855; - else if (Shape == Shape::OuterLeft) return 15857; - else return 15859; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15861; - else if (Shape == Shape::InnerLeft) return 15863; - else if (Shape == Shape::InnerRight) return 15865; - else if (Shape == Shape::OuterLeft) return 15867; - else return 15869; - else - if (Shape == Shape::Straight) return 15871; - else if (Shape == Shape::InnerLeft) return 15873; - else if (Shape == Shape::InnerRight) return 15875; - else if (Shape == Shape::OuterLeft) return 15877; - else return 15879; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15881; - else if (Shape == Shape::InnerLeft) return 15883; - else if (Shape == Shape::InnerRight) return 15885; - else if (Shape == Shape::OuterLeft) return 15887; - else return 15889; - else - if (Shape == Shape::Straight) return 15891; - else if (Shape == Shape::InnerLeft) return 15893; - else if (Shape == Shape::InnerRight) return 15895; - else if (Shape == Shape::OuterLeft) return 15897; - else return 15899; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15901; - else if (Shape == Shape::InnerLeft) return 15903; - else if (Shape == Shape::InnerRight) return 15905; - else if (Shape == Shape::OuterLeft) return 15907; - else return 15909; - else - if (Shape == Shape::Straight) return 15911; - else if (Shape == Shape::InnerLeft) return 15913; - else if (Shape == Shape::InnerRight) return 15915; - else if (Shape == Shape::OuterLeft) return 15917; - else return 15919; - } - BlockState BlackstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState BlackstoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 15923; - else if (West == West::Low) return 15924; - else return 15925; - else - if (West == West::None) return 15929; - else if (West == West::Low) return 15930; - else return 15931; - else if (South == South::Low) - if (Up) - if (West == West::None) return 15935; - else if (West == West::Low) return 15936; - else return 15937; - else - if (West == West::None) return 15941; - else if (West == West::Low) return 15942; - else return 15943; - else - if (Up) - if (West == West::None) return 15947; - else if (West == West::Low) return 15948; - else return 15949; - else - if (West == West::None) return 15953; - else if (West == West::Low) return 15954; - else return 15955; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 15959; - else if (West == West::Low) return 15960; - else return 15961; - else - if (West == West::None) return 15965; - else if (West == West::Low) return 15966; - else return 15967; - else if (South == South::Low) - if (Up) - if (West == West::None) return 15971; - else if (West == West::Low) return 15972; - else return 15973; - else - if (West == West::None) return 15977; - else if (West == West::Low) return 15978; - else return 15979; - else - if (Up) - if (West == West::None) return 15983; - else if (West == West::Low) return 15984; - else return 15985; - else - if (West == West::None) return 15989; - else if (West == West::Low) return 15990; - else return 15991; - else - if (South == South::None) - if (Up) - if (West == West::None) return 15995; - else if (West == West::Low) return 15996; - else return 15997; - else - if (West == West::None) return 16001; - else if (West == West::Low) return 16002; - else return 16003; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16007; - else if (West == West::Low) return 16008; - else return 16009; - else - if (West == West::None) return 16013; - else if (West == West::Low) return 16014; - else return 16015; - else - if (Up) - if (West == West::None) return 16019; - else if (West == West::Low) return 16020; - else return 16021; - else - if (West == West::None) return 16025; - else if (West == West::Low) return 16026; - else return 16027; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16031; - else if (West == West::Low) return 16032; - else return 16033; - else - if (West == West::None) return 16037; - else if (West == West::Low) return 16038; - else return 16039; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16043; - else if (West == West::Low) return 16044; - else return 16045; - else - if (West == West::None) return 16049; - else if (West == West::Low) return 16050; - else return 16051; - else - if (Up) - if (West == West::None) return 16055; - else if (West == West::Low) return 16056; - else return 16057; - else - if (West == West::None) return 16061; - else if (West == West::Low) return 16062; - else return 16063; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16067; - else if (West == West::Low) return 16068; - else return 16069; - else - if (West == West::None) return 16073; - else if (West == West::Low) return 16074; - else return 16075; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16079; - else if (West == West::Low) return 16080; - else return 16081; - else - if (West == West::None) return 16085; - else if (West == West::Low) return 16086; - else return 16087; - else - if (Up) - if (West == West::None) return 16091; - else if (West == West::Low) return 16092; - else return 16093; - else - if (West == West::None) return 16097; - else if (West == West::Low) return 16098; - else return 16099; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16103; - else if (West == West::Low) return 16104; - else return 16105; - else - if (West == West::None) return 16109; - else if (West == West::Low) return 16110; - else return 16111; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16115; - else if (West == West::Low) return 16116; - else return 16117; - else - if (West == West::None) return 16121; - else if (West == West::Low) return 16122; - else return 16123; - else - if (Up) - if (West == West::None) return 16127; - else if (West == West::Low) return 16128; - else return 16129; - else - if (West == West::None) return 16133; - else if (West == West::Low) return 16134; - else return 16135; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16139; - else if (West == West::Low) return 16140; - else return 16141; - else - if (West == West::None) return 16145; - else if (West == West::Low) return 16146; - else return 16147; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16151; - else if (West == West::Low) return 16152; - else return 16153; - else - if (West == West::None) return 16157; - else if (West == West::Low) return 16158; - else return 16159; - else - if (Up) - if (West == West::None) return 16163; - else if (West == West::Low) return 16164; - else return 16165; - else - if (West == West::None) return 16169; - else if (West == West::Low) return 16170; - else return 16171; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16175; - else if (West == West::Low) return 16176; - else return 16177; - else - if (West == West::None) return 16181; - else if (West == West::Low) return 16182; - else return 16183; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16187; - else if (West == West::Low) return 16188; - else return 16189; - else - if (West == West::None) return 16193; - else if (West == West::Low) return 16194; - else return 16195; - else - if (Up) - if (West == West::None) return 16199; - else if (West == West::Low) return 16200; - else return 16201; - else - if (West == West::None) return 16205; - else if (West == West::Low) return 16206; - else return 16207; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16211; - else if (West == West::Low) return 16212; - else return 16213; - else - if (West == West::None) return 16217; - else if (West == West::Low) return 16218; - else return 16219; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16223; - else if (West == West::Low) return 16224; - else return 16225; - else - if (West == West::None) return 16229; - else if (West == West::Low) return 16230; - else return 16231; - else - if (Up) - if (West == West::None) return 16235; - else if (West == West::Low) return 16236; - else return 16237; - else - if (West == West::None) return 16241; - else if (West == West::Low) return 16242; - else return 16243; - } - BlockState BlackstoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace BlastFurnace - { - constexpr BlockState BlastFurnace(const eBlockFace Facing, const bool Lit) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) return 14811; - else return 14812; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) return 14813; - else return 14814; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) return 14815; - else return 14816; - else - if (Lit) return 14817; - else return 14818; - } - BlockState BlastFurnace(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - } - namespace BlueBanner - { - constexpr BlockState BlueBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8073; - else if (Rotation == 1) return 8074; - else if (Rotation == 2) return 8075; - else if (Rotation == 3) return 8076; - else if (Rotation == 4) return 8077; - else if (Rotation == 5) return 8078; - else if (Rotation == 6) return 8079; - else if (Rotation == 7) return 8080; - else if (Rotation == 8) return 8081; - else if (Rotation == 9) return 8082; - else if (Rotation == 10) return 8083; - else if (Rotation == 11) return 8084; - else if (Rotation == 12) return 8085; - else if (Rotation == 13) return 8086; - else if (Rotation == 14) return 8087; - else return 8088; - } - BlockState BlueBanner(); - unsigned char Rotation(BlockState Block); - } - namespace BlueBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState BlueBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1225; - else return 1226; - else - if (Part == Part::Head) return 1227; - else return 1228; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1229; - else return 1230; - else - if (Part == Part::Head) return 1231; - else return 1232; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1233; - else return 1234; - else - if (Part == Part::Head) return 1235; - else return 1236; - else - if (Occupied) - if (Part == Part::Head) return 1237; - else return 1238; - else - if (Part == Part::Head) return 1239; - else return 1240; - } - BlockState BlueBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace BlueCarpet - { - constexpr BlockState BlueCarpet() - { - return 7877; - } - } - namespace BlueConcrete - { - constexpr BlockState BlueConcrete() - { - return 9449; - } - } - namespace BlueConcretePowder - { - constexpr BlockState BlueConcretePowder() - { - return 9465; - } - } - namespace BlueGlazedTerracotta - { - constexpr BlockState BlueGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9418; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9419; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9420; - else return 9421; - } - BlockState BlueGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace BlueIce - { - constexpr BlockState BlueIce() - { - return 9648; - } - } - namespace BlueOrchid - { - constexpr BlockState BlueOrchid() - { - return 1414; - } - } - namespace BlueShulkerBox - { - constexpr BlockState BlueShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9344; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9345; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9346; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9347; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9348; - else return 9349; - } - BlockState BlueShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace BlueStainedGlass - { - constexpr BlockState BlueStainedGlass() - { - return 4106; - } - } - namespace BlueStainedGlassPane - { - constexpr BlockState BlueStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7217; - else return 7218; - else - if (West) return 7221; - else return 7222; - else - if (South) - if (West) return 7225; - else return 7226; - else - if (West) return 7229; - else return 7230; + return 6447; + else if (Powered) + return 6448; + else + return 6449; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6450; else - if (North) - if (South) - if (West) return 7233; - else return 7234; - else - if (West) return 7237; - else return 7238; - else - if (South) - if (West) return 7241; - else return 7242; - else - if (West) return 7245; - else return 7246; - } - BlockState BlueStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace BlueTerracotta - { - constexpr BlockState BlueTerracotta() - { - return 6858; - } - } - namespace BlueWallBanner - { - constexpr BlockState BlueWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8197; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8198; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8199; - else return 8200; - } - BlockState BlueWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace BlueWool - { - constexpr BlockState BlueWool() - { - return 1395; - } - } - namespace BoneBlock - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState BoneBlock(const enum Axis Axis) - { - if (Axis == Axis::X) return 9256; - else if (Axis == Axis::Y) return 9257; - else return 9258; - } - BlockState BoneBlock(); - enum Axis Axis(BlockState Block); - } - namespace Bookshelf - { - constexpr BlockState Bookshelf() - { - return 1432; - } - } - namespace BrainCoral - { - constexpr BlockState BrainCoral() - { - return 9533; - } - } - namespace BrainCoralBlock - { - constexpr BlockState BrainCoralBlock() - { - return 9516; - } - } - namespace BrainCoralFan - { - constexpr BlockState BrainCoralFan() - { - return 9553; - } - } - namespace BrainCoralWallFan - { - constexpr BlockState BrainCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9609; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9611; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9613; - else return 9615; - } - BlockState BrainCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace BrewingStand - { - constexpr BlockState BrewingStand(const bool HasBottle_0, const bool HasBottle_1, const bool HasBottle_2) - { - if (HasBottle_0) - if (HasBottle_1) - if (HasBottle_2) return 5133; - else return 5134; - else - if (HasBottle_2) return 5135; - else return 5136; - else - if (HasBottle_1) - if (HasBottle_2) return 5137; - else return 5138; - else - if (HasBottle_2) return 5139; - else return 5140; - } - BlockState BrewingStand(); - bool HasBottle_0(BlockState Block); - bool HasBottle_1(BlockState Block); - bool HasBottle_2(BlockState Block); - } - namespace BrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState BrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 8373; - else if (Type == Type::Bottom) return 8375; - else return 8377; - } - BlockState BrickSlab(); - enum Type Type(BlockState Block); - } - namespace BrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState BrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4853; - else if (Shape == Shape::InnerLeft) return 4855; - else if (Shape == Shape::InnerRight) return 4857; - else if (Shape == Shape::OuterLeft) return 4859; - else return 4861; - else - if (Shape == Shape::Straight) return 4863; - else if (Shape == Shape::InnerLeft) return 4865; - else if (Shape == Shape::InnerRight) return 4867; - else if (Shape == Shape::OuterLeft) return 4869; - else return 4871; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4873; - else if (Shape == Shape::InnerLeft) return 4875; - else if (Shape == Shape::InnerRight) return 4877; - else if (Shape == Shape::OuterLeft) return 4879; - else return 4881; - else - if (Shape == Shape::Straight) return 4883; - else if (Shape == Shape::InnerLeft) return 4885; - else if (Shape == Shape::InnerRight) return 4887; - else if (Shape == Shape::OuterLeft) return 4889; - else return 4891; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4893; - else if (Shape == Shape::InnerLeft) return 4895; - else if (Shape == Shape::InnerRight) return 4897; - else if (Shape == Shape::OuterLeft) return 4899; - else return 4901; - else - if (Shape == Shape::Straight) return 4903; - else if (Shape == Shape::InnerLeft) return 4905; - else if (Shape == Shape::InnerRight) return 4907; - else if (Shape == Shape::OuterLeft) return 4909; - else return 4911; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4913; - else if (Shape == Shape::InnerLeft) return 4915; - else if (Shape == Shape::InnerRight) return 4917; - else if (Shape == Shape::OuterLeft) return 4919; - else return 4921; - else - if (Shape == Shape::Straight) return 4923; - else if (Shape == Shape::InnerLeft) return 4925; - else if (Shape == Shape::InnerRight) return 4927; - else if (Shape == Shape::OuterLeft) return 4929; - else return 4931; - } - BlockState BrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState BrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 10870; - else if (West == West::Low) return 10871; - else return 10872; - else - if (West == West::None) return 10876; - else if (West == West::Low) return 10877; - else return 10878; - else if (South == South::Low) - if (Up) - if (West == West::None) return 10882; - else if (West == West::Low) return 10883; - else return 10884; - else - if (West == West::None) return 10888; - else if (West == West::Low) return 10889; - else return 10890; - else - if (Up) - if (West == West::None) return 10894; - else if (West == West::Low) return 10895; - else return 10896; - else - if (West == West::None) return 10900; - else if (West == West::Low) return 10901; - else return 10902; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 10906; - else if (West == West::Low) return 10907; - else return 10908; - else - if (West == West::None) return 10912; - else if (West == West::Low) return 10913; - else return 10914; - else if (South == South::Low) - if (Up) - if (West == West::None) return 10918; - else if (West == West::Low) return 10919; - else return 10920; - else - if (West == West::None) return 10924; - else if (West == West::Low) return 10925; - else return 10926; - else - if (Up) - if (West == West::None) return 10930; - else if (West == West::Low) return 10931; - else return 10932; - else - if (West == West::None) return 10936; - else if (West == West::Low) return 10937; - else return 10938; - else - if (South == South::None) - if (Up) - if (West == West::None) return 10942; - else if (West == West::Low) return 10943; - else return 10944; - else - if (West == West::None) return 10948; - else if (West == West::Low) return 10949; - else return 10950; - else if (South == South::Low) - if (Up) - if (West == West::None) return 10954; - else if (West == West::Low) return 10955; - else return 10956; - else - if (West == West::None) return 10960; - else if (West == West::Low) return 10961; - else return 10962; - else - if (Up) - if (West == West::None) return 10966; - else if (West == West::Low) return 10967; - else return 10968; - else - if (West == West::None) return 10972; - else if (West == West::Low) return 10973; - else return 10974; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 10978; - else if (West == West::Low) return 10979; - else return 10980; - else - if (West == West::None) return 10984; - else if (West == West::Low) return 10985; - else return 10986; - else if (South == South::Low) - if (Up) - if (West == West::None) return 10990; - else if (West == West::Low) return 10991; - else return 10992; - else - if (West == West::None) return 10996; - else if (West == West::Low) return 10997; - else return 10998; - else - if (Up) - if (West == West::None) return 11002; - else if (West == West::Low) return 11003; - else return 11004; - else - if (West == West::None) return 11008; - else if (West == West::Low) return 11009; - else return 11010; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11014; - else if (West == West::Low) return 11015; - else return 11016; - else - if (West == West::None) return 11020; - else if (West == West::Low) return 11021; - else return 11022; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11026; - else if (West == West::Low) return 11027; - else return 11028; - else - if (West == West::None) return 11032; - else if (West == West::Low) return 11033; - else return 11034; - else - if (Up) - if (West == West::None) return 11038; - else if (West == West::Low) return 11039; - else return 11040; - else - if (West == West::None) return 11044; - else if (West == West::Low) return 11045; - else return 11046; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11050; - else if (West == West::Low) return 11051; - else return 11052; - else - if (West == West::None) return 11056; - else if (West == West::Low) return 11057; - else return 11058; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11062; - else if (West == West::Low) return 11063; - else return 11064; - else - if (West == West::None) return 11068; - else if (West == West::Low) return 11069; - else return 11070; - else - if (Up) - if (West == West::None) return 11074; - else if (West == West::Low) return 11075; - else return 11076; - else - if (West == West::None) return 11080; - else if (West == West::Low) return 11081; - else return 11082; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11086; - else if (West == West::Low) return 11087; - else return 11088; - else - if (West == West::None) return 11092; - else if (West == West::Low) return 11093; - else return 11094; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11098; - else if (West == West::Low) return 11099; - else return 11100; - else - if (West == West::None) return 11104; - else if (West == West::Low) return 11105; - else return 11106; - else - if (Up) - if (West == West::None) return 11110; - else if (West == West::Low) return 11111; - else return 11112; - else - if (West == West::None) return 11116; - else if (West == West::Low) return 11117; - else return 11118; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11122; - else if (West == West::Low) return 11123; - else return 11124; - else - if (West == West::None) return 11128; - else if (West == West::Low) return 11129; - else return 11130; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11134; - else if (West == West::Low) return 11135; - else return 11136; - else - if (West == West::None) return 11140; - else if (West == West::Low) return 11141; - else return 11142; - else - if (Up) - if (West == West::None) return 11146; - else if (West == West::Low) return 11147; - else return 11148; - else - if (West == West::None) return 11152; - else if (West == West::Low) return 11153; - else return 11154; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11158; - else if (West == West::Low) return 11159; - else return 11160; - else - if (West == West::None) return 11164; - else if (West == West::Low) return 11165; - else return 11166; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11170; - else if (West == West::Low) return 11171; - else return 11172; - else - if (West == West::None) return 11176; - else if (West == West::Low) return 11177; - else return 11178; - else - if (Up) - if (West == West::None) return 11182; - else if (West == West::Low) return 11183; - else return 11184; - else - if (West == West::None) return 11188; - else if (West == West::Low) return 11189; - else return 11190; - } - BlockState BrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Bricks - { - constexpr BlockState Bricks() - { - return 1429; - } - } - namespace BrownBanner - { - constexpr BlockState BrownBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8089; - else if (Rotation == 1) return 8090; - else if (Rotation == 2) return 8091; - else if (Rotation == 3) return 8092; - else if (Rotation == 4) return 8093; - else if (Rotation == 5) return 8094; - else if (Rotation == 6) return 8095; - else if (Rotation == 7) return 8096; - else if (Rotation == 8) return 8097; - else if (Rotation == 9) return 8098; - else if (Rotation == 10) return 8099; - else if (Rotation == 11) return 8100; - else if (Rotation == 12) return 8101; - else if (Rotation == 13) return 8102; - else if (Rotation == 14) return 8103; - else return 8104; - } - BlockState BrownBanner(); - unsigned char Rotation(BlockState Block); - } - namespace BrownBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState BrownBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1241; - else return 1242; - else - if (Part == Part::Head) return 1243; - else return 1244; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1245; - else return 1246; - else - if (Part == Part::Head) return 1247; - else return 1248; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1249; - else return 1250; - else - if (Part == Part::Head) return 1251; - else return 1252; - else - if (Occupied) - if (Part == Part::Head) return 1253; - else return 1254; - else - if (Part == Part::Head) return 1255; - else return 1256; - } - BlockState BrownBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace BrownCarpet - { - constexpr BlockState BrownCarpet() - { - return 7878; - } - } - namespace BrownConcrete - { - constexpr BlockState BrownConcrete() - { - return 9450; - } - } - namespace BrownConcretePowder - { - constexpr BlockState BrownConcretePowder() - { - return 9466; - } - } - namespace BrownGlazedTerracotta - { - constexpr BlockState BrownGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9422; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9423; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9424; - else return 9425; - } - BlockState BrownGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace BrownMushroom - { - constexpr BlockState BrownMushroom() - { - return 1425; - } - } - namespace BrownMushroomBlock - { - constexpr BlockState BrownMushroomBlock(const bool Down, const bool East, const bool North, const bool South, const bool Up, const bool West) - { - if (Down) - if (East) - if (North) - if (South) - if (Up) - if (West) return 4505; - else return 4506; - else - if (West) return 4507; - else return 4508; - else - if (Up) - if (West) return 4509; - else return 4510; - else - if (West) return 4511; - else return 4512; - else - if (South) - if (Up) - if (West) return 4513; - else return 4514; - else - if (West) return 4515; - else return 4516; - else - if (Up) - if (West) return 4517; - else return 4518; - else - if (West) return 4519; - else return 4520; - else - if (North) - if (South) - if (Up) - if (West) return 4521; - else return 4522; - else - if (West) return 4523; - else return 4524; - else - if (Up) - if (West) return 4525; - else return 4526; - else - if (West) return 4527; - else return 4528; - else - if (South) - if (Up) - if (West) return 4529; - else return 4530; - else - if (West) return 4531; - else return 4532; - else - if (Up) - if (West) return 4533; - else return 4534; - else - if (West) return 4535; - else return 4536; + return 6451; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6452; else - if (East) - if (North) - if (South) - if (Up) - if (West) return 4537; - else return 4538; - else - if (West) return 4539; - else return 4540; - else - if (Up) - if (West) return 4541; - else return 4542; - else - if (West) return 4543; - else return 4544; - else - if (South) - if (Up) - if (West) return 4545; - else return 4546; - else - if (West) return 4547; - else return 4548; - else - if (Up) - if (West) return 4549; - else return 4550; - else - if (West) return 4551; - else return 4552; - else - if (North) - if (South) - if (Up) - if (West) return 4553; - else return 4554; - else - if (West) return 4555; - else return 4556; - else - if (Up) - if (West) return 4557; - else return 4558; - else - if (West) return 4559; - else return 4560; - else - if (South) - if (Up) - if (West) return 4561; - else return 4562; - else - if (West) return 4563; - else return 4564; - else - if (Up) - if (West) return 4565; - else return 4566; - else - if (West) return 4567; - else return 4568; - } - BlockState BrownMushroomBlock(); - bool Down(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace BrownShulkerBox - { - constexpr BlockState BrownShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9350; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9351; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9352; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9353; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9354; - else return 9355; - } - BlockState BrownShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace BrownStainedGlass - { - constexpr BlockState BrownStainedGlass() - { - return 4107; - } - } - namespace BrownStainedGlassPane - { - constexpr BlockState BrownStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7249; - else return 7250; - else - if (West) return 7253; - else return 7254; - else - if (South) - if (West) return 7257; - else return 7258; - else - if (West) return 7261; - else return 7262; + return 6453; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6454; else - if (North) - if (South) - if (West) return 7265; - else return 7266; - else - if (West) return 7269; - else return 7270; - else - if (South) - if (West) return 7273; - else return 7274; - else - if (West) return 7277; - else return 7278; - } - BlockState BrownStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace BrownTerracotta - { - constexpr BlockState BrownTerracotta() - { - return 6859; - } - } - namespace BrownWallBanner - { - constexpr BlockState BrownWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8201; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8202; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8203; - else return 8204; - } - BlockState BrownWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace BrownWool - { - constexpr BlockState BrownWool() - { - return 1396; - } - } - namespace BubbleColumn - { - constexpr BlockState BubbleColumn(const bool Drag) - { - if (Drag) return 9667; - else return 9668; - } - BlockState BubbleColumn(); - bool Drag(BlockState Block); - } - namespace BubbleCoral - { - constexpr BlockState BubbleCoral() - { - return 9535; - } - } - namespace BubbleCoralBlock - { - constexpr BlockState BubbleCoralBlock() - { - return 9517; - } - } - namespace BubbleCoralFan - { - constexpr BlockState BubbleCoralFan() - { - return 9555; - } - } - namespace BubbleCoralWallFan - { - constexpr BlockState BubbleCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9617; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9619; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9621; - else return 9623; - } - BlockState BubbleCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace Cactus - { - constexpr BlockState Cactus(const unsigned char Age) - { - if (Age == 0) return 3931; - else if (Age == 1) return 3932; - else if (Age == 2) return 3933; - else if (Age == 3) return 3934; - else if (Age == 4) return 3935; - else if (Age == 5) return 3936; - else if (Age == 6) return 3937; - else if (Age == 7) return 3938; - else if (Age == 8) return 3939; - else if (Age == 9) return 3940; - else if (Age == 10) return 3941; - else if (Age == 11) return 3942; - else if (Age == 12) return 3943; - else if (Age == 13) return 3944; - else if (Age == 14) return 3945; - else return 3946; - } - BlockState Cactus(); - unsigned char Age(BlockState Block); - } - namespace Cake - { - constexpr BlockState Cake(const unsigned char Bites) - { - if (Bites == 0) return 4024; - else if (Bites == 1) return 4025; - else if (Bites == 2) return 4026; - else if (Bites == 3) return 4027; - else if (Bites == 4) return 4028; - else if (Bites == 5) return 4029; - else return 4030; - } - BlockState Cake(); - unsigned char Bites(BlockState Block); - } - namespace Campfire - { - constexpr BlockState Campfire(const eBlockFace Facing, const bool Lit, const bool SignalFire) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) - if (SignalFire) return 14891; - else return 14893; - else - if (SignalFire) return 14895; - else return 14897; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) - if (SignalFire) return 14899; - else return 14901; - else - if (SignalFire) return 14903; - else return 14905; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) - if (SignalFire) return 14907; - else return 14909; - else - if (SignalFire) return 14911; - else return 14913; - else - if (Lit) - if (SignalFire) return 14915; - else return 14917; - else - if (SignalFire) return 14919; - else return 14921; - } - BlockState Campfire(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - bool SignalFire(BlockState Block); - } - namespace Carrots - { - constexpr BlockState Carrots(const unsigned char Age) - { - if (Age == 0) return 6330; - else if (Age == 1) return 6331; - else if (Age == 2) return 6332; - else if (Age == 3) return 6333; - else if (Age == 4) return 6334; - else if (Age == 5) return 6335; - else if (Age == 6) return 6336; - else return 6337; - } - BlockState Carrots(); - unsigned char Age(BlockState Block); - } - namespace CartographyTable - { - constexpr BlockState CartographyTable() - { - return 14819; - } - } - namespace CarvedPumpkin - { - constexpr BlockState CarvedPumpkin(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4016; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4017; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 4018; - else return 4019; - } - BlockState CarvedPumpkin(); - eBlockFace Facing(BlockState Block); - } - namespace Cauldron - { - constexpr BlockState Cauldron(const unsigned char Level) - { - if (Level == 0) return 5141; - else if (Level == 1) return 5142; - else if (Level == 2) return 5143; - else return 5144; - } - BlockState Cauldron(); - unsigned char Level(BlockState Block); - } - namespace CaveAir - { - constexpr BlockState CaveAir() - { - return 9666; - } - } - namespace Chain - { - constexpr BlockState Chain() - { - return 4730; - } - } - namespace ChainCommandBlock - { - constexpr BlockState ChainCommandBlock(const bool Conditional, const eBlockFace Facing) - { - if (Conditional) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9237; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9238; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9239; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9240; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9241; - else return 9242; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9243; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9244; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9245; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9246; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9247; - else return 9248; - } - BlockState ChainCommandBlock(); - bool Conditional(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace Chest - { - enum class Type - { - Single, - Left, - Right - }; - constexpr BlockState Chest(const eBlockFace Facing, const enum Type Type) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Type == Type::Single) return 2035; - else if (Type == Type::Left) return 2037; - else return 2039; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Type == Type::Single) return 2041; - else if (Type == Type::Left) return 2043; - else return 2045; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Type == Type::Single) return 2047; - else if (Type == Type::Left) return 2049; - else return 2051; - else - if (Type == Type::Single) return 2053; - else if (Type == Type::Left) return 2055; - else return 2057; - } - BlockState Chest(); - eBlockFace Facing(BlockState Block); - enum Type Type(BlockState Block); - } - namespace ChippedAnvil - { - constexpr BlockState ChippedAnvil(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6614; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6615; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6616; - else return 6617; - } - BlockState ChippedAnvil(); - eBlockFace Facing(BlockState Block); - } - namespace ChiseledNetherBricks - { - constexpr BlockState ChiseledNetherBricks() - { - return 17101; - } - } - namespace ChiseledPolishedBlackstone - { - constexpr BlockState ChiseledPolishedBlackstone() - { - return 16253; - } - } - namespace ChiseledQuartzBlock - { - constexpr BlockState ChiseledQuartzBlock() - { - return 6739; - } - } - namespace ChiseledRedSandstone - { - constexpr BlockState ChiseledRedSandstone() - { - return 8218; - } - } - namespace ChiseledSandstone - { - constexpr BlockState ChiseledSandstone() - { - return 247; - } - } - namespace ChiseledStoneBricks - { - constexpr BlockState ChiseledStoneBricks() - { - return 4498; - } - } - namespace ChorusFlower - { - constexpr BlockState ChorusFlower(const unsigned char Age) - { - if (Age == 0) return 9128; - else if (Age == 1) return 9129; - else if (Age == 2) return 9130; - else if (Age == 3) return 9131; - else if (Age == 4) return 9132; - else return 9133; - } - BlockState ChorusFlower(); - unsigned char Age(BlockState Block); - } - namespace ChorusPlant - { - constexpr BlockState ChorusPlant(const bool Down, const bool East, const bool North, const bool South, const bool Up, const bool West) - { - if (Down) - if (East) - if (North) - if (South) - if (Up) - if (West) return 9064; - else return 9065; - else - if (West) return 9066; - else return 9067; - else - if (Up) - if (West) return 9068; - else return 9069; - else - if (West) return 9070; - else return 9071; - else - if (South) - if (Up) - if (West) return 9072; - else return 9073; - else - if (West) return 9074; - else return 9075; - else - if (Up) - if (West) return 9076; - else return 9077; - else - if (West) return 9078; - else return 9079; - else - if (North) - if (South) - if (Up) - if (West) return 9080; - else return 9081; - else - if (West) return 9082; - else return 9083; - else - if (Up) - if (West) return 9084; - else return 9085; - else - if (West) return 9086; - else return 9087; - else - if (South) - if (Up) - if (West) return 9088; - else return 9089; - else - if (West) return 9090; - else return 9091; - else - if (Up) - if (West) return 9092; - else return 9093; - else - if (West) return 9094; - else return 9095; + return 6455; + else if (Powered) + return 6456; + else + return 6457; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6458; + else + return 6459; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6460; + else + return 6461; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6462; + else + return 6463; + else if (Powered) + return 6464; + else + return 6465; +} +BlockState AcaciaButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace AcaciaButton +namespace AcaciaDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState AcaciaDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8930; + else + return 8931; + else if (Powered) + return 8932; + else + return 8933; + else if (Open) + if (Powered) + return 8934; + else + return 8935; + else if (Powered) + return 8936; else - if (East) - if (North) - if (South) - if (Up) - if (West) return 9096; - else return 9097; - else - if (West) return 9098; - else return 9099; - else - if (Up) - if (West) return 9100; - else return 9101; - else - if (West) return 9102; - else return 9103; - else - if (South) - if (Up) - if (West) return 9104; - else return 9105; - else - if (West) return 9106; - else return 9107; - else - if (Up) - if (West) return 9108; - else return 9109; - else - if (West) return 9110; - else return 9111; - else - if (North) - if (South) - if (Up) - if (West) return 9112; - else return 9113; - else - if (West) return 9114; - else return 9115; - else - if (Up) - if (West) return 9116; - else return 9117; - else - if (West) return 9118; - else return 9119; - else - if (South) - if (Up) - if (West) return 9120; - else return 9121; - else - if (West) return 9122; - else return 9123; - else - if (Up) - if (West) return 9124; - else return 9125; - else - if (West) return 9126; - else return 9127; - } - BlockState ChorusPlant(); - bool Down(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace Clay - { - constexpr BlockState Clay() - { - return 3947; - } - } - namespace CoalBlock - { - constexpr BlockState CoalBlock() - { - return 7883; - } - } - namespace CoalOre - { - constexpr BlockState CoalOre() - { - return 71; - } - } - namespace CoarseDirt - { - constexpr BlockState CoarseDirt() - { - return 11; - } - } - namespace Cobblestone - { - constexpr BlockState Cobblestone() - { - return 14; - } - } - namespace CobblestoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState CobblestoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8367; - else if (Type == Type::Bottom) return 8369; - else return 8371; - } - BlockState CobblestoneSlab(); - enum Type Type(BlockState Block); - } - namespace CobblestoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState CobblestoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 3656; - else if (Shape == Shape::InnerLeft) return 3658; - else if (Shape == Shape::InnerRight) return 3660; - else if (Shape == Shape::OuterLeft) return 3662; - else return 3664; - else - if (Shape == Shape::Straight) return 3666; - else if (Shape == Shape::InnerLeft) return 3668; - else if (Shape == Shape::InnerRight) return 3670; - else if (Shape == Shape::OuterLeft) return 3672; - else return 3674; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 3676; - else if (Shape == Shape::InnerLeft) return 3678; - else if (Shape == Shape::InnerRight) return 3680; - else if (Shape == Shape::OuterLeft) return 3682; - else return 3684; - else - if (Shape == Shape::Straight) return 3686; - else if (Shape == Shape::InnerLeft) return 3688; - else if (Shape == Shape::InnerRight) return 3690; - else if (Shape == Shape::OuterLeft) return 3692; - else return 3694; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 3696; - else if (Shape == Shape::InnerLeft) return 3698; - else if (Shape == Shape::InnerRight) return 3700; - else if (Shape == Shape::OuterLeft) return 3702; - else return 3704; - else - if (Shape == Shape::Straight) return 3706; - else if (Shape == Shape::InnerLeft) return 3708; - else if (Shape == Shape::InnerRight) return 3710; - else if (Shape == Shape::OuterLeft) return 3712; - else return 3714; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 3716; - else if (Shape == Shape::InnerLeft) return 3718; - else if (Shape == Shape::InnerRight) return 3720; - else if (Shape == Shape::OuterLeft) return 3722; - else return 3724; - else - if (Shape == Shape::Straight) return 3726; - else if (Shape == Shape::InnerLeft) return 3728; - else if (Shape == Shape::InnerRight) return 3730; - else if (Shape == Shape::OuterLeft) return 3732; - else return 3734; - } - BlockState CobblestoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState CobblestoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 5660; - else if (West == West::Low) return 5661; - else return 5662; - else - if (West == West::None) return 5666; - else if (West == West::Low) return 5667; - else return 5668; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5672; - else if (West == West::Low) return 5673; - else return 5674; - else - if (West == West::None) return 5678; - else if (West == West::Low) return 5679; - else return 5680; - else - if (Up) - if (West == West::None) return 5684; - else if (West == West::Low) return 5685; - else return 5686; - else - if (West == West::None) return 5690; - else if (West == West::Low) return 5691; - else return 5692; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 5696; - else if (West == West::Low) return 5697; - else return 5698; - else - if (West == West::None) return 5702; - else if (West == West::Low) return 5703; - else return 5704; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5708; - else if (West == West::Low) return 5709; - else return 5710; - else - if (West == West::None) return 5714; - else if (West == West::Low) return 5715; - else return 5716; - else - if (Up) - if (West == West::None) return 5720; - else if (West == West::Low) return 5721; - else return 5722; - else - if (West == West::None) return 5726; - else if (West == West::Low) return 5727; - else return 5728; - else - if (South == South::None) - if (Up) - if (West == West::None) return 5732; - else if (West == West::Low) return 5733; - else return 5734; - else - if (West == West::None) return 5738; - else if (West == West::Low) return 5739; - else return 5740; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5744; - else if (West == West::Low) return 5745; - else return 5746; - else - if (West == West::None) return 5750; - else if (West == West::Low) return 5751; - else return 5752; - else - if (Up) - if (West == West::None) return 5756; - else if (West == West::Low) return 5757; - else return 5758; - else - if (West == West::None) return 5762; - else if (West == West::Low) return 5763; - else return 5764; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 5768; - else if (West == West::Low) return 5769; - else return 5770; - else - if (West == West::None) return 5774; - else if (West == West::Low) return 5775; - else return 5776; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5780; - else if (West == West::Low) return 5781; - else return 5782; - else - if (West == West::None) return 5786; - else if (West == West::Low) return 5787; - else return 5788; - else - if (Up) - if (West == West::None) return 5792; - else if (West == West::Low) return 5793; - else return 5794; - else - if (West == West::None) return 5798; - else if (West == West::Low) return 5799; - else return 5800; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 5804; - else if (West == West::Low) return 5805; - else return 5806; - else - if (West == West::None) return 5810; - else if (West == West::Low) return 5811; - else return 5812; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5816; - else if (West == West::Low) return 5817; - else return 5818; - else - if (West == West::None) return 5822; - else if (West == West::Low) return 5823; - else return 5824; - else - if (Up) - if (West == West::None) return 5828; - else if (West == West::Low) return 5829; - else return 5830; - else - if (West == West::None) return 5834; - else if (West == West::Low) return 5835; - else return 5836; - else - if (South == South::None) - if (Up) - if (West == West::None) return 5840; - else if (West == West::Low) return 5841; - else return 5842; - else - if (West == West::None) return 5846; - else if (West == West::Low) return 5847; - else return 5848; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5852; - else if (West == West::Low) return 5853; - else return 5854; - else - if (West == West::None) return 5858; - else if (West == West::Low) return 5859; - else return 5860; - else - if (Up) - if (West == West::None) return 5864; - else if (West == West::Low) return 5865; - else return 5866; - else - if (West == West::None) return 5870; - else if (West == West::Low) return 5871; - else return 5872; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 5876; - else if (West == West::Low) return 5877; - else return 5878; - else - if (West == West::None) return 5882; - else if (West == West::Low) return 5883; - else return 5884; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5888; - else if (West == West::Low) return 5889; - else return 5890; - else - if (West == West::None) return 5894; - else if (West == West::Low) return 5895; - else return 5896; - else - if (Up) - if (West == West::None) return 5900; - else if (West == West::Low) return 5901; - else return 5902; - else - if (West == West::None) return 5906; - else if (West == West::Low) return 5907; - else return 5908; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 5912; - else if (West == West::Low) return 5913; - else return 5914; - else - if (West == West::None) return 5918; - else if (West == West::Low) return 5919; - else return 5920; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5924; - else if (West == West::Low) return 5925; - else return 5926; - else - if (West == West::None) return 5930; - else if (West == West::Low) return 5931; - else return 5932; - else - if (Up) - if (West == West::None) return 5936; - else if (West == West::Low) return 5937; - else return 5938; - else - if (West == West::None) return 5942; - else if (West == West::Low) return 5943; - else return 5944; - else - if (South == South::None) - if (Up) - if (West == West::None) return 5948; - else if (West == West::Low) return 5949; - else return 5950; - else - if (West == West::None) return 5954; - else if (West == West::Low) return 5955; - else return 5956; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5960; - else if (West == West::Low) return 5961; - else return 5962; - else - if (West == West::None) return 5966; - else if (West == West::Low) return 5967; - else return 5968; - else - if (Up) - if (West == West::None) return 5972; - else if (West == West::Low) return 5973; - else return 5974; - else - if (West == West::None) return 5978; - else if (West == West::Low) return 5979; - else return 5980; - } - BlockState CobblestoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Cobweb - { - constexpr BlockState Cobweb() - { - return 1341; - } - } - namespace Cocoa - { - constexpr BlockState Cocoa(const unsigned char Age, const eBlockFace Facing) - { - if (Age == 0) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5158; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5159; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5160; - else return 5161; - else if (Age == 1) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5162; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5163; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5164; - else return 5165; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5166; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5167; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5168; - else return 5169; - } - BlockState Cocoa(); - unsigned char Age(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace CommandBlock - { - constexpr BlockState CommandBlock(const bool Conditional, const eBlockFace Facing) - { - if (Conditional) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5644; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 5645; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5646; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5647; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 5648; - else return 5649; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5650; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 5651; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5652; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5653; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 5654; - else return 5655; - } - BlockState CommandBlock(); - bool Conditional(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace Comparator - { - enum class Mode - { - Compare, - Subtract - }; - constexpr BlockState Comparator(const eBlockFace Facing, const enum Mode Mode, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Mode == Mode::Compare) - if (Powered) return 6678; - else return 6679; - else - if (Powered) return 6680; - else return 6681; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Mode == Mode::Compare) - if (Powered) return 6682; - else return 6683; - else - if (Powered) return 6684; - else return 6685; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Mode == Mode::Compare) - if (Powered) return 6686; - else return 6687; - else - if (Powered) return 6688; - else return 6689; - else - if (Mode == Mode::Compare) - if (Powered) return 6690; - else return 6691; - else - if (Powered) return 6692; - else return 6693; - } - BlockState Comparator(); - eBlockFace Facing(BlockState Block); - enum Mode Mode(BlockState Block); - bool Powered(BlockState Block); - } - namespace Composter - { - constexpr BlockState Composter(const unsigned char Level) - { - if (Level == 0) return 15751; - else if (Level == 1) return 15752; - else if (Level == 2) return 15753; - else if (Level == 3) return 15754; - else if (Level == 4) return 15755; - else if (Level == 5) return 15756; - else if (Level == 6) return 15757; - else if (Level == 7) return 15758; - else return 15759; - } - BlockState Composter(); - unsigned char Level(BlockState Block); - } - namespace Conduit - { - constexpr BlockState Conduit() - { - return 9650; - } - } - namespace Cornflower - { - constexpr BlockState Cornflower() - { - return 1422; - } - } - namespace CrackedNetherBricks - { - constexpr BlockState CrackedNetherBricks() - { - return 17102; - } - } - namespace CrackedPolishedBlackstoneBricks - { - constexpr BlockState CrackedPolishedBlackstoneBricks() - { - return 16252; - } - } - namespace CrackedStoneBricks - { - constexpr BlockState CrackedStoneBricks() - { - return 4497; - } - } - namespace CraftingTable - { - constexpr BlockState CraftingTable() - { - return 3356; - } - } - namespace CreeperHead - { - constexpr BlockState CreeperHead(const unsigned char Rotation) - { - if (Rotation == 0) return 6570; - else if (Rotation == 1) return 6571; - else if (Rotation == 2) return 6572; - else if (Rotation == 3) return 6573; - else if (Rotation == 4) return 6574; - else if (Rotation == 5) return 6575; - else if (Rotation == 6) return 6576; - else if (Rotation == 7) return 6577; - else if (Rotation == 8) return 6578; - else if (Rotation == 9) return 6579; - else if (Rotation == 10) return 6580; - else if (Rotation == 11) return 6581; - else if (Rotation == 12) return 6582; - else if (Rotation == 13) return 6583; - else if (Rotation == 14) return 6584; - else return 6585; - } - BlockState CreeperHead(); - unsigned char Rotation(BlockState Block); - } - namespace CreeperWallHead - { - constexpr BlockState CreeperWallHead(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6586; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6587; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6588; - else return 6589; - } - BlockState CreeperWallHead(); - eBlockFace Facing(BlockState Block); - } - namespace CrimsonButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState CrimsonButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15479; - else return 15480; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15481; - else return 15482; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15483; - else return 15484; - else - if (Powered) return 15485; - else return 15486; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15487; - else return 15488; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15489; - else return 15490; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15491; - else return 15492; - else - if (Powered) return 15493; - else return 15494; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15495; - else return 15496; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15497; - else return 15498; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15499; - else return 15500; - else - if (Powered) return 15501; - else return 15502; - } - BlockState CrimsonButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace CrimsonDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState CrimsonDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15527; - else return 15528; - else - if (Powered) return 15529; - else return 15530; - else - if (Open) - if (Powered) return 15531; - else return 15532; - else - if (Powered) return 15533; - else return 15534; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15535; - else return 15536; - else - if (Powered) return 15537; - else return 15538; - else - if (Open) - if (Powered) return 15539; - else return 15540; - else - if (Powered) return 15541; - else return 15542; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15543; - else return 15544; - else - if (Powered) return 15545; - else return 15546; - else - if (Open) - if (Powered) return 15547; - else return 15548; - else - if (Powered) return 15549; - else return 15550; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15551; - else return 15552; - else - if (Powered) return 15553; - else return 15554; - else - if (Open) - if (Powered) return 15555; - else return 15556; - else - if (Powered) return 15557; - else return 15558; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15559; - else return 15560; - else - if (Powered) return 15561; - else return 15562; - else - if (Open) - if (Powered) return 15563; - else return 15564; - else - if (Powered) return 15565; - else return 15566; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15567; - else return 15568; - else - if (Powered) return 15569; - else return 15570; - else - if (Open) - if (Powered) return 15571; - else return 15572; - else - if (Powered) return 15573; - else return 15574; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15575; - else return 15576; - else - if (Powered) return 15577; - else return 15578; - else - if (Open) - if (Powered) return 15579; - else return 15580; - else - if (Powered) return 15581; - else return 15582; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15583; - else return 15584; - else - if (Powered) return 15585; - else return 15586; - else - if (Open) - if (Powered) return 15587; - else return 15588; - else - if (Powered) return 15589; - else return 15590; - } - BlockState CrimsonDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace CrimsonFence - { - constexpr BlockState CrimsonFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 15065; - else return 15066; - else - if (West) return 15069; - else return 15070; - else - if (South) - if (West) return 15073; - else return 15074; - else - if (West) return 15077; - else return 15078; + return 8937; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8938; + else + return 8939; + else if (Powered) + return 8940; else - if (North) - if (South) - if (West) return 15081; - else return 15082; - else - if (West) return 15085; - else return 15086; - else - if (South) - if (West) return 15089; - else return 15090; - else - if (West) return 15093; - else return 15094; - } - BlockState CrimsonFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace CrimsonFenceGate - { - constexpr BlockState CrimsonFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 15255; - else return 15256; - else - if (Powered) return 15257; - else return 15258; - else - if (Open) - if (Powered) return 15259; - else return 15260; - else - if (Powered) return 15261; - else return 15262; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 15263; - else return 15264; - else - if (Powered) return 15265; - else return 15266; - else - if (Open) - if (Powered) return 15267; - else return 15268; - else - if (Powered) return 15269; - else return 15270; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 15271; - else return 15272; - else - if (Powered) return 15273; - else return 15274; - else - if (Open) - if (Powered) return 15275; - else return 15276; - else - if (Powered) return 15277; - else return 15278; - else - if (InWall) - if (Open) - if (Powered) return 15279; - else return 15280; - else - if (Powered) return 15281; - else return 15282; - else - if (Open) - if (Powered) return 15283; - else return 15284; - else - if (Powered) return 15285; - else return 15286; - } - BlockState CrimsonFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace CrimsonFungus - { - constexpr BlockState CrimsonFungus() - { - return 14988; - } - } - namespace CrimsonHyphae - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState CrimsonHyphae(const enum Axis Axis) - { - if (Axis == Axis::X) return 14981; - else if (Axis == Axis::Y) return 14982; - else return 14983; - } - BlockState CrimsonHyphae(); - enum Axis Axis(BlockState Block); - } - namespace CrimsonNylium - { - constexpr BlockState CrimsonNylium() - { - return 14987; - } - } - namespace CrimsonPlanks - { - constexpr BlockState CrimsonPlanks() - { - return 15045; - } - } - namespace CrimsonPressurePlate - { - constexpr BlockState CrimsonPressurePlate(const bool Powered) - { - if (Powered) return 15059; - else return 15060; - } - BlockState CrimsonPressurePlate(); - bool Powered(BlockState Block); - } - namespace CrimsonRoots - { - constexpr BlockState CrimsonRoots() - { - return 15044; - } - } - namespace CrimsonSign - { - constexpr BlockState CrimsonSign(const unsigned char Rotation) - { - if (Rotation == 0) return 15656; - else if (Rotation == 1) return 15658; - else if (Rotation == 2) return 15660; - else if (Rotation == 3) return 15662; - else if (Rotation == 4) return 15664; - else if (Rotation == 5) return 15666; - else if (Rotation == 6) return 15668; - else if (Rotation == 7) return 15670; - else if (Rotation == 8) return 15672; - else if (Rotation == 9) return 15674; - else if (Rotation == 10) return 15676; - else if (Rotation == 11) return 15678; - else if (Rotation == 12) return 15680; - else if (Rotation == 13) return 15682; - else if (Rotation == 14) return 15684; - else return 15686; - } - BlockState CrimsonSign(); - unsigned char Rotation(BlockState Block); - } - namespace CrimsonSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState CrimsonSlab(const enum Type Type) - { - if (Type == Type::Top) return 15048; - else if (Type == Type::Bottom) return 15050; - else return 15052; - } - BlockState CrimsonSlab(); - enum Type Type(BlockState Block); - } - namespace CrimsonStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState CrimsonStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15320; - else if (Shape == Shape::InnerLeft) return 15322; - else if (Shape == Shape::InnerRight) return 15324; - else if (Shape == Shape::OuterLeft) return 15326; - else return 15328; - else - if (Shape == Shape::Straight) return 15330; - else if (Shape == Shape::InnerLeft) return 15332; - else if (Shape == Shape::InnerRight) return 15334; - else if (Shape == Shape::OuterLeft) return 15336; - else return 15338; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15340; - else if (Shape == Shape::InnerLeft) return 15342; - else if (Shape == Shape::InnerRight) return 15344; - else if (Shape == Shape::OuterLeft) return 15346; - else return 15348; - else - if (Shape == Shape::Straight) return 15350; - else if (Shape == Shape::InnerLeft) return 15352; - else if (Shape == Shape::InnerRight) return 15354; - else if (Shape == Shape::OuterLeft) return 15356; - else return 15358; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15360; - else if (Shape == Shape::InnerLeft) return 15362; - else if (Shape == Shape::InnerRight) return 15364; - else if (Shape == Shape::OuterLeft) return 15366; - else return 15368; - else - if (Shape == Shape::Straight) return 15370; - else if (Shape == Shape::InnerLeft) return 15372; - else if (Shape == Shape::InnerRight) return 15374; - else if (Shape == Shape::OuterLeft) return 15376; - else return 15378; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15380; - else if (Shape == Shape::InnerLeft) return 15382; - else if (Shape == Shape::InnerRight) return 15384; - else if (Shape == Shape::OuterLeft) return 15386; - else return 15388; - else - if (Shape == Shape::Straight) return 15390; - else if (Shape == Shape::InnerLeft) return 15392; - else if (Shape == Shape::InnerRight) return 15394; - else if (Shape == Shape::OuterLeft) return 15396; - else return 15398; - } - BlockState CrimsonStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace CrimsonStem - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState CrimsonStem(const enum Axis Axis) - { - if (Axis == Axis::X) return 14975; - else if (Axis == Axis::Y) return 14976; - else return 14977; - } - BlockState CrimsonStem(); - enum Axis Axis(BlockState Block); - } - namespace CrimsonTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState CrimsonTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 15128; - else return 15130; - else - if (Powered) return 15132; - else return 15134; - else - if (Open) - if (Powered) return 15136; - else return 15138; - else - if (Powered) return 15140; - else return 15142; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 15144; - else return 15146; - else - if (Powered) return 15148; - else return 15150; - else - if (Open) - if (Powered) return 15152; - else return 15154; - else - if (Powered) return 15156; - else return 15158; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 15160; - else return 15162; - else - if (Powered) return 15164; - else return 15166; - else - if (Open) - if (Powered) return 15168; - else return 15170; - else - if (Powered) return 15172; - else return 15174; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 15176; - else return 15178; - else - if (Powered) return 15180; - else return 15182; - else - if (Open) - if (Powered) return 15184; - else return 15186; - else - if (Powered) return 15188; - else return 15190; - } - BlockState CrimsonTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace CrimsonWallSign - { - constexpr BlockState CrimsonWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 15720; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 15722; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 15724; - else return 15726; - } - BlockState CrimsonWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace CryingObsidian - { - constexpr BlockState CryingObsidian() - { - return 15828; - } - } - namespace CutRedSandstone - { - constexpr BlockState CutRedSandstone() - { - return 8219; - } - } - namespace CutRedSandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState CutRedSandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8403; - else if (Type == Type::Bottom) return 8405; - else return 8407; - } - BlockState CutRedSandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace CutSandstone - { - constexpr BlockState CutSandstone() - { - return 248; - } - } - namespace CutSandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState CutSandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8355; - else if (Type == Type::Bottom) return 8357; - else return 8359; - } - BlockState CutSandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace CyanBanner - { - constexpr BlockState CyanBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8041; - else if (Rotation == 1) return 8042; - else if (Rotation == 2) return 8043; - else if (Rotation == 3) return 8044; - else if (Rotation == 4) return 8045; - else if (Rotation == 5) return 8046; - else if (Rotation == 6) return 8047; - else if (Rotation == 7) return 8048; - else if (Rotation == 8) return 8049; - else if (Rotation == 9) return 8050; - else if (Rotation == 10) return 8051; - else if (Rotation == 11) return 8052; - else if (Rotation == 12) return 8053; - else if (Rotation == 13) return 8054; - else if (Rotation == 14) return 8055; - else return 8056; - } - BlockState CyanBanner(); - unsigned char Rotation(BlockState Block); - } - namespace CyanBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState CyanBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1193; - else return 1194; - else - if (Part == Part::Head) return 1195; - else return 1196; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1197; - else return 1198; - else - if (Part == Part::Head) return 1199; - else return 1200; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1201; - else return 1202; - else - if (Part == Part::Head) return 1203; - else return 1204; - else - if (Occupied) - if (Part == Part::Head) return 1205; - else return 1206; - else - if (Part == Part::Head) return 1207; - else return 1208; - } - BlockState CyanBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace CyanCarpet - { - constexpr BlockState CyanCarpet() - { - return 7875; - } - } - namespace CyanConcrete - { - constexpr BlockState CyanConcrete() - { - return 9447; - } - } - namespace CyanConcretePowder - { - constexpr BlockState CyanConcretePowder() - { - return 9463; - } - } - namespace CyanGlazedTerracotta - { - constexpr BlockState CyanGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9410; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9411; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9412; - else return 9413; - } - BlockState CyanGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace CyanShulkerBox - { - constexpr BlockState CyanShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9332; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9333; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9334; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9335; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9336; - else return 9337; - } - BlockState CyanShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace CyanStainedGlass - { - constexpr BlockState CyanStainedGlass() - { - return 4104; - } - } - namespace CyanStainedGlassPane - { - constexpr BlockState CyanStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7153; - else return 7154; - else - if (West) return 7157; - else return 7158; - else - if (South) - if (West) return 7161; - else return 7162; - else - if (West) return 7165; - else return 7166; + return 8941; + else if (Open) + if (Powered) + return 8942; else - if (North) - if (South) - if (West) return 7169; - else return 7170; - else - if (West) return 7173; - else return 7174; - else - if (South) - if (West) return 7177; - else return 7178; - else - if (West) return 7181; - else return 7182; - } - BlockState CyanStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace CyanTerracotta - { - constexpr BlockState CyanTerracotta() - { - return 6856; - } - } - namespace CyanWallBanner - { - constexpr BlockState CyanWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8189; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8190; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8191; - else return 8192; - } - BlockState CyanWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace CyanWool - { - constexpr BlockState CyanWool() - { - return 1393; - } - } - namespace DamagedAnvil - { - constexpr BlockState DamagedAnvil(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6618; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6619; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6620; - else return 6621; - } - BlockState DamagedAnvil(); - eBlockFace Facing(BlockState Block); - } - namespace Dandelion - { - constexpr BlockState Dandelion() - { - return 1412; - } - } - namespace DarkOakButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState DarkOakButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6466; - else return 6467; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6468; - else return 6469; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6470; - else return 6471; - else - if (Powered) return 6472; - else return 6473; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6474; - else return 6475; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6476; - else return 6477; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6478; - else return 6479; - else - if (Powered) return 6480; - else return 6481; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6482; - else return 6483; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6484; - else return 6485; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6486; - else return 6487; - else - if (Powered) return 6488; - else return 6489; - } - BlockState DarkOakButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace DarkOakDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState DarkOakDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8994; - else return 8995; - else - if (Powered) return 8996; - else return 8997; - else - if (Open) - if (Powered) return 8998; - else return 8999; - else - if (Powered) return 9000; - else return 9001; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9002; - else return 9003; - else - if (Powered) return 9004; - else return 9005; - else - if (Open) - if (Powered) return 9006; - else return 9007; - else - if (Powered) return 9008; - else return 9009; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9010; - else return 9011; - else - if (Powered) return 9012; - else return 9013; - else - if (Open) - if (Powered) return 9014; - else return 9015; - else - if (Powered) return 9016; - else return 9017; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9018; - else return 9019; - else - if (Powered) return 9020; - else return 9021; - else - if (Open) - if (Powered) return 9022; - else return 9023; - else - if (Powered) return 9024; - else return 9025; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9026; - else return 9027; - else - if (Powered) return 9028; - else return 9029; - else - if (Open) - if (Powered) return 9030; - else return 9031; - else - if (Powered) return 9032; - else return 9033; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9034; - else return 9035; - else - if (Powered) return 9036; - else return 9037; - else - if (Open) - if (Powered) return 9038; - else return 9039; - else - if (Powered) return 9040; - else return 9041; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9042; - else return 9043; - else - if (Powered) return 9044; - else return 9045; - else - if (Open) - if (Powered) return 9046; - else return 9047; - else - if (Powered) return 9048; - else return 9049; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 9050; - else return 9051; - else - if (Powered) return 9052; - else return 9053; - else - if (Open) - if (Powered) return 9054; - else return 9055; - else - if (Powered) return 9056; - else return 9057; - } - BlockState DarkOakDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace DarkOakFence - { - constexpr BlockState DarkOakFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 8708; - else return 8709; - else - if (West) return 8712; - else return 8713; - else - if (South) - if (West) return 8716; - else return 8717; - else - if (West) return 8720; - else return 8721; + return 8943; + else if (Powered) + return 8944; + else + return 8945; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8946; + else + return 8947; + else if (Powered) + return 8948; + else + return 8949; + else if (Open) + if (Powered) + return 8950; + else + return 8951; + else if (Powered) + return 8952; else - if (North) - if (South) - if (West) return 8724; - else return 8725; - else - if (West) return 8728; - else return 8729; - else - if (South) - if (West) return 8732; - else return 8733; - else - if (West) return 8736; - else return 8737; - } - BlockState DarkOakFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace DarkOakFenceGate - { - constexpr BlockState DarkOakFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 8546; - else return 8547; - else - if (Powered) return 8548; - else return 8549; - else - if (Open) - if (Powered) return 8550; - else return 8551; - else - if (Powered) return 8552; - else return 8553; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 8554; - else return 8555; - else - if (Powered) return 8556; - else return 8557; - else - if (Open) - if (Powered) return 8558; - else return 8559; - else - if (Powered) return 8560; - else return 8561; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 8562; - else return 8563; - else - if (Powered) return 8564; - else return 8565; - else - if (Open) - if (Powered) return 8566; - else return 8567; - else - if (Powered) return 8568; - else return 8569; - else - if (InWall) - if (Open) - if (Powered) return 8570; - else return 8571; - else - if (Powered) return 8572; - else return 8573; - else - if (Open) - if (Powered) return 8574; - else return 8575; - else - if (Powered) return 8576; - else return 8577; - } - BlockState DarkOakFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace DarkOakLeaves - { - constexpr BlockState DarkOakLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 215; - else return 216; - else if (Distance == 2) - if (Persistent) return 217; - else return 218; - else if (Distance == 3) - if (Persistent) return 219; - else return 220; - else if (Distance == 4) - if (Persistent) return 221; - else return 222; - else if (Distance == 5) - if (Persistent) return 223; - else return 224; - else if (Distance == 6) - if (Persistent) return 225; - else return 226; - else - if (Persistent) return 227; - else return 228; - } - BlockState DarkOakLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace DarkOakLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState DarkOakLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 88; - else if (Axis == Axis::Y) return 89; - else return 90; - } - BlockState DarkOakLog(); - enum Axis Axis(BlockState Block); - } - namespace DarkOakPlanks - { - constexpr BlockState DarkOakPlanks() - { - return 20; - } - } - namespace DarkOakPressurePlate - { - constexpr BlockState DarkOakPressurePlate(const bool Powered) - { - if (Powered) return 3883; - else return 3884; - } - BlockState DarkOakPressurePlate(); - bool Powered(BlockState Block); - } - namespace DarkOakSapling - { - constexpr BlockState DarkOakSapling(const unsigned char Stage) - { - if (Stage == 0) return 31; - else return 32; - } - BlockState DarkOakSapling(); - unsigned char Stage(BlockState Block); - } - namespace DarkOakSign - { - constexpr BlockState DarkOakSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3542; - else if (Rotation == 1) return 3544; - else if (Rotation == 2) return 3546; - else if (Rotation == 3) return 3548; - else if (Rotation == 4) return 3550; - else if (Rotation == 5) return 3552; - else if (Rotation == 6) return 3554; - else if (Rotation == 7) return 3556; - else if (Rotation == 8) return 3558; - else if (Rotation == 9) return 3560; - else if (Rotation == 10) return 3562; - else if (Rotation == 11) return 3564; - else if (Rotation == 12) return 3566; - else if (Rotation == 13) return 3568; - else if (Rotation == 14) return 3570; - else return 3572; - } - BlockState DarkOakSign(); - unsigned char Rotation(BlockState Block); - } - namespace DarkOakSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState DarkOakSlab(const enum Type Type) - { - if (Type == Type::Top) return 8331; - else if (Type == Type::Bottom) return 8333; - else return 8335; - } - BlockState DarkOakSlab(); - enum Type Type(BlockState Block); - } - namespace DarkOakStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState DarkOakStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7456; - else if (Shape == Shape::InnerLeft) return 7458; - else if (Shape == Shape::InnerRight) return 7460; - else if (Shape == Shape::OuterLeft) return 7462; - else return 7464; - else - if (Shape == Shape::Straight) return 7466; - else if (Shape == Shape::InnerLeft) return 7468; - else if (Shape == Shape::InnerRight) return 7470; - else if (Shape == Shape::OuterLeft) return 7472; - else return 7474; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7476; - else if (Shape == Shape::InnerLeft) return 7478; - else if (Shape == Shape::InnerRight) return 7480; - else if (Shape == Shape::OuterLeft) return 7482; - else return 7484; - else - if (Shape == Shape::Straight) return 7486; - else if (Shape == Shape::InnerLeft) return 7488; - else if (Shape == Shape::InnerRight) return 7490; - else if (Shape == Shape::OuterLeft) return 7492; - else return 7494; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7496; - else if (Shape == Shape::InnerLeft) return 7498; - else if (Shape == Shape::InnerRight) return 7500; - else if (Shape == Shape::OuterLeft) return 7502; - else return 7504; - else - if (Shape == Shape::Straight) return 7506; - else if (Shape == Shape::InnerLeft) return 7508; - else if (Shape == Shape::InnerRight) return 7510; - else if (Shape == Shape::OuterLeft) return 7512; - else return 7514; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7516; - else if (Shape == Shape::InnerLeft) return 7518; - else if (Shape == Shape::InnerRight) return 7520; - else if (Shape == Shape::OuterLeft) return 7522; - else return 7524; - else - if (Shape == Shape::Straight) return 7526; - else if (Shape == Shape::InnerLeft) return 7528; - else if (Shape == Shape::InnerRight) return 7530; - else if (Shape == Shape::OuterLeft) return 7532; - else return 7534; - } - BlockState DarkOakStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace DarkOakTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState DarkOakTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4432; - else return 4434; - else - if (Powered) return 4436; - else return 4438; - else - if (Open) - if (Powered) return 4440; - else return 4442; - else - if (Powered) return 4444; - else return 4446; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4448; - else return 4450; - else - if (Powered) return 4452; - else return 4454; - else - if (Open) - if (Powered) return 4456; - else return 4458; - else - if (Powered) return 4460; - else return 4462; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4464; - else return 4466; - else - if (Powered) return 4468; - else return 4470; - else - if (Open) - if (Powered) return 4472; - else return 4474; - else - if (Powered) return 4476; - else return 4478; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4480; - else return 4482; - else - if (Powered) return 4484; - else return 4486; - else - if (Open) - if (Powered) return 4488; - else return 4490; - else - if (Powered) return 4492; - else return 4494; - } - BlockState DarkOakTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace DarkOakWallSign - { - constexpr BlockState DarkOakWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3776; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3778; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3780; - else return 3782; - } - BlockState DarkOakWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace DarkOakWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState DarkOakWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 124; - else if (Axis == Axis::Y) return 125; - else return 126; - } - BlockState DarkOakWood(); - enum Axis Axis(BlockState Block); - } - namespace DarkPrismarine - { - constexpr BlockState DarkPrismarine() - { - return 7603; - } - } - namespace DarkPrismarineSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState DarkPrismarineSlab(const enum Type Type) - { - if (Type == Type::Top) return 7857; - else if (Type == Type::Bottom) return 7859; - else return 7861; - } - BlockState DarkPrismarineSlab(); - enum Type Type(BlockState Block); - } - namespace DarkPrismarineStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState DarkPrismarineStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7765; - else if (Shape == Shape::InnerLeft) return 7767; - else if (Shape == Shape::InnerRight) return 7769; - else if (Shape == Shape::OuterLeft) return 7771; - else return 7773; - else - if (Shape == Shape::Straight) return 7775; - else if (Shape == Shape::InnerLeft) return 7777; - else if (Shape == Shape::InnerRight) return 7779; - else if (Shape == Shape::OuterLeft) return 7781; - else return 7783; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7785; - else if (Shape == Shape::InnerLeft) return 7787; - else if (Shape == Shape::InnerRight) return 7789; - else if (Shape == Shape::OuterLeft) return 7791; - else return 7793; - else - if (Shape == Shape::Straight) return 7795; - else if (Shape == Shape::InnerLeft) return 7797; - else if (Shape == Shape::InnerRight) return 7799; - else if (Shape == Shape::OuterLeft) return 7801; - else return 7803; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7805; - else if (Shape == Shape::InnerLeft) return 7807; - else if (Shape == Shape::InnerRight) return 7809; - else if (Shape == Shape::OuterLeft) return 7811; - else return 7813; - else - if (Shape == Shape::Straight) return 7815; - else if (Shape == Shape::InnerLeft) return 7817; - else if (Shape == Shape::InnerRight) return 7819; - else if (Shape == Shape::OuterLeft) return 7821; - else return 7823; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7825; - else if (Shape == Shape::InnerLeft) return 7827; - else if (Shape == Shape::InnerRight) return 7829; - else if (Shape == Shape::OuterLeft) return 7831; - else return 7833; - else - if (Shape == Shape::Straight) return 7835; - else if (Shape == Shape::InnerLeft) return 7837; - else if (Shape == Shape::InnerRight) return 7839; - else if (Shape == Shape::OuterLeft) return 7841; - else return 7843; - } - BlockState DarkPrismarineStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace DaylightDetector - { - constexpr BlockState DaylightDetector(const bool Inverted, const unsigned char Power) - { - if (Inverted) - if (Power == 0) return 6694; - else if (Power == 1) return 6695; - else if (Power == 2) return 6696; - else if (Power == 3) return 6697; - else if (Power == 4) return 6698; - else if (Power == 5) return 6699; - else if (Power == 6) return 6700; - else if (Power == 7) return 6701; - else if (Power == 8) return 6702; - else if (Power == 9) return 6703; - else if (Power == 10) return 6704; - else if (Power == 11) return 6705; - else if (Power == 12) return 6706; - else if (Power == 13) return 6707; - else if (Power == 14) return 6708; - else return 6709; - else - if (Power == 0) return 6710; - else if (Power == 1) return 6711; - else if (Power == 2) return 6712; - else if (Power == 3) return 6713; - else if (Power == 4) return 6714; - else if (Power == 5) return 6715; - else if (Power == 6) return 6716; - else if (Power == 7) return 6717; - else if (Power == 8) return 6718; - else if (Power == 9) return 6719; - else if (Power == 10) return 6720; - else if (Power == 11) return 6721; - else if (Power == 12) return 6722; - else if (Power == 13) return 6723; - else if (Power == 14) return 6724; - else return 6725; - } - BlockState DaylightDetector(); - bool Inverted(BlockState Block); - unsigned char Power(BlockState Block); - } - namespace DeadBrainCoral - { - constexpr BlockState DeadBrainCoral() - { - return 9523; - } - } - namespace DeadBrainCoralBlock - { - constexpr BlockState DeadBrainCoralBlock() - { - return 9511; - } - } - namespace DeadBrainCoralFan - { - constexpr BlockState DeadBrainCoralFan() - { - return 9543; - } - } - namespace DeadBrainCoralWallFan - { - constexpr BlockState DeadBrainCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9569; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9571; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9573; - else return 9575; - } - BlockState DeadBrainCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace DeadBubbleCoral - { - constexpr BlockState DeadBubbleCoral() - { - return 9525; - } - } - namespace DeadBubbleCoralBlock - { - constexpr BlockState DeadBubbleCoralBlock() - { - return 9512; - } - } - namespace DeadBubbleCoralFan - { - constexpr BlockState DeadBubbleCoralFan() - { - return 9545; - } - } - namespace DeadBubbleCoralWallFan - { - constexpr BlockState DeadBubbleCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9577; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9579; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9581; - else return 9583; - } - BlockState DeadBubbleCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace DeadBush - { - constexpr BlockState DeadBush() - { - return 1344; - } - } - namespace DeadFireCoral - { - constexpr BlockState DeadFireCoral() - { - return 9527; - } - } - namespace DeadFireCoralBlock - { - constexpr BlockState DeadFireCoralBlock() - { - return 9513; - } - } - namespace DeadFireCoralFan - { - constexpr BlockState DeadFireCoralFan() - { - return 9547; - } - } - namespace DeadFireCoralWallFan - { - constexpr BlockState DeadFireCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9585; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9587; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9589; - else return 9591; - } - BlockState DeadFireCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace DeadHornCoral - { - constexpr BlockState DeadHornCoral() - { - return 9529; - } - } - namespace DeadHornCoralBlock - { - constexpr BlockState DeadHornCoralBlock() - { - return 9514; - } - } - namespace DeadHornCoralFan - { - constexpr BlockState DeadHornCoralFan() - { - return 9549; - } - } - namespace DeadHornCoralWallFan - { - constexpr BlockState DeadHornCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9593; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9595; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9597; - else return 9599; - } - BlockState DeadHornCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace DeadTubeCoral - { - constexpr BlockState DeadTubeCoral() - { - return 9521; - } - } - namespace DeadTubeCoralBlock - { - constexpr BlockState DeadTubeCoralBlock() - { - return 9510; - } - } - namespace DeadTubeCoralFan - { - constexpr BlockState DeadTubeCoralFan() - { - return 9541; - } - } - namespace DeadTubeCoralWallFan - { - constexpr BlockState DeadTubeCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9561; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9563; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9565; - else return 9567; - } - BlockState DeadTubeCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace DetectorRail - { - enum class Shape - { - NorthSouth, - EastWest, - AscendingEast, - AscendingWest, - AscendingNorth, - AscendingSouth - }; - constexpr BlockState DetectorRail(const bool Powered, const enum Shape Shape) - { - if (Powered) - if (Shape == Shape::NorthSouth) return 1317; - else if (Shape == Shape::EastWest) return 1318; - else if (Shape == Shape::AscendingEast) return 1319; - else if (Shape == Shape::AscendingWest) return 1320; - else if (Shape == Shape::AscendingNorth) return 1321; - else return 1322; - else - if (Shape == Shape::NorthSouth) return 1323; - else if (Shape == Shape::EastWest) return 1324; - else if (Shape == Shape::AscendingEast) return 1325; - else if (Shape == Shape::AscendingWest) return 1326; - else if (Shape == Shape::AscendingNorth) return 1327; - else return 1328; - } - BlockState DetectorRail(); - bool Powered(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace DiamondBlock - { - constexpr BlockState DiamondBlock() - { - return 3355; - } - } - namespace DiamondOre - { - constexpr BlockState DiamondOre() - { - return 3354; - } - } - namespace Diorite - { - constexpr BlockState Diorite() - { - return 4; - } - } - namespace DioriteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState DioriteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10862; - else if (Type == Type::Bottom) return 10864; - else return 10866; - } - BlockState DioriteSlab(); - enum Type Type(BlockState Block); - } - namespace DioriteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState DioriteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10710; - else if (Shape == Shape::InnerLeft) return 10712; - else if (Shape == Shape::InnerRight) return 10714; - else if (Shape == Shape::OuterLeft) return 10716; - else return 10718; - else - if (Shape == Shape::Straight) return 10720; - else if (Shape == Shape::InnerLeft) return 10722; - else if (Shape == Shape::InnerRight) return 10724; - else if (Shape == Shape::OuterLeft) return 10726; - else return 10728; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10730; - else if (Shape == Shape::InnerLeft) return 10732; - else if (Shape == Shape::InnerRight) return 10734; - else if (Shape == Shape::OuterLeft) return 10736; - else return 10738; - else - if (Shape == Shape::Straight) return 10740; - else if (Shape == Shape::InnerLeft) return 10742; - else if (Shape == Shape::InnerRight) return 10744; - else if (Shape == Shape::OuterLeft) return 10746; - else return 10748; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10750; - else if (Shape == Shape::InnerLeft) return 10752; - else if (Shape == Shape::InnerRight) return 10754; - else if (Shape == Shape::OuterLeft) return 10756; - else return 10758; - else - if (Shape == Shape::Straight) return 10760; - else if (Shape == Shape::InnerLeft) return 10762; - else if (Shape == Shape::InnerRight) return 10764; - else if (Shape == Shape::OuterLeft) return 10766; - else return 10768; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10770; - else if (Shape == Shape::InnerLeft) return 10772; - else if (Shape == Shape::InnerRight) return 10774; - else if (Shape == Shape::OuterLeft) return 10776; - else return 10778; - else - if (Shape == Shape::Straight) return 10780; - else if (Shape == Shape::InnerLeft) return 10782; - else if (Shape == Shape::InnerRight) return 10784; - else if (Shape == Shape::OuterLeft) return 10786; - else return 10788; - } - BlockState DioriteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState DioriteWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14434; - else if (West == West::Low) return 14435; - else return 14436; - else - if (West == West::None) return 14440; - else if (West == West::Low) return 14441; - else return 14442; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14446; - else if (West == West::Low) return 14447; - else return 14448; - else - if (West == West::None) return 14452; - else if (West == West::Low) return 14453; - else return 14454; - else - if (Up) - if (West == West::None) return 14458; - else if (West == West::Low) return 14459; - else return 14460; - else - if (West == West::None) return 14464; - else if (West == West::Low) return 14465; - else return 14466; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14470; - else if (West == West::Low) return 14471; - else return 14472; - else - if (West == West::None) return 14476; - else if (West == West::Low) return 14477; - else return 14478; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14482; - else if (West == West::Low) return 14483; - else return 14484; - else - if (West == West::None) return 14488; - else if (West == West::Low) return 14489; - else return 14490; - else - if (Up) - if (West == West::None) return 14494; - else if (West == West::Low) return 14495; - else return 14496; - else - if (West == West::None) return 14500; - else if (West == West::Low) return 14501; - else return 14502; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14506; - else if (West == West::Low) return 14507; - else return 14508; - else - if (West == West::None) return 14512; - else if (West == West::Low) return 14513; - else return 14514; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14518; - else if (West == West::Low) return 14519; - else return 14520; - else - if (West == West::None) return 14524; - else if (West == West::Low) return 14525; - else return 14526; - else - if (Up) - if (West == West::None) return 14530; - else if (West == West::Low) return 14531; - else return 14532; - else - if (West == West::None) return 14536; - else if (West == West::Low) return 14537; - else return 14538; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14542; - else if (West == West::Low) return 14543; - else return 14544; - else - if (West == West::None) return 14548; - else if (West == West::Low) return 14549; - else return 14550; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14554; - else if (West == West::Low) return 14555; - else return 14556; - else - if (West == West::None) return 14560; - else if (West == West::Low) return 14561; - else return 14562; - else - if (Up) - if (West == West::None) return 14566; - else if (West == West::Low) return 14567; - else return 14568; - else - if (West == West::None) return 14572; - else if (West == West::Low) return 14573; - else return 14574; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14578; - else if (West == West::Low) return 14579; - else return 14580; - else - if (West == West::None) return 14584; - else if (West == West::Low) return 14585; - else return 14586; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14590; - else if (West == West::Low) return 14591; - else return 14592; - else - if (West == West::None) return 14596; - else if (West == West::Low) return 14597; - else return 14598; - else - if (Up) - if (West == West::None) return 14602; - else if (West == West::Low) return 14603; - else return 14604; - else - if (West == West::None) return 14608; - else if (West == West::Low) return 14609; - else return 14610; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14614; - else if (West == West::Low) return 14615; - else return 14616; - else - if (West == West::None) return 14620; - else if (West == West::Low) return 14621; - else return 14622; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14626; - else if (West == West::Low) return 14627; - else return 14628; - else - if (West == West::None) return 14632; - else if (West == West::Low) return 14633; - else return 14634; - else - if (Up) - if (West == West::None) return 14638; - else if (West == West::Low) return 14639; - else return 14640; - else - if (West == West::None) return 14644; - else if (West == West::Low) return 14645; - else return 14646; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14650; - else if (West == West::Low) return 14651; - else return 14652; - else - if (West == West::None) return 14656; - else if (West == West::Low) return 14657; - else return 14658; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14662; - else if (West == West::Low) return 14663; - else return 14664; - else - if (West == West::None) return 14668; - else if (West == West::Low) return 14669; - else return 14670; - else - if (Up) - if (West == West::None) return 14674; - else if (West == West::Low) return 14675; - else return 14676; - else - if (West == West::None) return 14680; - else if (West == West::Low) return 14681; - else return 14682; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14686; - else if (West == West::Low) return 14687; - else return 14688; - else - if (West == West::None) return 14692; - else if (West == West::Low) return 14693; - else return 14694; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14698; - else if (West == West::Low) return 14699; - else return 14700; - else - if (West == West::None) return 14704; - else if (West == West::Low) return 14705; - else return 14706; - else - if (Up) - if (West == West::None) return 14710; - else if (West == West::Low) return 14711; - else return 14712; - else - if (West == West::None) return 14716; - else if (West == West::Low) return 14717; - else return 14718; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14722; - else if (West == West::Low) return 14723; - else return 14724; - else - if (West == West::None) return 14728; - else if (West == West::Low) return 14729; - else return 14730; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14734; - else if (West == West::Low) return 14735; - else return 14736; - else - if (West == West::None) return 14740; - else if (West == West::Low) return 14741; - else return 14742; - else - if (Up) - if (West == West::None) return 14746; - else if (West == West::Low) return 14747; - else return 14748; - else - if (West == West::None) return 14752; - else if (West == West::Low) return 14753; - else return 14754; - } - BlockState DioriteWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Dirt - { - constexpr BlockState Dirt() - { - return 10; - } - } - namespace Dispenser - { - constexpr BlockState Dispenser(const eBlockFace Facing, const bool Triggered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Triggered) return 234; - else return 235; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Triggered) return 236; - else return 237; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Triggered) return 238; - else return 239; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Triggered) return 240; - else return 241; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Triggered) return 242; - else return 243; - else - if (Triggered) return 244; - else return 245; - } - BlockState Dispenser(); - eBlockFace Facing(BlockState Block); - bool Triggered(BlockState Block); - } - namespace DragonEgg - { - constexpr BlockState DragonEgg() - { - return 5155; - } - } - namespace DragonHead - { - constexpr BlockState DragonHead(const unsigned char Rotation) - { - if (Rotation == 0) return 6590; - else if (Rotation == 1) return 6591; - else if (Rotation == 2) return 6592; - else if (Rotation == 3) return 6593; - else if (Rotation == 4) return 6594; - else if (Rotation == 5) return 6595; - else if (Rotation == 6) return 6596; - else if (Rotation == 7) return 6597; - else if (Rotation == 8) return 6598; - else if (Rotation == 9) return 6599; - else if (Rotation == 10) return 6600; - else if (Rotation == 11) return 6601; - else if (Rotation == 12) return 6602; - else if (Rotation == 13) return 6603; - else if (Rotation == 14) return 6604; - else return 6605; - } - BlockState DragonHead(); - unsigned char Rotation(BlockState Block); - } - namespace DragonWallHead - { - constexpr BlockState DragonWallHead(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6606; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6607; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6608; - else return 6609; - } - BlockState DragonWallHead(); - eBlockFace Facing(BlockState Block); - } - namespace DriedKelpBlock - { - constexpr BlockState DriedKelpBlock() - { - return 9497; - } - } - namespace Dropper - { - constexpr BlockState Dropper(const eBlockFace Facing, const bool Triggered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Triggered) return 6835; - else return 6836; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Triggered) return 6837; - else return 6838; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Triggered) return 6839; - else return 6840; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Triggered) return 6841; - else return 6842; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Triggered) return 6843; - else return 6844; - else - if (Triggered) return 6845; - else return 6846; - } - BlockState Dropper(); - eBlockFace Facing(BlockState Block); - bool Triggered(BlockState Block); - } - namespace EmeraldBlock - { - constexpr BlockState EmeraldBlock() - { - return 5403; - } - } - namespace EmeraldOre - { - constexpr BlockState EmeraldOre() - { - return 5250; - } - } - namespace EnchantingTable - { - constexpr BlockState EnchantingTable() - { - return 5132; - } - } - namespace EndGateway - { - constexpr BlockState EndGateway() - { - return 9224; - } - } - namespace EndPortal - { - constexpr BlockState EndPortal() - { - return 5145; - } - } - namespace EndPortalFrame - { - constexpr BlockState EndPortalFrame(const bool Eye, const eBlockFace Facing) - { - if (Eye) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5146; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5147; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5148; - else return 5149; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5150; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5151; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5152; - else return 5153; - } - BlockState EndPortalFrame(); - bool Eye(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace EndRod - { - constexpr BlockState EndRod(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9058; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9059; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9060; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9061; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9062; - else return 9063; - } - BlockState EndRod(); - eBlockFace Facing(BlockState Block); - } - namespace EndStone - { - constexpr BlockState EndStone() - { - return 5154; - } - } - namespace EndStoneBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState EndStoneBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 10820; - else if (Type == Type::Bottom) return 10822; - else return 10824; - } - BlockState EndStoneBrickSlab(); - enum Type Type(BlockState Block); - } - namespace EndStoneBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState EndStoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10070; - else if (Shape == Shape::InnerLeft) return 10072; - else if (Shape == Shape::InnerRight) return 10074; - else if (Shape == Shape::OuterLeft) return 10076; - else return 10078; - else - if (Shape == Shape::Straight) return 10080; - else if (Shape == Shape::InnerLeft) return 10082; - else if (Shape == Shape::InnerRight) return 10084; - else if (Shape == Shape::OuterLeft) return 10086; - else return 10088; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10090; - else if (Shape == Shape::InnerLeft) return 10092; - else if (Shape == Shape::InnerRight) return 10094; - else if (Shape == Shape::OuterLeft) return 10096; - else return 10098; - else - if (Shape == Shape::Straight) return 10100; - else if (Shape == Shape::InnerLeft) return 10102; - else if (Shape == Shape::InnerRight) return 10104; - else if (Shape == Shape::OuterLeft) return 10106; - else return 10108; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10110; - else if (Shape == Shape::InnerLeft) return 10112; - else if (Shape == Shape::InnerRight) return 10114; - else if (Shape == Shape::OuterLeft) return 10116; - else return 10118; - else - if (Shape == Shape::Straight) return 10120; - else if (Shape == Shape::InnerLeft) return 10122; - else if (Shape == Shape::InnerRight) return 10124; - else if (Shape == Shape::OuterLeft) return 10126; - else return 10128; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10130; - else if (Shape == Shape::InnerLeft) return 10132; - else if (Shape == Shape::InnerRight) return 10134; - else if (Shape == Shape::OuterLeft) return 10136; - else return 10138; - else - if (Shape == Shape::Straight) return 10140; - else if (Shape == Shape::InnerLeft) return 10142; - else if (Shape == Shape::InnerRight) return 10144; - else if (Shape == Shape::OuterLeft) return 10146; - else return 10148; - } - BlockState EndStoneBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState EndStoneBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14110; - else if (West == West::Low) return 14111; - else return 14112; - else - if (West == West::None) return 14116; - else if (West == West::Low) return 14117; - else return 14118; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14122; - else if (West == West::Low) return 14123; - else return 14124; - else - if (West == West::None) return 14128; - else if (West == West::Low) return 14129; - else return 14130; - else - if (Up) - if (West == West::None) return 14134; - else if (West == West::Low) return 14135; - else return 14136; - else - if (West == West::None) return 14140; - else if (West == West::Low) return 14141; - else return 14142; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14146; - else if (West == West::Low) return 14147; - else return 14148; - else - if (West == West::None) return 14152; - else if (West == West::Low) return 14153; - else return 14154; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14158; - else if (West == West::Low) return 14159; - else return 14160; - else - if (West == West::None) return 14164; - else if (West == West::Low) return 14165; - else return 14166; - else - if (Up) - if (West == West::None) return 14170; - else if (West == West::Low) return 14171; - else return 14172; - else - if (West == West::None) return 14176; - else if (West == West::Low) return 14177; - else return 14178; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14182; - else if (West == West::Low) return 14183; - else return 14184; - else - if (West == West::None) return 14188; - else if (West == West::Low) return 14189; - else return 14190; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14194; - else if (West == West::Low) return 14195; - else return 14196; - else - if (West == West::None) return 14200; - else if (West == West::Low) return 14201; - else return 14202; - else - if (Up) - if (West == West::None) return 14206; - else if (West == West::Low) return 14207; - else return 14208; - else - if (West == West::None) return 14212; - else if (West == West::Low) return 14213; - else return 14214; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14218; - else if (West == West::Low) return 14219; - else return 14220; - else - if (West == West::None) return 14224; - else if (West == West::Low) return 14225; - else return 14226; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14230; - else if (West == West::Low) return 14231; - else return 14232; - else - if (West == West::None) return 14236; - else if (West == West::Low) return 14237; - else return 14238; - else - if (Up) - if (West == West::None) return 14242; - else if (West == West::Low) return 14243; - else return 14244; - else - if (West == West::None) return 14248; - else if (West == West::Low) return 14249; - else return 14250; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14254; - else if (West == West::Low) return 14255; - else return 14256; - else - if (West == West::None) return 14260; - else if (West == West::Low) return 14261; - else return 14262; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14266; - else if (West == West::Low) return 14267; - else return 14268; - else - if (West == West::None) return 14272; - else if (West == West::Low) return 14273; - else return 14274; - else - if (Up) - if (West == West::None) return 14278; - else if (West == West::Low) return 14279; - else return 14280; - else - if (West == West::None) return 14284; - else if (West == West::Low) return 14285; - else return 14286; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14290; - else if (West == West::Low) return 14291; - else return 14292; - else - if (West == West::None) return 14296; - else if (West == West::Low) return 14297; - else return 14298; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14302; - else if (West == West::Low) return 14303; - else return 14304; - else - if (West == West::None) return 14308; - else if (West == West::Low) return 14309; - else return 14310; - else - if (Up) - if (West == West::None) return 14314; - else if (West == West::Low) return 14315; - else return 14316; - else - if (West == West::None) return 14320; - else if (West == West::Low) return 14321; - else return 14322; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14326; - else if (West == West::Low) return 14327; - else return 14328; - else - if (West == West::None) return 14332; - else if (West == West::Low) return 14333; - else return 14334; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14338; - else if (West == West::Low) return 14339; - else return 14340; - else - if (West == West::None) return 14344; - else if (West == West::Low) return 14345; - else return 14346; - else - if (Up) - if (West == West::None) return 14350; - else if (West == West::Low) return 14351; - else return 14352; - else - if (West == West::None) return 14356; - else if (West == West::Low) return 14357; - else return 14358; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14362; - else if (West == West::Low) return 14363; - else return 14364; - else - if (West == West::None) return 14368; - else if (West == West::Low) return 14369; - else return 14370; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14374; - else if (West == West::Low) return 14375; - else return 14376; - else - if (West == West::None) return 14380; - else if (West == West::Low) return 14381; - else return 14382; - else - if (Up) - if (West == West::None) return 14386; - else if (West == West::Low) return 14387; - else return 14388; - else - if (West == West::None) return 14392; - else if (West == West::Low) return 14393; - else return 14394; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14398; - else if (West == West::Low) return 14399; - else return 14400; - else - if (West == West::None) return 14404; - else if (West == West::Low) return 14405; - else return 14406; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14410; - else if (West == West::Low) return 14411; - else return 14412; - else - if (West == West::None) return 14416; - else if (West == West::Low) return 14417; - else return 14418; - else - if (Up) - if (West == West::None) return 14422; - else if (West == West::Low) return 14423; - else return 14424; - else - if (West == West::None) return 14428; - else if (West == West::Low) return 14429; - else return 14430; - } - BlockState EndStoneBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace EndStoneBricks - { - constexpr BlockState EndStoneBricks() - { - return 9218; - } - } - namespace EnderChest - { - constexpr BlockState EnderChest(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5252; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5254; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 5256; - else return 5258; - } - BlockState EnderChest(); - eBlockFace Facing(BlockState Block); - } - namespace Farmland - { - constexpr BlockState Farmland(const unsigned char Moisture) - { - if (Moisture == 0) return 3365; - else if (Moisture == 1) return 3366; - else if (Moisture == 2) return 3367; - else if (Moisture == 3) return 3368; - else if (Moisture == 4) return 3369; - else if (Moisture == 5) return 3370; - else if (Moisture == 6) return 3371; - else return 3372; - } - BlockState Farmland(); - unsigned char Moisture(BlockState Block); - } - namespace Fern - { - constexpr BlockState Fern() - { - return 1343; - } - } - namespace Fire - { - constexpr BlockState Fire(const unsigned char Age, const bool East, const bool North, const bool South, const bool Up, const bool West) - { - if (Age == 0) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1440; - else return 1441; - else - if (West) return 1442; - else return 1443; - else - if (Up) - if (West) return 1444; - else return 1445; - else - if (West) return 1446; - else return 1447; - else - if (South) - if (Up) - if (West) return 1448; - else return 1449; - else - if (West) return 1450; - else return 1451; - else - if (Up) - if (West) return 1452; - else return 1453; - else - if (West) return 1454; - else return 1455; - else - if (North) - if (South) - if (Up) - if (West) return 1456; - else return 1457; - else - if (West) return 1458; - else return 1459; - else - if (Up) - if (West) return 1460; - else return 1461; - else - if (West) return 1462; - else return 1463; - else - if (South) - if (Up) - if (West) return 1464; - else return 1465; - else - if (West) return 1466; - else return 1467; - else - if (Up) - if (West) return 1468; - else return 1469; - else - if (West) return 1470; - else return 1471; - else if (Age == 1) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1472; - else return 1473; - else - if (West) return 1474; - else return 1475; - else - if (Up) - if (West) return 1476; - else return 1477; - else - if (West) return 1478; - else return 1479; - else - if (South) - if (Up) - if (West) return 1480; - else return 1481; - else - if (West) return 1482; - else return 1483; - else - if (Up) - if (West) return 1484; - else return 1485; - else - if (West) return 1486; - else return 1487; - else - if (North) - if (South) - if (Up) - if (West) return 1488; - else return 1489; - else - if (West) return 1490; - else return 1491; - else - if (Up) - if (West) return 1492; - else return 1493; - else - if (West) return 1494; - else return 1495; - else - if (South) - if (Up) - if (West) return 1496; - else return 1497; - else - if (West) return 1498; - else return 1499; - else - if (Up) - if (West) return 1500; - else return 1501; - else - if (West) return 1502; - else return 1503; - else if (Age == 2) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1504; - else return 1505; - else - if (West) return 1506; - else return 1507; - else - if (Up) - if (West) return 1508; - else return 1509; - else - if (West) return 1510; - else return 1511; - else - if (South) - if (Up) - if (West) return 1512; - else return 1513; - else - if (West) return 1514; - else return 1515; - else - if (Up) - if (West) return 1516; - else return 1517; - else - if (West) return 1518; - else return 1519; - else - if (North) - if (South) - if (Up) - if (West) return 1520; - else return 1521; - else - if (West) return 1522; - else return 1523; - else - if (Up) - if (West) return 1524; - else return 1525; - else - if (West) return 1526; - else return 1527; - else - if (South) - if (Up) - if (West) return 1528; - else return 1529; - else - if (West) return 1530; - else return 1531; - else - if (Up) - if (West) return 1532; - else return 1533; - else - if (West) return 1534; - else return 1535; - else if (Age == 3) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1536; - else return 1537; - else - if (West) return 1538; - else return 1539; - else - if (Up) - if (West) return 1540; - else return 1541; - else - if (West) return 1542; - else return 1543; - else - if (South) - if (Up) - if (West) return 1544; - else return 1545; - else - if (West) return 1546; - else return 1547; - else - if (Up) - if (West) return 1548; - else return 1549; - else - if (West) return 1550; - else return 1551; - else - if (North) - if (South) - if (Up) - if (West) return 1552; - else return 1553; - else - if (West) return 1554; - else return 1555; - else - if (Up) - if (West) return 1556; - else return 1557; - else - if (West) return 1558; - else return 1559; - else - if (South) - if (Up) - if (West) return 1560; - else return 1561; - else - if (West) return 1562; - else return 1563; - else - if (Up) - if (West) return 1564; - else return 1565; - else - if (West) return 1566; - else return 1567; - else if (Age == 4) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1568; - else return 1569; - else - if (West) return 1570; - else return 1571; - else - if (Up) - if (West) return 1572; - else return 1573; - else - if (West) return 1574; - else return 1575; - else - if (South) - if (Up) - if (West) return 1576; - else return 1577; - else - if (West) return 1578; - else return 1579; - else - if (Up) - if (West) return 1580; - else return 1581; - else - if (West) return 1582; - else return 1583; - else - if (North) - if (South) - if (Up) - if (West) return 1584; - else return 1585; - else - if (West) return 1586; - else return 1587; - else - if (Up) - if (West) return 1588; - else return 1589; - else - if (West) return 1590; - else return 1591; - else - if (South) - if (Up) - if (West) return 1592; - else return 1593; - else - if (West) return 1594; - else return 1595; - else - if (Up) - if (West) return 1596; - else return 1597; - else - if (West) return 1598; - else return 1599; - else if (Age == 5) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1600; - else return 1601; - else - if (West) return 1602; - else return 1603; - else - if (Up) - if (West) return 1604; - else return 1605; - else - if (West) return 1606; - else return 1607; - else - if (South) - if (Up) - if (West) return 1608; - else return 1609; - else - if (West) return 1610; - else return 1611; - else - if (Up) - if (West) return 1612; - else return 1613; - else - if (West) return 1614; - else return 1615; - else - if (North) - if (South) - if (Up) - if (West) return 1616; - else return 1617; - else - if (West) return 1618; - else return 1619; - else - if (Up) - if (West) return 1620; - else return 1621; - else - if (West) return 1622; - else return 1623; - else - if (South) - if (Up) - if (West) return 1624; - else return 1625; - else - if (West) return 1626; - else return 1627; - else - if (Up) - if (West) return 1628; - else return 1629; - else - if (West) return 1630; - else return 1631; - else if (Age == 6) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1632; - else return 1633; - else - if (West) return 1634; - else return 1635; - else - if (Up) - if (West) return 1636; - else return 1637; - else - if (West) return 1638; - else return 1639; - else - if (South) - if (Up) - if (West) return 1640; - else return 1641; - else - if (West) return 1642; - else return 1643; - else - if (Up) - if (West) return 1644; - else return 1645; - else - if (West) return 1646; - else return 1647; - else - if (North) - if (South) - if (Up) - if (West) return 1648; - else return 1649; - else - if (West) return 1650; - else return 1651; - else - if (Up) - if (West) return 1652; - else return 1653; - else - if (West) return 1654; - else return 1655; - else - if (South) - if (Up) - if (West) return 1656; - else return 1657; - else - if (West) return 1658; - else return 1659; - else - if (Up) - if (West) return 1660; - else return 1661; - else - if (West) return 1662; - else return 1663; - else if (Age == 7) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1664; - else return 1665; - else - if (West) return 1666; - else return 1667; - else - if (Up) - if (West) return 1668; - else return 1669; - else - if (West) return 1670; - else return 1671; - else - if (South) - if (Up) - if (West) return 1672; - else return 1673; - else - if (West) return 1674; - else return 1675; - else - if (Up) - if (West) return 1676; - else return 1677; - else - if (West) return 1678; - else return 1679; - else - if (North) - if (South) - if (Up) - if (West) return 1680; - else return 1681; - else - if (West) return 1682; - else return 1683; - else - if (Up) - if (West) return 1684; - else return 1685; - else - if (West) return 1686; - else return 1687; - else - if (South) - if (Up) - if (West) return 1688; - else return 1689; - else - if (West) return 1690; - else return 1691; - else - if (Up) - if (West) return 1692; - else return 1693; - else - if (West) return 1694; - else return 1695; - else if (Age == 8) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1696; - else return 1697; - else - if (West) return 1698; - else return 1699; - else - if (Up) - if (West) return 1700; - else return 1701; - else - if (West) return 1702; - else return 1703; - else - if (South) - if (Up) - if (West) return 1704; - else return 1705; - else - if (West) return 1706; - else return 1707; - else - if (Up) - if (West) return 1708; - else return 1709; - else - if (West) return 1710; - else return 1711; - else - if (North) - if (South) - if (Up) - if (West) return 1712; - else return 1713; - else - if (West) return 1714; - else return 1715; - else - if (Up) - if (West) return 1716; - else return 1717; - else - if (West) return 1718; - else return 1719; - else - if (South) - if (Up) - if (West) return 1720; - else return 1721; - else - if (West) return 1722; - else return 1723; - else - if (Up) - if (West) return 1724; - else return 1725; - else - if (West) return 1726; - else return 1727; - else if (Age == 9) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1728; - else return 1729; - else - if (West) return 1730; - else return 1731; - else - if (Up) - if (West) return 1732; - else return 1733; - else - if (West) return 1734; - else return 1735; - else - if (South) - if (Up) - if (West) return 1736; - else return 1737; - else - if (West) return 1738; - else return 1739; - else - if (Up) - if (West) return 1740; - else return 1741; - else - if (West) return 1742; - else return 1743; - else - if (North) - if (South) - if (Up) - if (West) return 1744; - else return 1745; - else - if (West) return 1746; - else return 1747; - else - if (Up) - if (West) return 1748; - else return 1749; - else - if (West) return 1750; - else return 1751; - else - if (South) - if (Up) - if (West) return 1752; - else return 1753; - else - if (West) return 1754; - else return 1755; - else - if (Up) - if (West) return 1756; - else return 1757; - else - if (West) return 1758; - else return 1759; - else if (Age == 10) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1760; - else return 1761; - else - if (West) return 1762; - else return 1763; - else - if (Up) - if (West) return 1764; - else return 1765; - else - if (West) return 1766; - else return 1767; - else - if (South) - if (Up) - if (West) return 1768; - else return 1769; - else - if (West) return 1770; - else return 1771; - else - if (Up) - if (West) return 1772; - else return 1773; - else - if (West) return 1774; - else return 1775; - else - if (North) - if (South) - if (Up) - if (West) return 1776; - else return 1777; - else - if (West) return 1778; - else return 1779; - else - if (Up) - if (West) return 1780; - else return 1781; - else - if (West) return 1782; - else return 1783; - else - if (South) - if (Up) - if (West) return 1784; - else return 1785; - else - if (West) return 1786; - else return 1787; - else - if (Up) - if (West) return 1788; - else return 1789; - else - if (West) return 1790; - else return 1791; - else if (Age == 11) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1792; - else return 1793; - else - if (West) return 1794; - else return 1795; - else - if (Up) - if (West) return 1796; - else return 1797; - else - if (West) return 1798; - else return 1799; - else - if (South) - if (Up) - if (West) return 1800; - else return 1801; - else - if (West) return 1802; - else return 1803; - else - if (Up) - if (West) return 1804; - else return 1805; - else - if (West) return 1806; - else return 1807; - else - if (North) - if (South) - if (Up) - if (West) return 1808; - else return 1809; - else - if (West) return 1810; - else return 1811; - else - if (Up) - if (West) return 1812; - else return 1813; - else - if (West) return 1814; - else return 1815; - else - if (South) - if (Up) - if (West) return 1816; - else return 1817; - else - if (West) return 1818; - else return 1819; - else - if (Up) - if (West) return 1820; - else return 1821; - else - if (West) return 1822; - else return 1823; - else if (Age == 12) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1824; - else return 1825; - else - if (West) return 1826; - else return 1827; - else - if (Up) - if (West) return 1828; - else return 1829; - else - if (West) return 1830; - else return 1831; - else - if (South) - if (Up) - if (West) return 1832; - else return 1833; - else - if (West) return 1834; - else return 1835; - else - if (Up) - if (West) return 1836; - else return 1837; - else - if (West) return 1838; - else return 1839; - else - if (North) - if (South) - if (Up) - if (West) return 1840; - else return 1841; - else - if (West) return 1842; - else return 1843; - else - if (Up) - if (West) return 1844; - else return 1845; - else - if (West) return 1846; - else return 1847; - else - if (South) - if (Up) - if (West) return 1848; - else return 1849; - else - if (West) return 1850; - else return 1851; - else - if (Up) - if (West) return 1852; - else return 1853; - else - if (West) return 1854; - else return 1855; - else if (Age == 13) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1856; - else return 1857; - else - if (West) return 1858; - else return 1859; - else - if (Up) - if (West) return 1860; - else return 1861; - else - if (West) return 1862; - else return 1863; - else - if (South) - if (Up) - if (West) return 1864; - else return 1865; - else - if (West) return 1866; - else return 1867; - else - if (Up) - if (West) return 1868; - else return 1869; - else - if (West) return 1870; - else return 1871; - else - if (North) - if (South) - if (Up) - if (West) return 1872; - else return 1873; - else - if (West) return 1874; - else return 1875; - else - if (Up) - if (West) return 1876; - else return 1877; - else - if (West) return 1878; - else return 1879; - else - if (South) - if (Up) - if (West) return 1880; - else return 1881; - else - if (West) return 1882; - else return 1883; - else - if (Up) - if (West) return 1884; - else return 1885; - else - if (West) return 1886; - else return 1887; - else if (Age == 14) - if (East) - if (North) - if (South) - if (Up) - if (West) return 1888; - else return 1889; - else - if (West) return 1890; - else return 1891; - else - if (Up) - if (West) return 1892; - else return 1893; - else - if (West) return 1894; - else return 1895; - else - if (South) - if (Up) - if (West) return 1896; - else return 1897; - else - if (West) return 1898; - else return 1899; - else - if (Up) - if (West) return 1900; - else return 1901; - else - if (West) return 1902; - else return 1903; - else - if (North) - if (South) - if (Up) - if (West) return 1904; - else return 1905; - else - if (West) return 1906; - else return 1907; - else - if (Up) - if (West) return 1908; - else return 1909; - else - if (West) return 1910; - else return 1911; - else - if (South) - if (Up) - if (West) return 1912; - else return 1913; - else - if (West) return 1914; - else return 1915; - else - if (Up) - if (West) return 1916; - else return 1917; - else - if (West) return 1918; - else return 1919; + return 8953; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8954; + else + return 8955; + else if (Powered) + return 8956; else - if (East) - if (North) - if (South) - if (Up) - if (West) return 1920; - else return 1921; - else - if (West) return 1922; - else return 1923; - else - if (Up) - if (West) return 1924; - else return 1925; - else - if (West) return 1926; - else return 1927; - else - if (South) - if (Up) - if (West) return 1928; - else return 1929; - else - if (West) return 1930; - else return 1931; - else - if (Up) - if (West) return 1932; - else return 1933; - else - if (West) return 1934; - else return 1935; - else - if (North) - if (South) - if (Up) - if (West) return 1936; - else return 1937; - else - if (West) return 1938; - else return 1939; - else - if (Up) - if (West) return 1940; - else return 1941; - else - if (West) return 1942; - else return 1943; - else - if (South) - if (Up) - if (West) return 1944; - else return 1945; - else - if (West) return 1946; - else return 1947; - else - if (Up) - if (West) return 1948; - else return 1949; - else - if (West) return 1950; - else return 1951; - } - BlockState Fire(); - unsigned char Age(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace FireCoral - { - constexpr BlockState FireCoral() - { - return 9537; - } - } - namespace FireCoralBlock - { - constexpr BlockState FireCoralBlock() - { - return 9518; - } - } - namespace FireCoralFan - { - constexpr BlockState FireCoralFan() - { - return 9557; - } - } - namespace FireCoralWallFan - { - constexpr BlockState FireCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9625; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9627; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9629; - else return 9631; - } - BlockState FireCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace FletchingTable - { - constexpr BlockState FletchingTable() - { - return 14820; - } - } - namespace FlowerPot - { - constexpr BlockState FlowerPot() - { - return 6305; - } - } - namespace FrostedIce - { - constexpr BlockState FrostedIce(const unsigned char Age) - { - if (Age == 0) return 9249; - else if (Age == 1) return 9250; - else if (Age == 2) return 9251; - else return 9252; - } - BlockState FrostedIce(); - unsigned char Age(BlockState Block); - } - namespace Furnace - { - constexpr BlockState Furnace(const eBlockFace Facing, const bool Lit) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) return 3373; - else return 3374; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) return 3375; - else return 3376; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) return 3377; - else return 3378; - else - if (Lit) return 3379; - else return 3380; - } - BlockState Furnace(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - } - namespace GildedBlackstone - { - constexpr BlockState GildedBlackstone() - { - return 16664; - } - } - namespace Glass - { - constexpr BlockState Glass() - { - return 231; - } - } - namespace GlassPane - { - constexpr BlockState GlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 4733; - else return 4734; - else - if (West) return 4737; - else return 4738; - else - if (South) - if (West) return 4741; - else return 4742; - else - if (West) return 4745; - else return 4746; + return 8957; + else if (Open) + if (Powered) + return 8958; else - if (North) - if (South) - if (West) return 4749; - else return 4750; - else - if (West) return 4753; - else return 4754; - else - if (South) - if (West) return 4757; - else return 4758; - else - if (West) return 4761; - else return 4762; - } - BlockState GlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace Glowstone - { - constexpr BlockState Glowstone() - { - return 4013; - } - } - namespace GoldBlock - { - constexpr BlockState GoldBlock() - { - return 1427; - } - } - namespace GoldOre - { - constexpr BlockState GoldOre() - { - return 69; - } - } - namespace Granite - { - constexpr BlockState Granite() - { - return 2; - } - } - namespace GraniteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState GraniteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10838; - else if (Type == Type::Bottom) return 10840; - else return 10842; - } - BlockState GraniteSlab(); - enum Type Type(BlockState Block); - } - namespace GraniteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState GraniteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10390; - else if (Shape == Shape::InnerLeft) return 10392; - else if (Shape == Shape::InnerRight) return 10394; - else if (Shape == Shape::OuterLeft) return 10396; - else return 10398; - else - if (Shape == Shape::Straight) return 10400; - else if (Shape == Shape::InnerLeft) return 10402; - else if (Shape == Shape::InnerRight) return 10404; - else if (Shape == Shape::OuterLeft) return 10406; - else return 10408; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10410; - else if (Shape == Shape::InnerLeft) return 10412; - else if (Shape == Shape::InnerRight) return 10414; - else if (Shape == Shape::OuterLeft) return 10416; - else return 10418; - else - if (Shape == Shape::Straight) return 10420; - else if (Shape == Shape::InnerLeft) return 10422; - else if (Shape == Shape::InnerRight) return 10424; - else if (Shape == Shape::OuterLeft) return 10426; - else return 10428; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10430; - else if (Shape == Shape::InnerLeft) return 10432; - else if (Shape == Shape::InnerRight) return 10434; - else if (Shape == Shape::OuterLeft) return 10436; - else return 10438; - else - if (Shape == Shape::Straight) return 10440; - else if (Shape == Shape::InnerLeft) return 10442; - else if (Shape == Shape::InnerRight) return 10444; - else if (Shape == Shape::OuterLeft) return 10446; - else return 10448; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10450; - else if (Shape == Shape::InnerLeft) return 10452; - else if (Shape == Shape::InnerRight) return 10454; - else if (Shape == Shape::OuterLeft) return 10456; - else return 10458; - else - if (Shape == Shape::Straight) return 10460; - else if (Shape == Shape::InnerLeft) return 10462; - else if (Shape == Shape::InnerRight) return 10464; - else if (Shape == Shape::OuterLeft) return 10466; - else return 10468; - } - BlockState GraniteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState GraniteWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12166; - else if (West == West::Low) return 12167; - else return 12168; - else - if (West == West::None) return 12172; - else if (West == West::Low) return 12173; - else return 12174; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12178; - else if (West == West::Low) return 12179; - else return 12180; - else - if (West == West::None) return 12184; - else if (West == West::Low) return 12185; - else return 12186; - else - if (Up) - if (West == West::None) return 12190; - else if (West == West::Low) return 12191; - else return 12192; - else - if (West == West::None) return 12196; - else if (West == West::Low) return 12197; - else return 12198; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12202; - else if (West == West::Low) return 12203; - else return 12204; - else - if (West == West::None) return 12208; - else if (West == West::Low) return 12209; - else return 12210; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12214; - else if (West == West::Low) return 12215; - else return 12216; - else - if (West == West::None) return 12220; - else if (West == West::Low) return 12221; - else return 12222; - else - if (Up) - if (West == West::None) return 12226; - else if (West == West::Low) return 12227; - else return 12228; - else - if (West == West::None) return 12232; - else if (West == West::Low) return 12233; - else return 12234; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12238; - else if (West == West::Low) return 12239; - else return 12240; - else - if (West == West::None) return 12244; - else if (West == West::Low) return 12245; - else return 12246; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12250; - else if (West == West::Low) return 12251; - else return 12252; - else - if (West == West::None) return 12256; - else if (West == West::Low) return 12257; - else return 12258; - else - if (Up) - if (West == West::None) return 12262; - else if (West == West::Low) return 12263; - else return 12264; - else - if (West == West::None) return 12268; - else if (West == West::Low) return 12269; - else return 12270; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12274; - else if (West == West::Low) return 12275; - else return 12276; - else - if (West == West::None) return 12280; - else if (West == West::Low) return 12281; - else return 12282; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12286; - else if (West == West::Low) return 12287; - else return 12288; - else - if (West == West::None) return 12292; - else if (West == West::Low) return 12293; - else return 12294; - else - if (Up) - if (West == West::None) return 12298; - else if (West == West::Low) return 12299; - else return 12300; - else - if (West == West::None) return 12304; - else if (West == West::Low) return 12305; - else return 12306; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12310; - else if (West == West::Low) return 12311; - else return 12312; - else - if (West == West::None) return 12316; - else if (West == West::Low) return 12317; - else return 12318; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12322; - else if (West == West::Low) return 12323; - else return 12324; - else - if (West == West::None) return 12328; - else if (West == West::Low) return 12329; - else return 12330; - else - if (Up) - if (West == West::None) return 12334; - else if (West == West::Low) return 12335; - else return 12336; - else - if (West == West::None) return 12340; - else if (West == West::Low) return 12341; - else return 12342; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12346; - else if (West == West::Low) return 12347; - else return 12348; - else - if (West == West::None) return 12352; - else if (West == West::Low) return 12353; - else return 12354; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12358; - else if (West == West::Low) return 12359; - else return 12360; - else - if (West == West::None) return 12364; - else if (West == West::Low) return 12365; - else return 12366; - else - if (Up) - if (West == West::None) return 12370; - else if (West == West::Low) return 12371; - else return 12372; - else - if (West == West::None) return 12376; - else if (West == West::Low) return 12377; - else return 12378; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12382; - else if (West == West::Low) return 12383; - else return 12384; - else - if (West == West::None) return 12388; - else if (West == West::Low) return 12389; - else return 12390; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12394; - else if (West == West::Low) return 12395; - else return 12396; - else - if (West == West::None) return 12400; - else if (West == West::Low) return 12401; - else return 12402; - else - if (Up) - if (West == West::None) return 12406; - else if (West == West::Low) return 12407; - else return 12408; - else - if (West == West::None) return 12412; - else if (West == West::Low) return 12413; - else return 12414; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12418; - else if (West == West::Low) return 12419; - else return 12420; - else - if (West == West::None) return 12424; - else if (West == West::Low) return 12425; - else return 12426; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12430; - else if (West == West::Low) return 12431; - else return 12432; - else - if (West == West::None) return 12436; - else if (West == West::Low) return 12437; - else return 12438; - else - if (Up) - if (West == West::None) return 12442; - else if (West == West::Low) return 12443; - else return 12444; - else - if (West == West::None) return 12448; - else if (West == West::Low) return 12449; - else return 12450; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12454; - else if (West == West::Low) return 12455; - else return 12456; - else - if (West == West::None) return 12460; - else if (West == West::Low) return 12461; - else return 12462; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12466; - else if (West == West::Low) return 12467; - else return 12468; - else - if (West == West::None) return 12472; - else if (West == West::Low) return 12473; - else return 12474; - else - if (Up) - if (West == West::None) return 12478; - else if (West == West::Low) return 12479; - else return 12480; - else - if (West == West::None) return 12484; - else if (West == West::Low) return 12485; - else return 12486; - } - BlockState GraniteWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Grass - { - constexpr BlockState Grass() - { - return 1342; - } - } - namespace GrassBlock - { - constexpr BlockState GrassBlock(const bool Snowy) - { - if (Snowy) return 8; - else return 9; - } - BlockState GrassBlock(); - bool Snowy(BlockState Block); - } - namespace GrassPath - { - constexpr BlockState GrassPath() - { - return 9223; - } - } - namespace Gravel - { - constexpr BlockState Gravel() - { - return 68; - } - } - namespace GrayBanner - { - constexpr BlockState GrayBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8009; - else if (Rotation == 1) return 8010; - else if (Rotation == 2) return 8011; - else if (Rotation == 3) return 8012; - else if (Rotation == 4) return 8013; - else if (Rotation == 5) return 8014; - else if (Rotation == 6) return 8015; - else if (Rotation == 7) return 8016; - else if (Rotation == 8) return 8017; - else if (Rotation == 9) return 8018; - else if (Rotation == 10) return 8019; - else if (Rotation == 11) return 8020; - else if (Rotation == 12) return 8021; - else if (Rotation == 13) return 8022; - else if (Rotation == 14) return 8023; - else return 8024; - } - BlockState GrayBanner(); - unsigned char Rotation(BlockState Block); - } - namespace GrayBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState GrayBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1161; - else return 1162; - else - if (Part == Part::Head) return 1163; - else return 1164; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1165; - else return 1166; - else - if (Part == Part::Head) return 1167; - else return 1168; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1169; - else return 1170; - else - if (Part == Part::Head) return 1171; - else return 1172; - else - if (Occupied) - if (Part == Part::Head) return 1173; - else return 1174; - else - if (Part == Part::Head) return 1175; - else return 1176; - } - BlockState GrayBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace GrayCarpet - { - constexpr BlockState GrayCarpet() - { - return 7873; - } - } - namespace GrayConcrete - { - constexpr BlockState GrayConcrete() - { - return 9445; - } - } - namespace GrayConcretePowder - { - constexpr BlockState GrayConcretePowder() - { - return 9461; - } - } - namespace GrayGlazedTerracotta - { - constexpr BlockState GrayGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9402; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9403; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9404; - else return 9405; - } - BlockState GrayGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace GrayShulkerBox - { - constexpr BlockState GrayShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9320; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9321; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9322; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9323; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9324; - else return 9325; - } - BlockState GrayShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace GrayStainedGlass - { - constexpr BlockState GrayStainedGlass() - { - return 4102; - } - } - namespace GrayStainedGlassPane - { - constexpr BlockState GrayStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7089; - else return 7090; - else - if (West) return 7093; - else return 7094; - else - if (South) - if (West) return 7097; - else return 7098; - else - if (West) return 7101; - else return 7102; + return 8959; + else if (Powered) + return 8960; + else + return 8961; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8962; + else + return 8963; + else if (Powered) + return 8964; + else + return 8965; + else if (Open) + if (Powered) + return 8966; + else + return 8967; + else if (Powered) + return 8968; else - if (North) - if (South) - if (West) return 7105; - else return 7106; - else - if (West) return 7109; - else return 7110; - else - if (South) - if (West) return 7113; - else return 7114; - else - if (West) return 7117; - else return 7118; - } - BlockState GrayStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace GrayTerracotta - { - constexpr BlockState GrayTerracotta() - { - return 6854; - } - } - namespace GrayWallBanner - { - constexpr BlockState GrayWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8181; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8182; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8183; - else return 8184; - } - BlockState GrayWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace GrayWool - { - constexpr BlockState GrayWool() - { - return 1391; - } - } - namespace GreenBanner - { - constexpr BlockState GreenBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8105; - else if (Rotation == 1) return 8106; - else if (Rotation == 2) return 8107; - else if (Rotation == 3) return 8108; - else if (Rotation == 4) return 8109; - else if (Rotation == 5) return 8110; - else if (Rotation == 6) return 8111; - else if (Rotation == 7) return 8112; - else if (Rotation == 8) return 8113; - else if (Rotation == 9) return 8114; - else if (Rotation == 10) return 8115; - else if (Rotation == 11) return 8116; - else if (Rotation == 12) return 8117; - else if (Rotation == 13) return 8118; - else if (Rotation == 14) return 8119; - else return 8120; - } - BlockState GreenBanner(); - unsigned char Rotation(BlockState Block); - } - namespace GreenBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState GreenBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1257; - else return 1258; - else - if (Part == Part::Head) return 1259; - else return 1260; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1261; - else return 1262; - else - if (Part == Part::Head) return 1263; - else return 1264; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1265; - else return 1266; - else - if (Part == Part::Head) return 1267; - else return 1268; - else - if (Occupied) - if (Part == Part::Head) return 1269; - else return 1270; - else - if (Part == Part::Head) return 1271; - else return 1272; - } - BlockState GreenBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace GreenCarpet - { - constexpr BlockState GreenCarpet() - { - return 7879; - } - } - namespace GreenConcrete - { - constexpr BlockState GreenConcrete() - { - return 9451; - } - } - namespace GreenConcretePowder - { - constexpr BlockState GreenConcretePowder() - { - return 9467; - } - } - namespace GreenGlazedTerracotta - { - constexpr BlockState GreenGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9426; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9427; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9428; - else return 9429; - } - BlockState GreenGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace GreenShulkerBox - { - constexpr BlockState GreenShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9356; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9357; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9358; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9359; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9360; - else return 9361; - } - BlockState GreenShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace GreenStainedGlass - { - constexpr BlockState GreenStainedGlass() - { - return 4108; - } - } - namespace GreenStainedGlassPane - { - constexpr BlockState GreenStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7281; - else return 7282; - else - if (West) return 7285; - else return 7286; - else - if (South) - if (West) return 7289; - else return 7290; - else - if (West) return 7293; - else return 7294; + return 8969; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8970; + else + return 8971; + else if (Powered) + return 8972; else - if (North) - if (South) - if (West) return 7297; - else return 7298; - else - if (West) return 7301; - else return 7302; - else - if (South) - if (West) return 7305; - else return 7306; - else - if (West) return 7309; - else return 7310; - } - BlockState GreenStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace GreenTerracotta - { - constexpr BlockState GreenTerracotta() - { - return 6860; - } - } - namespace GreenWallBanner - { - constexpr BlockState GreenWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8205; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8206; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8207; - else return 8208; - } - BlockState GreenWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace GreenWool - { - constexpr BlockState GreenWool() - { - return 1397; - } - } - namespace Grindstone - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState Grindstone(const enum Face Face, const eBlockFace Facing) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14821; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14822; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 14823; - else return 14824; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14825; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14826; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 14827; - else return 14828; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14829; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14830; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 14831; - else return 14832; - } - BlockState Grindstone(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace HayBale - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState HayBale(const enum Axis Axis) - { - if (Axis == Axis::X) return 7863; - else if (Axis == Axis::Y) return 7864; - else return 7865; - } - BlockState HayBale(); - enum Axis Axis(BlockState Block); - } - namespace HeavyWeightedPressurePlate - { - constexpr BlockState HeavyWeightedPressurePlate(const unsigned char Power) - { - if (Power == 0) return 6662; - else if (Power == 1) return 6663; - else if (Power == 2) return 6664; - else if (Power == 3) return 6665; - else if (Power == 4) return 6666; - else if (Power == 5) return 6667; - else if (Power == 6) return 6668; - else if (Power == 7) return 6669; - else if (Power == 8) return 6670; - else if (Power == 9) return 6671; - else if (Power == 10) return 6672; - else if (Power == 11) return 6673; - else if (Power == 12) return 6674; - else if (Power == 13) return 6675; - else if (Power == 14) return 6676; - else return 6677; - } - BlockState HeavyWeightedPressurePlate(); - unsigned char Power(BlockState Block); - } - namespace HoneyBlock - { - constexpr BlockState HoneyBlock() - { - return 15824; - } - } - namespace HoneycombBlock - { - constexpr BlockState HoneycombBlock() - { - return 15825; - } - } - namespace Hopper - { - constexpr BlockState Hopper(const bool Enabled, const eBlockFace Facing) - { - if (Enabled) - if (Facing == eBlockFace::BLOCK_FACE_YM) return 6728; - else if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6729; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6730; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6731; - else return 6732; - else - if (Facing == eBlockFace::BLOCK_FACE_YM) return 6733; - else if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6734; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6735; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6736; - else return 6737; - } - BlockState Hopper(); - bool Enabled(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace HornCoral - { - constexpr BlockState HornCoral() - { - return 9539; - } - } - namespace HornCoralBlock - { - constexpr BlockState HornCoralBlock() - { - return 9519; - } - } - namespace HornCoralFan - { - constexpr BlockState HornCoralFan() - { - return 9559; - } - } - namespace HornCoralWallFan - { - constexpr BlockState HornCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9633; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9635; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9637; - else return 9639; - } - BlockState HornCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace Ice - { - constexpr BlockState Ice() - { - return 3929; - } - } - namespace InfestedChiseledStoneBricks - { - constexpr BlockState InfestedChiseledStoneBricks() - { - return 4504; - } - } - namespace InfestedCobblestone - { - constexpr BlockState InfestedCobblestone() - { - return 4500; - } - } - namespace InfestedCrackedStoneBricks - { - constexpr BlockState InfestedCrackedStoneBricks() - { - return 4503; - } - } - namespace InfestedMossyStoneBricks - { - constexpr BlockState InfestedMossyStoneBricks() - { - return 4502; - } - } - namespace InfestedStone - { - constexpr BlockState InfestedStone() - { - return 4499; - } - } - namespace InfestedStoneBricks - { - constexpr BlockState InfestedStoneBricks() - { - return 4501; - } - } - namespace IronBars - { - constexpr BlockState IronBars(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 4699; - else return 4700; - else - if (West) return 4703; - else return 4704; - else - if (South) - if (West) return 4707; - else return 4708; - else - if (West) return 4711; - else return 4712; + return 8973; + else if (Open) + if (Powered) + return 8974; else - if (North) - if (South) - if (West) return 4715; - else return 4716; - else - if (West) return 4719; - else return 4720; - else - if (South) - if (West) return 4723; - else return 4724; - else - if (West) return 4727; - else return 4728; - } - BlockState IronBars(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace IronBlock - { - constexpr BlockState IronBlock() - { - return 1428; - } - } - namespace IronDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState IronDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3809; - else return 3810; - else - if (Powered) return 3811; - else return 3812; - else - if (Open) - if (Powered) return 3813; - else return 3814; - else - if (Powered) return 3815; - else return 3816; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3817; - else return 3818; - else - if (Powered) return 3819; - else return 3820; - else - if (Open) - if (Powered) return 3821; - else return 3822; - else - if (Powered) return 3823; - else return 3824; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3825; - else return 3826; - else - if (Powered) return 3827; - else return 3828; - else - if (Open) - if (Powered) return 3829; - else return 3830; - else - if (Powered) return 3831; - else return 3832; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3833; - else return 3834; - else - if (Powered) return 3835; - else return 3836; - else - if (Open) - if (Powered) return 3837; - else return 3838; - else - if (Powered) return 3839; - else return 3840; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3841; - else return 3842; - else - if (Powered) return 3843; - else return 3844; - else - if (Open) - if (Powered) return 3845; - else return 3846; - else - if (Powered) return 3847; - else return 3848; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3849; - else return 3850; - else - if (Powered) return 3851; - else return 3852; - else - if (Open) - if (Powered) return 3853; - else return 3854; - else - if (Powered) return 3855; - else return 3856; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3857; - else return 3858; - else - if (Powered) return 3859; - else return 3860; - else - if (Open) - if (Powered) return 3861; - else return 3862; - else - if (Powered) return 3863; - else return 3864; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3865; - else return 3866; - else - if (Powered) return 3867; - else return 3868; - else - if (Open) - if (Powered) return 3869; - else return 3870; - else - if (Powered) return 3871; - else return 3872; - } - BlockState IronDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace IronOre - { - constexpr BlockState IronOre() - { - return 70; - } - } - namespace IronTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState IronTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 7538; - else return 7540; - else - if (Powered) return 7542; - else return 7544; - else - if (Open) - if (Powered) return 7546; - else return 7548; - else - if (Powered) return 7550; - else return 7552; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 7554; - else return 7556; - else - if (Powered) return 7558; - else return 7560; - else - if (Open) - if (Powered) return 7562; - else return 7564; - else - if (Powered) return 7566; - else return 7568; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 7570; - else return 7572; - else - if (Powered) return 7574; - else return 7576; - else - if (Open) - if (Powered) return 7578; - else return 7580; - else - if (Powered) return 7582; - else return 7584; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 7586; - else return 7588; - else - if (Powered) return 7590; - else return 7592; - else - if (Open) - if (Powered) return 7594; - else return 7596; - else - if (Powered) return 7598; - else return 7600; - } - BlockState IronTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace JackOLantern - { - constexpr BlockState JackOLantern(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4020; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4021; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 4022; - else return 4023; - } - BlockState JackOLantern(); - eBlockFace Facing(BlockState Block); - } - namespace Jigsaw - { - enum class Orientation - { - DownEast, - DownNorth, - DownSouth, - DownWest, - UpEast, - UpNorth, - UpSouth, - UpWest, - WestUp, - EastUp, - NorthUp, - SouthUp - }; - constexpr BlockState Jigsaw(const enum Orientation Orientation) - { - if (Orientation == Orientation::DownEast) return 15739; - else if (Orientation == Orientation::DownNorth) return 15740; - else if (Orientation == Orientation::DownSouth) return 15741; - else if (Orientation == Orientation::DownWest) return 15742; - else if (Orientation == Orientation::UpEast) return 15743; - else if (Orientation == Orientation::UpNorth) return 15744; - else if (Orientation == Orientation::UpSouth) return 15745; - else if (Orientation == Orientation::UpWest) return 15746; - else if (Orientation == Orientation::WestUp) return 15747; - else if (Orientation == Orientation::EastUp) return 15748; - else if (Orientation == Orientation::NorthUp) return 15749; - else return 15750; - } - BlockState Jigsaw(); - enum Orientation Orientation(BlockState Block); - } - namespace Jukebox - { - constexpr BlockState Jukebox(const bool HasRecord) - { - if (HasRecord) return 3964; - else return 3965; - } - BlockState Jukebox(); - bool HasRecord(BlockState Block); - } - namespace JungleButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState JungleButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6418; - else return 6419; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6420; - else return 6421; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6422; - else return 6423; - else - if (Powered) return 6424; - else return 6425; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6426; - else return 6427; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6428; - else return 6429; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6430; - else return 6431; - else - if (Powered) return 6432; - else return 6433; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6434; - else return 6435; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6436; - else return 6437; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6438; - else return 6439; - else - if (Powered) return 6440; - else return 6441; - } - BlockState JungleButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace JungleDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState JungleDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8866; - else return 8867; - else - if (Powered) return 8868; - else return 8869; - else - if (Open) - if (Powered) return 8870; - else return 8871; - else - if (Powered) return 8872; - else return 8873; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8874; - else return 8875; - else - if (Powered) return 8876; - else return 8877; - else - if (Open) - if (Powered) return 8878; - else return 8879; - else - if (Powered) return 8880; - else return 8881; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8882; - else return 8883; - else - if (Powered) return 8884; - else return 8885; - else - if (Open) - if (Powered) return 8886; - else return 8887; - else - if (Powered) return 8888; - else return 8889; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8890; - else return 8891; - else - if (Powered) return 8892; - else return 8893; - else - if (Open) - if (Powered) return 8894; - else return 8895; - else - if (Powered) return 8896; - else return 8897; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8898; - else return 8899; - else - if (Powered) return 8900; - else return 8901; - else - if (Open) - if (Powered) return 8902; - else return 8903; - else - if (Powered) return 8904; - else return 8905; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8906; - else return 8907; - else - if (Powered) return 8908; - else return 8909; - else - if (Open) - if (Powered) return 8910; - else return 8911; - else - if (Powered) return 8912; - else return 8913; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8914; - else return 8915; - else - if (Powered) return 8916; - else return 8917; - else - if (Open) - if (Powered) return 8918; - else return 8919; - else - if (Powered) return 8920; - else return 8921; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8922; - else return 8923; - else - if (Powered) return 8924; - else return 8925; - else - if (Open) - if (Powered) return 8926; - else return 8927; - else - if (Powered) return 8928; - else return 8929; - } - BlockState JungleDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace JungleFence - { - constexpr BlockState JungleFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 8644; - else return 8645; - else - if (West) return 8648; - else return 8649; - else - if (South) - if (West) return 8652; - else return 8653; - else - if (West) return 8656; - else return 8657; + return 8975; + else if (Powered) + return 8976; + else + return 8977; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8978; + else + return 8979; + else if (Powered) + return 8980; else - if (North) - if (South) - if (West) return 8660; - else return 8661; - else - if (West) return 8664; - else return 8665; - else - if (South) - if (West) return 8668; - else return 8669; - else - if (West) return 8672; - else return 8673; - } - BlockState JungleFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace JungleFenceGate - { - constexpr BlockState JungleFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 8482; - else return 8483; - else - if (Powered) return 8484; - else return 8485; - else - if (Open) - if (Powered) return 8486; - else return 8487; - else - if (Powered) return 8488; - else return 8489; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 8490; - else return 8491; - else - if (Powered) return 8492; - else return 8493; - else - if (Open) - if (Powered) return 8494; - else return 8495; - else - if (Powered) return 8496; - else return 8497; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 8498; - else return 8499; - else - if (Powered) return 8500; - else return 8501; - else - if (Open) - if (Powered) return 8502; - else return 8503; - else - if (Powered) return 8504; - else return 8505; - else - if (InWall) - if (Open) - if (Powered) return 8506; - else return 8507; - else - if (Powered) return 8508; - else return 8509; - else - if (Open) - if (Powered) return 8510; - else return 8511; - else - if (Powered) return 8512; - else return 8513; - } - BlockState JungleFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace JungleLeaves - { - constexpr BlockState JungleLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 187; - else return 188; - else if (Distance == 2) - if (Persistent) return 189; - else return 190; - else if (Distance == 3) - if (Persistent) return 191; - else return 192; - else if (Distance == 4) - if (Persistent) return 193; - else return 194; - else if (Distance == 5) - if (Persistent) return 195; - else return 196; - else if (Distance == 6) - if (Persistent) return 197; - else return 198; - else - if (Persistent) return 199; - else return 200; - } - BlockState JungleLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace JungleLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState JungleLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 82; - else if (Axis == Axis::Y) return 83; - else return 84; - } - BlockState JungleLog(); - enum Axis Axis(BlockState Block); - } - namespace JunglePlanks - { - constexpr BlockState JunglePlanks() - { - return 18; - } - } - namespace JunglePressurePlate - { - constexpr BlockState JunglePressurePlate(const bool Powered) - { - if (Powered) return 3879; - else return 3880; - } - BlockState JunglePressurePlate(); - bool Powered(BlockState Block); - } - namespace JungleSapling - { - constexpr BlockState JungleSapling(const unsigned char Stage) - { - if (Stage == 0) return 27; - else return 28; - } - BlockState JungleSapling(); - unsigned char Stage(BlockState Block); - } - namespace JungleSign - { - constexpr BlockState JungleSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3510; - else if (Rotation == 1) return 3512; - else if (Rotation == 2) return 3514; - else if (Rotation == 3) return 3516; - else if (Rotation == 4) return 3518; - else if (Rotation == 5) return 3520; - else if (Rotation == 6) return 3522; - else if (Rotation == 7) return 3524; - else if (Rotation == 8) return 3526; - else if (Rotation == 9) return 3528; - else if (Rotation == 10) return 3530; - else if (Rotation == 11) return 3532; - else if (Rotation == 12) return 3534; - else if (Rotation == 13) return 3536; - else if (Rotation == 14) return 3538; - else return 3540; - } - BlockState JungleSign(); - unsigned char Rotation(BlockState Block); - } - namespace JungleSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState JungleSlab(const enum Type Type) - { - if (Type == Type::Top) return 8319; - else if (Type == Type::Bottom) return 8321; - else return 8323; - } - BlockState JungleSlab(); - enum Type Type(BlockState Block); - } - namespace JungleStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState JungleStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5565; - else if (Shape == Shape::InnerLeft) return 5567; - else if (Shape == Shape::InnerRight) return 5569; - else if (Shape == Shape::OuterLeft) return 5571; - else return 5573; - else - if (Shape == Shape::Straight) return 5575; - else if (Shape == Shape::InnerLeft) return 5577; - else if (Shape == Shape::InnerRight) return 5579; - else if (Shape == Shape::OuterLeft) return 5581; - else return 5583; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5585; - else if (Shape == Shape::InnerLeft) return 5587; - else if (Shape == Shape::InnerRight) return 5589; - else if (Shape == Shape::OuterLeft) return 5591; - else return 5593; - else - if (Shape == Shape::Straight) return 5595; - else if (Shape == Shape::InnerLeft) return 5597; - else if (Shape == Shape::InnerRight) return 5599; - else if (Shape == Shape::OuterLeft) return 5601; - else return 5603; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5605; - else if (Shape == Shape::InnerLeft) return 5607; - else if (Shape == Shape::InnerRight) return 5609; - else if (Shape == Shape::OuterLeft) return 5611; - else return 5613; - else - if (Shape == Shape::Straight) return 5615; - else if (Shape == Shape::InnerLeft) return 5617; - else if (Shape == Shape::InnerRight) return 5619; - else if (Shape == Shape::OuterLeft) return 5621; - else return 5623; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5625; - else if (Shape == Shape::InnerLeft) return 5627; - else if (Shape == Shape::InnerRight) return 5629; - else if (Shape == Shape::OuterLeft) return 5631; - else return 5633; - else - if (Shape == Shape::Straight) return 5635; - else if (Shape == Shape::InnerLeft) return 5637; - else if (Shape == Shape::InnerRight) return 5639; - else if (Shape == Shape::OuterLeft) return 5641; - else return 5643; - } - BlockState JungleStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace JungleTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState JungleTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4304; - else return 4306; - else - if (Powered) return 4308; - else return 4310; - else - if (Open) - if (Powered) return 4312; - else return 4314; - else - if (Powered) return 4316; - else return 4318; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4320; - else return 4322; - else - if (Powered) return 4324; - else return 4326; - else - if (Open) - if (Powered) return 4328; - else return 4330; - else - if (Powered) return 4332; - else return 4334; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4336; - else return 4338; - else - if (Powered) return 4340; - else return 4342; - else - if (Open) - if (Powered) return 4344; - else return 4346; - else - if (Powered) return 4348; - else return 4350; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4352; - else return 4354; - else - if (Powered) return 4356; - else return 4358; - else - if (Open) - if (Powered) return 4360; - else return 4362; - else - if (Powered) return 4364; - else return 4366; - } - BlockState JungleTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace JungleWallSign - { - constexpr BlockState JungleWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3768; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3770; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3772; - else return 3774; - } - BlockState JungleWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace JungleWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState JungleWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 118; - else if (Axis == Axis::Y) return 119; - else return 120; - } - BlockState JungleWood(); - enum Axis Axis(BlockState Block); - } - namespace Kelp - { - constexpr BlockState Kelp(const unsigned char Age) - { - if (Age == 0) return 9470; - else if (Age == 1) return 9471; - else if (Age == 2) return 9472; - else if (Age == 3) return 9473; - else if (Age == 4) return 9474; - else if (Age == 5) return 9475; - else if (Age == 6) return 9476; - else if (Age == 7) return 9477; - else if (Age == 8) return 9478; - else if (Age == 9) return 9479; - else if (Age == 10) return 9480; - else if (Age == 11) return 9481; - else if (Age == 12) return 9482; - else if (Age == 13) return 9483; - else if (Age == 14) return 9484; - else if (Age == 15) return 9485; - else if (Age == 16) return 9486; - else if (Age == 17) return 9487; - else if (Age == 18) return 9488; - else if (Age == 19) return 9489; - else if (Age == 20) return 9490; - else if (Age == 21) return 9491; - else if (Age == 22) return 9492; - else if (Age == 23) return 9493; - else if (Age == 24) return 9494; - else return 9495; - } - BlockState Kelp(); - unsigned char Age(BlockState Block); - } - namespace KelpPlant - { - constexpr BlockState KelpPlant() - { - return 9496; - } - } - namespace Ladder - { - constexpr BlockState Ladder(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3638; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3640; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3642; - else return 3644; - } - BlockState Ladder(); - eBlockFace Facing(BlockState Block); - } - namespace Lantern - { - constexpr BlockState Lantern(const bool Hanging) - { - if (Hanging) return 14886; - else return 14887; - } - BlockState Lantern(); - bool Hanging(BlockState Block); - } - namespace LapisBlock - { - constexpr BlockState LapisBlock() - { - return 233; - } - } - namespace LapisOre - { - constexpr BlockState LapisOre() - { - return 232; - } - } - namespace LargeFern - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState LargeFern(const enum Half Half) - { - if (Half == Half::Upper) return 7895; - else return 7896; - } - BlockState LargeFern(); - enum Half Half(BlockState Block); - } - namespace Lava - { - constexpr BlockState Lava(const unsigned char Level) - { - if (Level == 0) return 50; - else if (Level == 1) return 51; - else if (Level == 2) return 52; - else if (Level == 3) return 53; - else if (Level == 4) return 54; - else if (Level == 5) return 55; - else if (Level == 6) return 56; - else if (Level == 7) return 57; - else if (Level == 8) return 58; - else if (Level == 9) return 59; - else if (Level == 10) return 60; - else if (Level == 11) return 61; - else if (Level == 12) return 62; - else if (Level == 13) return 63; - else if (Level == 14) return 64; - else return 65; - } - BlockState Lava(); - unsigned char Level(BlockState Block); - } - namespace Lectern - { - constexpr BlockState Lectern(const eBlockFace Facing, const bool HasBook, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (HasBook) - if (Powered) return 14833; - else return 14834; - else - if (Powered) return 14835; - else return 14836; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (HasBook) - if (Powered) return 14837; - else return 14838; - else - if (Powered) return 14839; - else return 14840; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (HasBook) - if (Powered) return 14841; - else return 14842; - else - if (Powered) return 14843; - else return 14844; - else - if (HasBook) - if (Powered) return 14845; - else return 14846; - else - if (Powered) return 14847; - else return 14848; - } - BlockState Lectern(); - eBlockFace Facing(BlockState Block); - bool HasBook(BlockState Block); - bool Powered(BlockState Block); - } - namespace Lever - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState Lever(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3783; - else return 3784; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3785; - else return 3786; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3787; - else return 3788; - else - if (Powered) return 3789; - else return 3790; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3791; - else return 3792; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3793; - else return 3794; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3795; - else return 3796; - else - if (Powered) return 3797; - else return 3798; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3799; - else return 3800; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3801; - else return 3802; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3803; - else return 3804; - else - if (Powered) return 3805; - else return 3806; - } - BlockState Lever(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace LightBlueBanner - { - constexpr BlockState LightBlueBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7945; - else if (Rotation == 1) return 7946; - else if (Rotation == 2) return 7947; - else if (Rotation == 3) return 7948; - else if (Rotation == 4) return 7949; - else if (Rotation == 5) return 7950; - else if (Rotation == 6) return 7951; - else if (Rotation == 7) return 7952; - else if (Rotation == 8) return 7953; - else if (Rotation == 9) return 7954; - else if (Rotation == 10) return 7955; - else if (Rotation == 11) return 7956; - else if (Rotation == 12) return 7957; - else if (Rotation == 13) return 7958; - else if (Rotation == 14) return 7959; - else return 7960; - } - BlockState LightBlueBanner(); - unsigned char Rotation(BlockState Block); - } - namespace LightBlueBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState LightBlueBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1097; - else return 1098; - else - if (Part == Part::Head) return 1099; - else return 1100; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1101; - else return 1102; - else - if (Part == Part::Head) return 1103; - else return 1104; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1105; - else return 1106; - else - if (Part == Part::Head) return 1107; - else return 1108; - else - if (Occupied) - if (Part == Part::Head) return 1109; - else return 1110; - else - if (Part == Part::Head) return 1111; - else return 1112; - } - BlockState LightBlueBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace LightBlueCarpet - { - constexpr BlockState LightBlueCarpet() - { - return 7869; - } - } - namespace LightBlueConcrete - { - constexpr BlockState LightBlueConcrete() - { - return 9441; - } - } - namespace LightBlueConcretePowder - { - constexpr BlockState LightBlueConcretePowder() - { - return 9457; - } - } - namespace LightBlueGlazedTerracotta - { - constexpr BlockState LightBlueGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9386; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9387; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9388; - else return 9389; - } - BlockState LightBlueGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace LightBlueShulkerBox - { - constexpr BlockState LightBlueShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9296; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9297; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9298; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9299; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9300; - else return 9301; - } - BlockState LightBlueShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace LightBlueStainedGlass - { - constexpr BlockState LightBlueStainedGlass() - { - return 4098; - } - } - namespace LightBlueStainedGlassPane - { - constexpr BlockState LightBlueStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 6961; - else return 6962; - else - if (West) return 6965; - else return 6966; - else - if (South) - if (West) return 6969; - else return 6970; - else - if (West) return 6973; - else return 6974; + return 8981; + else if (Open) + if (Powered) + return 8982; else - if (North) - if (South) - if (West) return 6977; - else return 6978; - else - if (West) return 6981; - else return 6982; - else - if (South) - if (West) return 6985; - else return 6986; - else - if (West) return 6989; - else return 6990; - } - BlockState LightBlueStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace LightBlueTerracotta - { - constexpr BlockState LightBlueTerracotta() - { - return 6850; - } - } - namespace LightBlueWallBanner - { - constexpr BlockState LightBlueWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8165; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8166; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8167; - else return 8168; - } - BlockState LightBlueWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace LightBlueWool - { - constexpr BlockState LightBlueWool() - { - return 1387; - } - } - namespace LightGrayBanner - { - constexpr BlockState LightGrayBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8025; - else if (Rotation == 1) return 8026; - else if (Rotation == 2) return 8027; - else if (Rotation == 3) return 8028; - else if (Rotation == 4) return 8029; - else if (Rotation == 5) return 8030; - else if (Rotation == 6) return 8031; - else if (Rotation == 7) return 8032; - else if (Rotation == 8) return 8033; - else if (Rotation == 9) return 8034; - else if (Rotation == 10) return 8035; - else if (Rotation == 11) return 8036; - else if (Rotation == 12) return 8037; - else if (Rotation == 13) return 8038; - else if (Rotation == 14) return 8039; - else return 8040; - } - BlockState LightGrayBanner(); - unsigned char Rotation(BlockState Block); - } - namespace LightGrayBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState LightGrayBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1177; - else return 1178; - else - if (Part == Part::Head) return 1179; - else return 1180; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1181; - else return 1182; - else - if (Part == Part::Head) return 1183; - else return 1184; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1185; - else return 1186; - else - if (Part == Part::Head) return 1187; - else return 1188; - else - if (Occupied) - if (Part == Part::Head) return 1189; - else return 1190; - else - if (Part == Part::Head) return 1191; - else return 1192; - } - BlockState LightGrayBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace LightGrayCarpet - { - constexpr BlockState LightGrayCarpet() - { - return 7874; - } - } - namespace LightGrayConcrete - { - constexpr BlockState LightGrayConcrete() - { - return 9446; - } - } - namespace LightGrayConcretePowder - { - constexpr BlockState LightGrayConcretePowder() - { - return 9462; - } - } - namespace LightGrayGlazedTerracotta - { - constexpr BlockState LightGrayGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9406; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9407; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9408; - else return 9409; - } - BlockState LightGrayGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace LightGrayShulkerBox - { - constexpr BlockState LightGrayShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9326; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9327; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9328; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9329; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9330; - else return 9331; - } - BlockState LightGrayShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace LightGrayStainedGlass - { - constexpr BlockState LightGrayStainedGlass() - { - return 4103; - } - } - namespace LightGrayStainedGlassPane - { - constexpr BlockState LightGrayStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7121; - else return 7122; - else - if (West) return 7125; - else return 7126; - else - if (South) - if (West) return 7129; - else return 7130; - else - if (West) return 7133; - else return 7134; + return 8983; + else if (Powered) + return 8984; + else + return 8985; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8986; else - if (North) - if (South) - if (West) return 7137; - else return 7138; - else - if (West) return 7141; - else return 7142; - else - if (South) - if (West) return 7145; - else return 7146; - else - if (West) return 7149; - else return 7150; - } - BlockState LightGrayStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace LightGrayTerracotta - { - constexpr BlockState LightGrayTerracotta() - { - return 6855; - } - } - namespace LightGrayWallBanner - { - constexpr BlockState LightGrayWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8185; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8186; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8187; - else return 8188; - } - BlockState LightGrayWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace LightGrayWool - { - constexpr BlockState LightGrayWool() - { - return 1392; - } - } - namespace LightWeightedPressurePlate - { - constexpr BlockState LightWeightedPressurePlate(const unsigned char Power) - { - if (Power == 0) return 6646; - else if (Power == 1) return 6647; - else if (Power == 2) return 6648; - else if (Power == 3) return 6649; - else if (Power == 4) return 6650; - else if (Power == 5) return 6651; - else if (Power == 6) return 6652; - else if (Power == 7) return 6653; - else if (Power == 8) return 6654; - else if (Power == 9) return 6655; - else if (Power == 10) return 6656; - else if (Power == 11) return 6657; - else if (Power == 12) return 6658; - else if (Power == 13) return 6659; - else if (Power == 14) return 6660; - else return 6661; - } - BlockState LightWeightedPressurePlate(); - unsigned char Power(BlockState Block); - } - namespace Lilac - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState Lilac(const enum Half Half) - { - if (Half == Half::Upper) return 7887; - else return 7888; - } - BlockState Lilac(); - enum Half Half(BlockState Block); - } - namespace LilyOfTheValley - { - constexpr BlockState LilyOfTheValley() - { - return 1424; - } - } - namespace LilyPad - { - constexpr BlockState LilyPad() - { - return 5014; - } - } - namespace LimeBanner - { - constexpr BlockState LimeBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7977; - else if (Rotation == 1) return 7978; - else if (Rotation == 2) return 7979; - else if (Rotation == 3) return 7980; - else if (Rotation == 4) return 7981; - else if (Rotation == 5) return 7982; - else if (Rotation == 6) return 7983; - else if (Rotation == 7) return 7984; - else if (Rotation == 8) return 7985; - else if (Rotation == 9) return 7986; - else if (Rotation == 10) return 7987; - else if (Rotation == 11) return 7988; - else if (Rotation == 12) return 7989; - else if (Rotation == 13) return 7990; - else if (Rotation == 14) return 7991; - else return 7992; - } - BlockState LimeBanner(); - unsigned char Rotation(BlockState Block); - } - namespace LimeBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState LimeBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1129; - else return 1130; - else - if (Part == Part::Head) return 1131; - else return 1132; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1133; - else return 1134; - else - if (Part == Part::Head) return 1135; - else return 1136; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1137; - else return 1138; - else - if (Part == Part::Head) return 1139; - else return 1140; - else - if (Occupied) - if (Part == Part::Head) return 1141; - else return 1142; - else - if (Part == Part::Head) return 1143; - else return 1144; - } - BlockState LimeBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace LimeCarpet - { - constexpr BlockState LimeCarpet() - { - return 7871; - } - } - namespace LimeConcrete - { - constexpr BlockState LimeConcrete() - { - return 9443; - } - } - namespace LimeConcretePowder - { - constexpr BlockState LimeConcretePowder() - { - return 9459; - } - } - namespace LimeGlazedTerracotta - { - constexpr BlockState LimeGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9394; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9395; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9396; - else return 9397; - } - BlockState LimeGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace LimeShulkerBox - { - constexpr BlockState LimeShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9308; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9309; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9310; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9311; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9312; - else return 9313; - } - BlockState LimeShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace LimeStainedGlass - { - constexpr BlockState LimeStainedGlass() - { - return 4100; - } - } - namespace LimeStainedGlassPane - { - constexpr BlockState LimeStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7025; - else return 7026; - else - if (West) return 7029; - else return 7030; - else - if (South) - if (West) return 7033; - else return 7034; - else - if (West) return 7037; - else return 7038; + return 8987; + else if (Powered) + return 8988; + else + return 8989; + else if (Open) + if (Powered) + return 8990; + else + return 8991; + else if (Powered) + return 8992; + else + return 8993; +} +BlockState AcaciaDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace AcaciaDoor +namespace AcaciaFence +{ +constexpr BlockState AcaciaFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 8676; + else + return 8677; + else if (West) + return 8680; else - if (North) - if (South) - if (West) return 7041; - else return 7042; - else - if (West) return 7045; - else return 7046; - else - if (South) - if (West) return 7049; - else return 7050; - else - if (West) return 7053; - else return 7054; - } - BlockState LimeStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace LimeTerracotta - { - constexpr BlockState LimeTerracotta() - { - return 6852; - } - } - namespace LimeWallBanner - { - constexpr BlockState LimeWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8173; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8174; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8175; - else return 8176; - } - BlockState LimeWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace LimeWool - { - constexpr BlockState LimeWool() - { - return 1389; - } - } - namespace Lodestone - { - constexpr BlockState Lodestone() - { - return 15838; - } - } - namespace Loom - { - constexpr BlockState Loom(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14787; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14788; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 14789; - else return 14790; - } - BlockState Loom(); - eBlockFace Facing(BlockState Block); - } - namespace MagentaBanner - { - constexpr BlockState MagentaBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7929; - else if (Rotation == 1) return 7930; - else if (Rotation == 2) return 7931; - else if (Rotation == 3) return 7932; - else if (Rotation == 4) return 7933; - else if (Rotation == 5) return 7934; - else if (Rotation == 6) return 7935; - else if (Rotation == 7) return 7936; - else if (Rotation == 8) return 7937; - else if (Rotation == 9) return 7938; - else if (Rotation == 10) return 7939; - else if (Rotation == 11) return 7940; - else if (Rotation == 12) return 7941; - else if (Rotation == 13) return 7942; - else if (Rotation == 14) return 7943; - else return 7944; - } - BlockState MagentaBanner(); - unsigned char Rotation(BlockState Block); - } - namespace MagentaBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState MagentaBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1081; - else return 1082; - else - if (Part == Part::Head) return 1083; - else return 1084; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1085; - else return 1086; - else - if (Part == Part::Head) return 1087; - else return 1088; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1089; - else return 1090; - else - if (Part == Part::Head) return 1091; - else return 1092; - else - if (Occupied) - if (Part == Part::Head) return 1093; - else return 1094; - else - if (Part == Part::Head) return 1095; - else return 1096; - } - BlockState MagentaBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace MagentaCarpet - { - constexpr BlockState MagentaCarpet() - { - return 7868; - } - } - namespace MagentaConcrete - { - constexpr BlockState MagentaConcrete() - { - return 9440; - } - } - namespace MagentaConcretePowder - { - constexpr BlockState MagentaConcretePowder() - { - return 9456; - } - } - namespace MagentaGlazedTerracotta - { - constexpr BlockState MagentaGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9382; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9383; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9384; - else return 9385; - } - BlockState MagentaGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace MagentaShulkerBox - { - constexpr BlockState MagentaShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9290; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9291; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9292; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9293; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9294; - else return 9295; - } - BlockState MagentaShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace MagentaStainedGlass - { - constexpr BlockState MagentaStainedGlass() - { - return 4097; - } - } - namespace MagentaStainedGlassPane - { - constexpr BlockState MagentaStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 6929; - else return 6930; - else - if (West) return 6933; - else return 6934; - else - if (South) - if (West) return 6937; - else return 6938; - else - if (West) return 6941; - else return 6942; + return 8681; + else if (South) + if (West) + return 8684; else - if (North) - if (South) - if (West) return 6945; - else return 6946; - else - if (West) return 6949; - else return 6950; - else - if (South) - if (West) return 6953; - else return 6954; - else - if (West) return 6957; - else return 6958; - } - BlockState MagentaStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace MagentaTerracotta - { - constexpr BlockState MagentaTerracotta() - { - return 6849; - } - } - namespace MagentaWallBanner - { - constexpr BlockState MagentaWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8161; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8162; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8163; - else return 8164; - } - BlockState MagentaWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace MagentaWool - { - constexpr BlockState MagentaWool() - { - return 1386; - } - } - namespace MagmaBlock - { - constexpr BlockState MagmaBlock() - { - return 9253; - } - } - namespace Melon - { - constexpr BlockState Melon() - { - return 4763; - } - } - namespace MelonStem - { - constexpr BlockState MelonStem(const unsigned char Age) - { - if (Age == 0) return 4780; - else if (Age == 1) return 4781; - else if (Age == 2) return 4782; - else if (Age == 3) return 4783; - else if (Age == 4) return 4784; - else if (Age == 5) return 4785; - else if (Age == 6) return 4786; - else return 4787; - } - BlockState MelonStem(); - unsigned char Age(BlockState Block); - } - namespace MossyCobblestone - { - constexpr BlockState MossyCobblestone() - { - return 1433; - } - } - namespace MossyCobblestoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState MossyCobblestoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 10814; - else if (Type == Type::Bottom) return 10816; - else return 10818; - } - BlockState MossyCobblestoneSlab(); - enum Type Type(BlockState Block); - } - namespace MossyCobblestoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState MossyCobblestoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9990; - else if (Shape == Shape::InnerLeft) return 9992; - else if (Shape == Shape::InnerRight) return 9994; - else if (Shape == Shape::OuterLeft) return 9996; - else return 9998; - else - if (Shape == Shape::Straight) return 10000; - else if (Shape == Shape::InnerLeft) return 10002; - else if (Shape == Shape::InnerRight) return 10004; - else if (Shape == Shape::OuterLeft) return 10006; - else return 10008; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10010; - else if (Shape == Shape::InnerLeft) return 10012; - else if (Shape == Shape::InnerRight) return 10014; - else if (Shape == Shape::OuterLeft) return 10016; - else return 10018; - else - if (Shape == Shape::Straight) return 10020; - else if (Shape == Shape::InnerLeft) return 10022; - else if (Shape == Shape::InnerRight) return 10024; - else if (Shape == Shape::OuterLeft) return 10026; - else return 10028; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10030; - else if (Shape == Shape::InnerLeft) return 10032; - else if (Shape == Shape::InnerRight) return 10034; - else if (Shape == Shape::OuterLeft) return 10036; - else return 10038; - else - if (Shape == Shape::Straight) return 10040; - else if (Shape == Shape::InnerLeft) return 10042; - else if (Shape == Shape::InnerRight) return 10044; - else if (Shape == Shape::OuterLeft) return 10046; - else return 10048; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10050; - else if (Shape == Shape::InnerLeft) return 10052; - else if (Shape == Shape::InnerRight) return 10054; - else if (Shape == Shape::OuterLeft) return 10056; - else return 10058; - else - if (Shape == Shape::Straight) return 10060; - else if (Shape == Shape::InnerLeft) return 10062; - else if (Shape == Shape::InnerRight) return 10064; - else if (Shape == Shape::OuterLeft) return 10066; - else return 10068; - } - BlockState MossyCobblestoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState MossyCobblestoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 5984; - else if (West == West::Low) return 5985; - else return 5986; - else - if (West == West::None) return 5990; - else if (West == West::Low) return 5991; - else return 5992; - else if (South == South::Low) - if (Up) - if (West == West::None) return 5996; - else if (West == West::Low) return 5997; - else return 5998; - else - if (West == West::None) return 6002; - else if (West == West::Low) return 6003; - else return 6004; - else - if (Up) - if (West == West::None) return 6008; - else if (West == West::Low) return 6009; - else return 6010; - else - if (West == West::None) return 6014; - else if (West == West::Low) return 6015; - else return 6016; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 6020; - else if (West == West::Low) return 6021; - else return 6022; - else - if (West == West::None) return 6026; - else if (West == West::Low) return 6027; - else return 6028; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6032; - else if (West == West::Low) return 6033; - else return 6034; - else - if (West == West::None) return 6038; - else if (West == West::Low) return 6039; - else return 6040; - else - if (Up) - if (West == West::None) return 6044; - else if (West == West::Low) return 6045; - else return 6046; - else - if (West == West::None) return 6050; - else if (West == West::Low) return 6051; - else return 6052; - else - if (South == South::None) - if (Up) - if (West == West::None) return 6056; - else if (West == West::Low) return 6057; - else return 6058; - else - if (West == West::None) return 6062; - else if (West == West::Low) return 6063; - else return 6064; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6068; - else if (West == West::Low) return 6069; - else return 6070; - else - if (West == West::None) return 6074; - else if (West == West::Low) return 6075; - else return 6076; - else - if (Up) - if (West == West::None) return 6080; - else if (West == West::Low) return 6081; - else return 6082; - else - if (West == West::None) return 6086; - else if (West == West::Low) return 6087; - else return 6088; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 6092; - else if (West == West::Low) return 6093; - else return 6094; - else - if (West == West::None) return 6098; - else if (West == West::Low) return 6099; - else return 6100; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6104; - else if (West == West::Low) return 6105; - else return 6106; - else - if (West == West::None) return 6110; - else if (West == West::Low) return 6111; - else return 6112; - else - if (Up) - if (West == West::None) return 6116; - else if (West == West::Low) return 6117; - else return 6118; - else - if (West == West::None) return 6122; - else if (West == West::Low) return 6123; - else return 6124; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 6128; - else if (West == West::Low) return 6129; - else return 6130; - else - if (West == West::None) return 6134; - else if (West == West::Low) return 6135; - else return 6136; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6140; - else if (West == West::Low) return 6141; - else return 6142; - else - if (West == West::None) return 6146; - else if (West == West::Low) return 6147; - else return 6148; - else - if (Up) - if (West == West::None) return 6152; - else if (West == West::Low) return 6153; - else return 6154; - else - if (West == West::None) return 6158; - else if (West == West::Low) return 6159; - else return 6160; - else - if (South == South::None) - if (Up) - if (West == West::None) return 6164; - else if (West == West::Low) return 6165; - else return 6166; - else - if (West == West::None) return 6170; - else if (West == West::Low) return 6171; - else return 6172; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6176; - else if (West == West::Low) return 6177; - else return 6178; - else - if (West == West::None) return 6182; - else if (West == West::Low) return 6183; - else return 6184; - else - if (Up) - if (West == West::None) return 6188; - else if (West == West::Low) return 6189; - else return 6190; - else - if (West == West::None) return 6194; - else if (West == West::Low) return 6195; - else return 6196; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 6200; - else if (West == West::Low) return 6201; - else return 6202; - else - if (West == West::None) return 6206; - else if (West == West::Low) return 6207; - else return 6208; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6212; - else if (West == West::Low) return 6213; - else return 6214; - else - if (West == West::None) return 6218; - else if (West == West::Low) return 6219; - else return 6220; - else - if (Up) - if (West == West::None) return 6224; - else if (West == West::Low) return 6225; - else return 6226; - else - if (West == West::None) return 6230; - else if (West == West::Low) return 6231; - else return 6232; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 6236; - else if (West == West::Low) return 6237; - else return 6238; - else - if (West == West::None) return 6242; - else if (West == West::Low) return 6243; - else return 6244; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6248; - else if (West == West::Low) return 6249; - else return 6250; - else - if (West == West::None) return 6254; - else if (West == West::Low) return 6255; - else return 6256; - else - if (Up) - if (West == West::None) return 6260; - else if (West == West::Low) return 6261; - else return 6262; - else - if (West == West::None) return 6266; - else if (West == West::Low) return 6267; - else return 6268; - else - if (South == South::None) - if (Up) - if (West == West::None) return 6272; - else if (West == West::Low) return 6273; - else return 6274; - else - if (West == West::None) return 6278; - else if (West == West::Low) return 6279; - else return 6280; - else if (South == South::Low) - if (Up) - if (West == West::None) return 6284; - else if (West == West::Low) return 6285; - else return 6286; - else - if (West == West::None) return 6290; - else if (West == West::Low) return 6291; - else return 6292; - else - if (Up) - if (West == West::None) return 6296; - else if (West == West::Low) return 6297; - else return 6298; - else - if (West == West::None) return 6302; - else if (West == West::Low) return 6303; - else return 6304; - } - BlockState MossyCobblestoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace MossyStoneBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState MossyStoneBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 10802; - else if (Type == Type::Bottom) return 10804; - else return 10806; - } - BlockState MossyStoneBrickSlab(); - enum Type Type(BlockState Block); - } - namespace MossyStoneBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState MossyStoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9830; - else if (Shape == Shape::InnerLeft) return 9832; - else if (Shape == Shape::InnerRight) return 9834; - else if (Shape == Shape::OuterLeft) return 9836; - else return 9838; - else - if (Shape == Shape::Straight) return 9840; - else if (Shape == Shape::InnerLeft) return 9842; - else if (Shape == Shape::InnerRight) return 9844; - else if (Shape == Shape::OuterLeft) return 9846; - else return 9848; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9850; - else if (Shape == Shape::InnerLeft) return 9852; - else if (Shape == Shape::InnerRight) return 9854; - else if (Shape == Shape::OuterLeft) return 9856; - else return 9858; - else - if (Shape == Shape::Straight) return 9860; - else if (Shape == Shape::InnerLeft) return 9862; - else if (Shape == Shape::InnerRight) return 9864; - else if (Shape == Shape::OuterLeft) return 9866; - else return 9868; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9870; - else if (Shape == Shape::InnerLeft) return 9872; - else if (Shape == Shape::InnerRight) return 9874; - else if (Shape == Shape::OuterLeft) return 9876; - else return 9878; - else - if (Shape == Shape::Straight) return 9880; - else if (Shape == Shape::InnerLeft) return 9882; - else if (Shape == Shape::InnerRight) return 9884; - else if (Shape == Shape::OuterLeft) return 9886; - else return 9888; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9890; - else if (Shape == Shape::InnerLeft) return 9892; - else if (Shape == Shape::InnerRight) return 9894; - else if (Shape == Shape::OuterLeft) return 9896; - else return 9898; - else - if (Shape == Shape::Straight) return 9900; - else if (Shape == Shape::InnerLeft) return 9902; - else if (Shape == Shape::InnerRight) return 9904; - else if (Shape == Shape::OuterLeft) return 9906; - else return 9908; - } - BlockState MossyStoneBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState MossyStoneBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11842; - else if (West == West::Low) return 11843; - else return 11844; - else - if (West == West::None) return 11848; - else if (West == West::Low) return 11849; - else return 11850; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11854; - else if (West == West::Low) return 11855; - else return 11856; - else - if (West == West::None) return 11860; - else if (West == West::Low) return 11861; - else return 11862; - else - if (Up) - if (West == West::None) return 11866; - else if (West == West::Low) return 11867; - else return 11868; - else - if (West == West::None) return 11872; - else if (West == West::Low) return 11873; - else return 11874; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11878; - else if (West == West::Low) return 11879; - else return 11880; - else - if (West == West::None) return 11884; - else if (West == West::Low) return 11885; - else return 11886; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11890; - else if (West == West::Low) return 11891; - else return 11892; - else - if (West == West::None) return 11896; - else if (West == West::Low) return 11897; - else return 11898; - else - if (Up) - if (West == West::None) return 11902; - else if (West == West::Low) return 11903; - else return 11904; - else - if (West == West::None) return 11908; - else if (West == West::Low) return 11909; - else return 11910; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11914; - else if (West == West::Low) return 11915; - else return 11916; - else - if (West == West::None) return 11920; - else if (West == West::Low) return 11921; - else return 11922; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11926; - else if (West == West::Low) return 11927; - else return 11928; - else - if (West == West::None) return 11932; - else if (West == West::Low) return 11933; - else return 11934; - else - if (Up) - if (West == West::None) return 11938; - else if (West == West::Low) return 11939; - else return 11940; - else - if (West == West::None) return 11944; - else if (West == West::Low) return 11945; - else return 11946; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11950; - else if (West == West::Low) return 11951; - else return 11952; - else - if (West == West::None) return 11956; - else if (West == West::Low) return 11957; - else return 11958; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11962; - else if (West == West::Low) return 11963; - else return 11964; - else - if (West == West::None) return 11968; - else if (West == West::Low) return 11969; - else return 11970; - else - if (Up) - if (West == West::None) return 11974; - else if (West == West::Low) return 11975; - else return 11976; - else - if (West == West::None) return 11980; - else if (West == West::Low) return 11981; - else return 11982; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11986; - else if (West == West::Low) return 11987; - else return 11988; - else - if (West == West::None) return 11992; - else if (West == West::Low) return 11993; - else return 11994; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11998; - else if (West == West::Low) return 11999; - else return 12000; - else - if (West == West::None) return 12004; - else if (West == West::Low) return 12005; - else return 12006; - else - if (Up) - if (West == West::None) return 12010; - else if (West == West::Low) return 12011; - else return 12012; - else - if (West == West::None) return 12016; - else if (West == West::Low) return 12017; - else return 12018; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12022; - else if (West == West::Low) return 12023; - else return 12024; - else - if (West == West::None) return 12028; - else if (West == West::Low) return 12029; - else return 12030; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12034; - else if (West == West::Low) return 12035; - else return 12036; - else - if (West == West::None) return 12040; - else if (West == West::Low) return 12041; - else return 12042; - else - if (Up) - if (West == West::None) return 12046; - else if (West == West::Low) return 12047; - else return 12048; - else - if (West == West::None) return 12052; - else if (West == West::Low) return 12053; - else return 12054; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12058; - else if (West == West::Low) return 12059; - else return 12060; - else - if (West == West::None) return 12064; - else if (West == West::Low) return 12065; - else return 12066; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12070; - else if (West == West::Low) return 12071; - else return 12072; - else - if (West == West::None) return 12076; - else if (West == West::Low) return 12077; - else return 12078; - else - if (Up) - if (West == West::None) return 12082; - else if (West == West::Low) return 12083; - else return 12084; - else - if (West == West::None) return 12088; - else if (West == West::Low) return 12089; - else return 12090; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12094; - else if (West == West::Low) return 12095; - else return 12096; - else - if (West == West::None) return 12100; - else if (West == West::Low) return 12101; - else return 12102; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12106; - else if (West == West::Low) return 12107; - else return 12108; - else - if (West == West::None) return 12112; - else if (West == West::Low) return 12113; - else return 12114; - else - if (Up) - if (West == West::None) return 12118; - else if (West == West::Low) return 12119; - else return 12120; - else - if (West == West::None) return 12124; - else if (West == West::Low) return 12125; - else return 12126; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12130; - else if (West == West::Low) return 12131; - else return 12132; - else - if (West == West::None) return 12136; - else if (West == West::Low) return 12137; - else return 12138; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12142; - else if (West == West::Low) return 12143; - else return 12144; - else - if (West == West::None) return 12148; - else if (West == West::Low) return 12149; - else return 12150; - else - if (Up) - if (West == West::None) return 12154; - else if (West == West::Low) return 12155; - else return 12156; - else - if (West == West::None) return 12160; - else if (West == West::Low) return 12161; - else return 12162; - } - BlockState MossyStoneBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace MossyStoneBricks - { - constexpr BlockState MossyStoneBricks() - { - return 4496; - } - } - namespace MovingPiston - { - enum class Type - { - Normal, - Sticky - }; - constexpr BlockState MovingPiston(const eBlockFace Facing, const enum Type Type) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Type == Type::Normal) return 1400; - else return 1401; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Type == Type::Normal) return 1402; - else return 1403; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Type == Type::Normal) return 1404; - else return 1405; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Type == Type::Normal) return 1406; - else return 1407; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Type == Type::Normal) return 1408; - else return 1409; - else - if (Type == Type::Normal) return 1410; - else return 1411; - } - BlockState MovingPiston(); - eBlockFace Facing(BlockState Block); - enum Type Type(BlockState Block); - } - namespace MushroomStem - { - constexpr BlockState MushroomStem(const bool Down, const bool East, const bool North, const bool South, const bool Up, const bool West) - { - if (Down) - if (East) - if (North) - if (South) - if (Up) - if (West) return 4633; - else return 4634; - else - if (West) return 4635; - else return 4636; - else - if (Up) - if (West) return 4637; - else return 4638; - else - if (West) return 4639; - else return 4640; - else - if (South) - if (Up) - if (West) return 4641; - else return 4642; - else - if (West) return 4643; - else return 4644; - else - if (Up) - if (West) return 4645; - else return 4646; - else - if (West) return 4647; - else return 4648; - else - if (North) - if (South) - if (Up) - if (West) return 4649; - else return 4650; - else - if (West) return 4651; - else return 4652; - else - if (Up) - if (West) return 4653; - else return 4654; - else - if (West) return 4655; - else return 4656; - else - if (South) - if (Up) - if (West) return 4657; - else return 4658; - else - if (West) return 4659; - else return 4660; - else - if (Up) - if (West) return 4661; - else return 4662; - else - if (West) return 4663; - else return 4664; + return 8685; + else if (West) + return 8688; + else + return 8689; + else if (North) + if (South) + if (West) + return 8692; else - if (East) - if (North) - if (South) - if (Up) - if (West) return 4665; - else return 4666; - else - if (West) return 4667; - else return 4668; - else - if (Up) - if (West) return 4669; - else return 4670; - else - if (West) return 4671; - else return 4672; - else - if (South) - if (Up) - if (West) return 4673; - else return 4674; - else - if (West) return 4675; - else return 4676; - else - if (Up) - if (West) return 4677; - else return 4678; - else - if (West) return 4679; - else return 4680; - else - if (North) - if (South) - if (Up) - if (West) return 4681; - else return 4682; - else - if (West) return 4683; - else return 4684; - else - if (Up) - if (West) return 4685; - else return 4686; - else - if (West) return 4687; - else return 4688; - else - if (South) - if (Up) - if (West) return 4689; - else return 4690; - else - if (West) return 4691; - else return 4692; - else - if (Up) - if (West) return 4693; - else return 4694; - else - if (West) return 4695; - else return 4696; - } - BlockState MushroomStem(); - bool Down(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace Mycelium - { - constexpr BlockState Mycelium(const bool Snowy) - { - if (Snowy) return 5012; - else return 5013; - } - BlockState Mycelium(); - bool Snowy(BlockState Block); - } - namespace NetherBrickFence - { - constexpr BlockState NetherBrickFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 5018; - else return 5019; - else - if (West) return 5022; - else return 5023; - else - if (South) - if (West) return 5026; - else return 5027; - else - if (West) return 5030; - else return 5031; + return 8693; + else if (West) + return 8696; + else + return 8697; + else if (South) + if (West) + return 8700; + else + return 8701; + else if (West) + return 8704; + else + return 8705; +} +BlockState AcaciaFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace AcaciaFence +namespace AcaciaFenceGate +{ +constexpr BlockState AcaciaFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 8514; + else + return 8515; + else if (Powered) + return 8516; else - if (North) - if (South) - if (West) return 5034; - else return 5035; - else - if (West) return 5038; - else return 5039; - else - if (South) - if (West) return 5042; - else return 5043; - else - if (West) return 5046; - else return 5047; - } - BlockState NetherBrickFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace NetherBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState NetherBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 8385; - else if (Type == Type::Bottom) return 8387; - else return 8389; - } - BlockState NetherBrickSlab(); - enum Type Type(BlockState Block); - } - namespace NetherBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState NetherBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5049; - else if (Shape == Shape::InnerLeft) return 5051; - else if (Shape == Shape::InnerRight) return 5053; - else if (Shape == Shape::OuterLeft) return 5055; - else return 5057; - else - if (Shape == Shape::Straight) return 5059; - else if (Shape == Shape::InnerLeft) return 5061; - else if (Shape == Shape::InnerRight) return 5063; - else if (Shape == Shape::OuterLeft) return 5065; - else return 5067; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5069; - else if (Shape == Shape::InnerLeft) return 5071; - else if (Shape == Shape::InnerRight) return 5073; - else if (Shape == Shape::OuterLeft) return 5075; - else return 5077; - else - if (Shape == Shape::Straight) return 5079; - else if (Shape == Shape::InnerLeft) return 5081; - else if (Shape == Shape::InnerRight) return 5083; - else if (Shape == Shape::OuterLeft) return 5085; - else return 5087; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5089; - else if (Shape == Shape::InnerLeft) return 5091; - else if (Shape == Shape::InnerRight) return 5093; - else if (Shape == Shape::OuterLeft) return 5095; - else return 5097; - else - if (Shape == Shape::Straight) return 5099; - else if (Shape == Shape::InnerLeft) return 5101; - else if (Shape == Shape::InnerRight) return 5103; - else if (Shape == Shape::OuterLeft) return 5105; - else return 5107; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5109; - else if (Shape == Shape::InnerLeft) return 5111; - else if (Shape == Shape::InnerRight) return 5113; - else if (Shape == Shape::OuterLeft) return 5115; - else return 5117; - else - if (Shape == Shape::Straight) return 5119; - else if (Shape == Shape::InnerLeft) return 5121; - else if (Shape == Shape::InnerRight) return 5123; - else if (Shape == Shape::OuterLeft) return 5125; - else return 5127; - } - BlockState NetherBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState NetherBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12814; - else if (West == West::Low) return 12815; - else return 12816; - else - if (West == West::None) return 12820; - else if (West == West::Low) return 12821; - else return 12822; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12826; - else if (West == West::Low) return 12827; - else return 12828; - else - if (West == West::None) return 12832; - else if (West == West::Low) return 12833; - else return 12834; - else - if (Up) - if (West == West::None) return 12838; - else if (West == West::Low) return 12839; - else return 12840; - else - if (West == West::None) return 12844; - else if (West == West::Low) return 12845; - else return 12846; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12850; - else if (West == West::Low) return 12851; - else return 12852; - else - if (West == West::None) return 12856; - else if (West == West::Low) return 12857; - else return 12858; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12862; - else if (West == West::Low) return 12863; - else return 12864; - else - if (West == West::None) return 12868; - else if (West == West::Low) return 12869; - else return 12870; - else - if (Up) - if (West == West::None) return 12874; - else if (West == West::Low) return 12875; - else return 12876; - else - if (West == West::None) return 12880; - else if (West == West::Low) return 12881; - else return 12882; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12886; - else if (West == West::Low) return 12887; - else return 12888; - else - if (West == West::None) return 12892; - else if (West == West::Low) return 12893; - else return 12894; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12898; - else if (West == West::Low) return 12899; - else return 12900; - else - if (West == West::None) return 12904; - else if (West == West::Low) return 12905; - else return 12906; - else - if (Up) - if (West == West::None) return 12910; - else if (West == West::Low) return 12911; - else return 12912; - else - if (West == West::None) return 12916; - else if (West == West::Low) return 12917; - else return 12918; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12922; - else if (West == West::Low) return 12923; - else return 12924; - else - if (West == West::None) return 12928; - else if (West == West::Low) return 12929; - else return 12930; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12934; - else if (West == West::Low) return 12935; - else return 12936; - else - if (West == West::None) return 12940; - else if (West == West::Low) return 12941; - else return 12942; - else - if (Up) - if (West == West::None) return 12946; - else if (West == West::Low) return 12947; - else return 12948; - else - if (West == West::None) return 12952; - else if (West == West::Low) return 12953; - else return 12954; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12958; - else if (West == West::Low) return 12959; - else return 12960; - else - if (West == West::None) return 12964; - else if (West == West::Low) return 12965; - else return 12966; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12970; - else if (West == West::Low) return 12971; - else return 12972; - else - if (West == West::None) return 12976; - else if (West == West::Low) return 12977; - else return 12978; - else - if (Up) - if (West == West::None) return 12982; - else if (West == West::Low) return 12983; - else return 12984; - else - if (West == West::None) return 12988; - else if (West == West::Low) return 12989; - else return 12990; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12994; - else if (West == West::Low) return 12995; - else return 12996; - else - if (West == West::None) return 13000; - else if (West == West::Low) return 13001; - else return 13002; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13006; - else if (West == West::Low) return 13007; - else return 13008; - else - if (West == West::None) return 13012; - else if (West == West::Low) return 13013; - else return 13014; - else - if (Up) - if (West == West::None) return 13018; - else if (West == West::Low) return 13019; - else return 13020; - else - if (West == West::None) return 13024; - else if (West == West::Low) return 13025; - else return 13026; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13030; - else if (West == West::Low) return 13031; - else return 13032; - else - if (West == West::None) return 13036; - else if (West == West::Low) return 13037; - else return 13038; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13042; - else if (West == West::Low) return 13043; - else return 13044; - else - if (West == West::None) return 13048; - else if (West == West::Low) return 13049; - else return 13050; - else - if (Up) - if (West == West::None) return 13054; - else if (West == West::Low) return 13055; - else return 13056; - else - if (West == West::None) return 13060; - else if (West == West::Low) return 13061; - else return 13062; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13066; - else if (West == West::Low) return 13067; - else return 13068; - else - if (West == West::None) return 13072; - else if (West == West::Low) return 13073; - else return 13074; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13078; - else if (West == West::Low) return 13079; - else return 13080; - else - if (West == West::None) return 13084; - else if (West == West::Low) return 13085; - else return 13086; - else - if (Up) - if (West == West::None) return 13090; - else if (West == West::Low) return 13091; - else return 13092; - else - if (West == West::None) return 13096; - else if (West == West::Low) return 13097; - else return 13098; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13102; - else if (West == West::Low) return 13103; - else return 13104; - else - if (West == West::None) return 13108; - else if (West == West::Low) return 13109; - else return 13110; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13114; - else if (West == West::Low) return 13115; - else return 13116; - else - if (West == West::None) return 13120; - else if (West == West::Low) return 13121; - else return 13122; - else - if (Up) - if (West == West::None) return 13126; - else if (West == West::Low) return 13127; - else return 13128; - else - if (West == West::None) return 13132; - else if (West == West::Low) return 13133; - else return 13134; - } - BlockState NetherBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace NetherBricks - { - constexpr BlockState NetherBricks() - { - return 5015; - } - } - namespace NetherGoldOre - { - constexpr BlockState NetherGoldOre() - { - return 72; - } - } - namespace NetherPortal - { - enum class Axis - { - X, - Z - }; - constexpr BlockState NetherPortal(const enum Axis Axis) - { - if (Axis == Axis::X) return 4014; - else return 4015; - } - BlockState NetherPortal(); - enum Axis Axis(BlockState Block); - } - namespace NetherQuartzOre - { - constexpr BlockState NetherQuartzOre() - { - return 6727; - } - } - namespace NetherSprouts - { - constexpr BlockState NetherSprouts() - { - return 14974; - } - } - namespace NetherWart - { - constexpr BlockState NetherWart(const unsigned char Age) - { - if (Age == 0) return 5128; - else if (Age == 1) return 5129; - else if (Age == 2) return 5130; - else return 5131; - } - BlockState NetherWart(); - unsigned char Age(BlockState Block); - } - namespace NetherWartBlock - { - constexpr BlockState NetherWartBlock() - { - return 9254; - } - } - namespace NetheriteBlock - { - constexpr BlockState NetheriteBlock() - { - return 15826; - } - } - namespace Netherrack - { - constexpr BlockState 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 BlockState NoteBlock(const enum Instrument Instrument, const unsigned char Note, const bool Powered) - { - if (Instrument == Instrument::Harp) - if (Note == 0) - if (Powered) return 249; - else return 250; - else if (Note == 1) - if (Powered) return 251; - else return 252; - else if (Note == 2) - if (Powered) return 253; - else return 254; - else if (Note == 3) - if (Powered) return 255; - else return 256; - else if (Note == 4) - if (Powered) return 257; - else return 258; - else if (Note == 5) - if (Powered) return 259; - else return 260; - else if (Note == 6) - if (Powered) return 261; - else return 262; - else if (Note == 7) - if (Powered) return 263; - else return 264; - else if (Note == 8) - if (Powered) return 265; - else return 266; - else if (Note == 9) - if (Powered) return 267; - else return 268; - else if (Note == 10) - if (Powered) return 269; - else return 270; - else if (Note == 11) - if (Powered) return 271; - else return 272; - else if (Note == 12) - if (Powered) return 273; - else return 274; - else if (Note == 13) - if (Powered) return 275; - else return 276; - else if (Note == 14) - if (Powered) return 277; - else return 278; - else if (Note == 15) - if (Powered) return 279; - else return 280; - else if (Note == 16) - if (Powered) return 281; - else return 282; - else if (Note == 17) - if (Powered) return 283; - else return 284; - else if (Note == 18) - if (Powered) return 285; - else return 286; - else if (Note == 19) - if (Powered) return 287; - else return 288; - else if (Note == 20) - if (Powered) return 289; - else return 290; - else if (Note == 21) - if (Powered) return 291; - else return 292; - else if (Note == 22) - if (Powered) return 293; - else return 294; - else if (Note == 23) - if (Powered) return 295; - else return 296; - else - if (Powered) return 297; - else return 298; - else if (Instrument == Instrument::Basedrum) - if (Note == 0) - if (Powered) return 299; - else return 300; - else if (Note == 1) - if (Powered) return 301; - else return 302; - else if (Note == 2) - if (Powered) return 303; - else return 304; - else if (Note == 3) - if (Powered) return 305; - else return 306; - else if (Note == 4) - if (Powered) return 307; - else return 308; - else if (Note == 5) - if (Powered) return 309; - else return 310; - else if (Note == 6) - if (Powered) return 311; - else return 312; - else if (Note == 7) - if (Powered) return 313; - else return 314; - else if (Note == 8) - if (Powered) return 315; - else return 316; - else if (Note == 9) - if (Powered) return 317; - else return 318; - else if (Note == 10) - if (Powered) return 319; - else return 320; - else if (Note == 11) - if (Powered) return 321; - else return 322; - else if (Note == 12) - if (Powered) return 323; - else return 324; - else if (Note == 13) - if (Powered) return 325; - else return 326; - else if (Note == 14) - if (Powered) return 327; - else return 328; - else if (Note == 15) - if (Powered) return 329; - else return 330; - else if (Note == 16) - if (Powered) return 331; - else return 332; - else if (Note == 17) - if (Powered) return 333; - else return 334; - else if (Note == 18) - if (Powered) return 335; - else return 336; - else if (Note == 19) - if (Powered) return 337; - else return 338; - else if (Note == 20) - if (Powered) return 339; - else return 340; - else if (Note == 21) - if (Powered) return 341; - else return 342; - else if (Note == 22) - if (Powered) return 343; - else return 344; - else if (Note == 23) - if (Powered) return 345; - else return 346; - else - if (Powered) return 347; - else return 348; - else if (Instrument == Instrument::Snare) - if (Note == 0) - if (Powered) return 349; - else return 350; - else if (Note == 1) - if (Powered) return 351; - else return 352; - else if (Note == 2) - if (Powered) return 353; - else return 354; - else if (Note == 3) - if (Powered) return 355; - else return 356; - else if (Note == 4) - if (Powered) return 357; - else return 358; - else if (Note == 5) - if (Powered) return 359; - else return 360; - else if (Note == 6) - if (Powered) return 361; - else return 362; - else if (Note == 7) - if (Powered) return 363; - else return 364; - else if (Note == 8) - if (Powered) return 365; - else return 366; - else if (Note == 9) - if (Powered) return 367; - else return 368; - else if (Note == 10) - if (Powered) return 369; - else return 370; - else if (Note == 11) - if (Powered) return 371; - else return 372; - else if (Note == 12) - if (Powered) return 373; - else return 374; - else if (Note == 13) - if (Powered) return 375; - else return 376; - else if (Note == 14) - if (Powered) return 377; - else return 378; - else if (Note == 15) - if (Powered) return 379; - else return 380; - else if (Note == 16) - if (Powered) return 381; - else return 382; - else if (Note == 17) - if (Powered) return 383; - else return 384; - else if (Note == 18) - if (Powered) return 385; - else return 386; - else if (Note == 19) - if (Powered) return 387; - else return 388; - else if (Note == 20) - if (Powered) return 389; - else return 390; - else if (Note == 21) - if (Powered) return 391; - else return 392; - else if (Note == 22) - if (Powered) return 393; - else return 394; - else if (Note == 23) - if (Powered) return 395; - else return 396; - else - if (Powered) return 397; - else return 398; - else if (Instrument == Instrument::Hat) - if (Note == 0) - if (Powered) return 399; - else return 400; - else if (Note == 1) - if (Powered) return 401; - else return 402; - else if (Note == 2) - if (Powered) return 403; - else return 404; - else if (Note == 3) - if (Powered) return 405; - else return 406; - else if (Note == 4) - if (Powered) return 407; - else return 408; - else if (Note == 5) - if (Powered) return 409; - else return 410; - else if (Note == 6) - if (Powered) return 411; - else return 412; - else if (Note == 7) - if (Powered) return 413; - else return 414; - else if (Note == 8) - if (Powered) return 415; - else return 416; - else if (Note == 9) - if (Powered) return 417; - else return 418; - else if (Note == 10) - if (Powered) return 419; - else return 420; - else if (Note == 11) - if (Powered) return 421; - else return 422; - else if (Note == 12) - if (Powered) return 423; - else return 424; - else if (Note == 13) - if (Powered) return 425; - else return 426; - else if (Note == 14) - if (Powered) return 427; - else return 428; - else if (Note == 15) - if (Powered) return 429; - else return 430; - else if (Note == 16) - if (Powered) return 431; - else return 432; - else if (Note == 17) - if (Powered) return 433; - else return 434; - else if (Note == 18) - if (Powered) return 435; - else return 436; - else if (Note == 19) - if (Powered) return 437; - else return 438; - else if (Note == 20) - if (Powered) return 439; - else return 440; - else if (Note == 21) - if (Powered) return 441; - else return 442; - else if (Note == 22) - if (Powered) return 443; - else return 444; - else if (Note == 23) - if (Powered) return 445; - else return 446; - else - if (Powered) return 447; - else return 448; - else if (Instrument == Instrument::Bass) - if (Note == 0) - if (Powered) return 449; - else return 450; - else if (Note == 1) - if (Powered) return 451; - else return 452; - else if (Note == 2) - if (Powered) return 453; - else return 454; - else if (Note == 3) - if (Powered) return 455; - else return 456; - else if (Note == 4) - if (Powered) return 457; - else return 458; - else if (Note == 5) - if (Powered) return 459; - else return 460; - else if (Note == 6) - if (Powered) return 461; - else return 462; - else if (Note == 7) - if (Powered) return 463; - else return 464; - else if (Note == 8) - if (Powered) return 465; - else return 466; - else if (Note == 9) - if (Powered) return 467; - else return 468; - else if (Note == 10) - if (Powered) return 469; - else return 470; - else if (Note == 11) - if (Powered) return 471; - else return 472; - else if (Note == 12) - if (Powered) return 473; - else return 474; - else if (Note == 13) - if (Powered) return 475; - else return 476; - else if (Note == 14) - if (Powered) return 477; - else return 478; - else if (Note == 15) - if (Powered) return 479; - else return 480; - else if (Note == 16) - if (Powered) return 481; - else return 482; - else if (Note == 17) - if (Powered) return 483; - else return 484; - else if (Note == 18) - if (Powered) return 485; - else return 486; - else if (Note == 19) - if (Powered) return 487; - else return 488; - else if (Note == 20) - if (Powered) return 489; - else return 490; - else if (Note == 21) - if (Powered) return 491; - else return 492; - else if (Note == 22) - if (Powered) return 493; - else return 494; - else if (Note == 23) - if (Powered) return 495; - else return 496; - else - if (Powered) return 497; - else return 498; - else if (Instrument == Instrument::Flute) - if (Note == 0) - if (Powered) return 499; - else return 500; - else if (Note == 1) - if (Powered) return 501; - else return 502; - else if (Note == 2) - if (Powered) return 503; - else return 504; - else if (Note == 3) - if (Powered) return 505; - else return 506; - else if (Note == 4) - if (Powered) return 507; - else return 508; - else if (Note == 5) - if (Powered) return 509; - else return 510; - else if (Note == 6) - if (Powered) return 511; - else return 512; - else if (Note == 7) - if (Powered) return 513; - else return 514; - else if (Note == 8) - if (Powered) return 515; - else return 516; - else if (Note == 9) - if (Powered) return 517; - else return 518; - else if (Note == 10) - if (Powered) return 519; - else return 520; - else if (Note == 11) - if (Powered) return 521; - else return 522; - else if (Note == 12) - if (Powered) return 523; - else return 524; - else if (Note == 13) - if (Powered) return 525; - else return 526; - else if (Note == 14) - if (Powered) return 527; - else return 528; - else if (Note == 15) - if (Powered) return 529; - else return 530; - else if (Note == 16) - if (Powered) return 531; - else return 532; - else if (Note == 17) - if (Powered) return 533; - else return 534; - else if (Note == 18) - if (Powered) return 535; - else return 536; - else if (Note == 19) - if (Powered) return 537; - else return 538; - else if (Note == 20) - if (Powered) return 539; - else return 540; - else if (Note == 21) - if (Powered) return 541; - else return 542; - else if (Note == 22) - if (Powered) return 543; - else return 544; - else if (Note == 23) - if (Powered) return 545; - else return 546; - else - if (Powered) return 547; - else return 548; - else if (Instrument == Instrument::Bell) - if (Note == 0) - if (Powered) return 549; - else return 550; - else if (Note == 1) - if (Powered) return 551; - else return 552; - else if (Note == 2) - if (Powered) return 553; - else return 554; - else if (Note == 3) - if (Powered) return 555; - else return 556; - else if (Note == 4) - if (Powered) return 557; - else return 558; - else if (Note == 5) - if (Powered) return 559; - else return 560; - else if (Note == 6) - if (Powered) return 561; - else return 562; - else if (Note == 7) - if (Powered) return 563; - else return 564; - else if (Note == 8) - if (Powered) return 565; - else return 566; - else if (Note == 9) - if (Powered) return 567; - else return 568; - else if (Note == 10) - if (Powered) return 569; - else return 570; - else if (Note == 11) - if (Powered) return 571; - else return 572; - else if (Note == 12) - if (Powered) return 573; - else return 574; - else if (Note == 13) - if (Powered) return 575; - else return 576; - else if (Note == 14) - if (Powered) return 577; - else return 578; - else if (Note == 15) - if (Powered) return 579; - else return 580; - else if (Note == 16) - if (Powered) return 581; - else return 582; - else if (Note == 17) - if (Powered) return 583; - else return 584; - else if (Note == 18) - if (Powered) return 585; - else return 586; - else if (Note == 19) - if (Powered) return 587; - else return 588; - else if (Note == 20) - if (Powered) return 589; - else return 590; - else if (Note == 21) - if (Powered) return 591; - else return 592; - else if (Note == 22) - if (Powered) return 593; - else return 594; - else if (Note == 23) - if (Powered) return 595; - else return 596; - else - if (Powered) return 597; - else return 598; - else if (Instrument == Instrument::Guitar) - if (Note == 0) - if (Powered) return 599; - else return 600; - else if (Note == 1) - if (Powered) return 601; - else return 602; - else if (Note == 2) - if (Powered) return 603; - else return 604; - else if (Note == 3) - if (Powered) return 605; - else return 606; - else if (Note == 4) - if (Powered) return 607; - else return 608; - else if (Note == 5) - if (Powered) return 609; - else return 610; - else if (Note == 6) - if (Powered) return 611; - else return 612; - else if (Note == 7) - if (Powered) return 613; - else return 614; - else if (Note == 8) - if (Powered) return 615; - else return 616; - else if (Note == 9) - if (Powered) return 617; - else return 618; - else if (Note == 10) - if (Powered) return 619; - else return 620; - else if (Note == 11) - if (Powered) return 621; - else return 622; - else if (Note == 12) - if (Powered) return 623; - else return 624; - else if (Note == 13) - if (Powered) return 625; - else return 626; - else if (Note == 14) - if (Powered) return 627; - else return 628; - else if (Note == 15) - if (Powered) return 629; - else return 630; - else if (Note == 16) - if (Powered) return 631; - else return 632; - else if (Note == 17) - if (Powered) return 633; - else return 634; - else if (Note == 18) - if (Powered) return 635; - else return 636; - else if (Note == 19) - if (Powered) return 637; - else return 638; - else if (Note == 20) - if (Powered) return 639; - else return 640; - else if (Note == 21) - if (Powered) return 641; - else return 642; - else if (Note == 22) - if (Powered) return 643; - else return 644; - else if (Note == 23) - if (Powered) return 645; - else return 646; - else - if (Powered) return 647; - else return 648; - else if (Instrument == Instrument::Chime) - if (Note == 0) - if (Powered) return 649; - else return 650; - else if (Note == 1) - if (Powered) return 651; - else return 652; - else if (Note == 2) - if (Powered) return 653; - else return 654; - else if (Note == 3) - if (Powered) return 655; - else return 656; - else if (Note == 4) - if (Powered) return 657; - else return 658; - else if (Note == 5) - if (Powered) return 659; - else return 660; - else if (Note == 6) - if (Powered) return 661; - else return 662; - else if (Note == 7) - if (Powered) return 663; - else return 664; - else if (Note == 8) - if (Powered) return 665; - else return 666; - else if (Note == 9) - if (Powered) return 667; - else return 668; - else if (Note == 10) - if (Powered) return 669; - else return 670; - else if (Note == 11) - if (Powered) return 671; - else return 672; - else if (Note == 12) - if (Powered) return 673; - else return 674; - else if (Note == 13) - if (Powered) return 675; - else return 676; - else if (Note == 14) - if (Powered) return 677; - else return 678; - else if (Note == 15) - if (Powered) return 679; - else return 680; - else if (Note == 16) - if (Powered) return 681; - else return 682; - else if (Note == 17) - if (Powered) return 683; - else return 684; - else if (Note == 18) - if (Powered) return 685; - else return 686; - else if (Note == 19) - if (Powered) return 687; - else return 688; - else if (Note == 20) - if (Powered) return 689; - else return 690; - else if (Note == 21) - if (Powered) return 691; - else return 692; - else if (Note == 22) - if (Powered) return 693; - else return 694; - else if (Note == 23) - if (Powered) return 695; - else return 696; - else - if (Powered) return 697; - else return 698; - else if (Instrument == Instrument::Xylophone) - if (Note == 0) - if (Powered) return 699; - else return 700; - else if (Note == 1) - if (Powered) return 701; - else return 702; - else if (Note == 2) - if (Powered) return 703; - else return 704; - else if (Note == 3) - if (Powered) return 705; - else return 706; - else if (Note == 4) - if (Powered) return 707; - else return 708; - else if (Note == 5) - if (Powered) return 709; - else return 710; - else if (Note == 6) - if (Powered) return 711; - else return 712; - else if (Note == 7) - if (Powered) return 713; - else return 714; - else if (Note == 8) - if (Powered) return 715; - else return 716; - else if (Note == 9) - if (Powered) return 717; - else return 718; - else if (Note == 10) - if (Powered) return 719; - else return 720; - else if (Note == 11) - if (Powered) return 721; - else return 722; - else if (Note == 12) - if (Powered) return 723; - else return 724; - else if (Note == 13) - if (Powered) return 725; - else return 726; - else if (Note == 14) - if (Powered) return 727; - else return 728; - else if (Note == 15) - if (Powered) return 729; - else return 730; - else if (Note == 16) - if (Powered) return 731; - else return 732; - else if (Note == 17) - if (Powered) return 733; - else return 734; - else if (Note == 18) - if (Powered) return 735; - else return 736; - else if (Note == 19) - if (Powered) return 737; - else return 738; - else if (Note == 20) - if (Powered) return 739; - else return 740; - else if (Note == 21) - if (Powered) return 741; - else return 742; - else if (Note == 22) - if (Powered) return 743; - else return 744; - else if (Note == 23) - if (Powered) return 745; - else return 746; - else - if (Powered) return 747; - else return 748; - else if (Instrument == Instrument::IronXylophone) - if (Note == 0) - if (Powered) return 749; - else return 750; - else if (Note == 1) - if (Powered) return 751; - else return 752; - else if (Note == 2) - if (Powered) return 753; - else return 754; - else if (Note == 3) - if (Powered) return 755; - else return 756; - else if (Note == 4) - if (Powered) return 757; - else return 758; - else if (Note == 5) - if (Powered) return 759; - else return 760; - else if (Note == 6) - if (Powered) return 761; - else return 762; - else if (Note == 7) - if (Powered) return 763; - else return 764; - else if (Note == 8) - if (Powered) return 765; - else return 766; - else if (Note == 9) - if (Powered) return 767; - else return 768; - else if (Note == 10) - if (Powered) return 769; - else return 770; - else if (Note == 11) - if (Powered) return 771; - else return 772; - else if (Note == 12) - if (Powered) return 773; - else return 774; - else if (Note == 13) - if (Powered) return 775; - else return 776; - else if (Note == 14) - if (Powered) return 777; - else return 778; - else if (Note == 15) - if (Powered) return 779; - else return 780; - else if (Note == 16) - if (Powered) return 781; - else return 782; - else if (Note == 17) - if (Powered) return 783; - else return 784; - else if (Note == 18) - if (Powered) return 785; - else return 786; - else if (Note == 19) - if (Powered) return 787; - else return 788; - else if (Note == 20) - if (Powered) return 789; - else return 790; - else if (Note == 21) - if (Powered) return 791; - else return 792; - else if (Note == 22) - if (Powered) return 793; - else return 794; - else if (Note == 23) - if (Powered) return 795; - else return 796; - else - if (Powered) return 797; - else return 798; - else if (Instrument == Instrument::CowBell) - if (Note == 0) - if (Powered) return 799; - else return 800; - else if (Note == 1) - if (Powered) return 801; - else return 802; - else if (Note == 2) - if (Powered) return 803; - else return 804; - else if (Note == 3) - if (Powered) return 805; - else return 806; - else if (Note == 4) - if (Powered) return 807; - else return 808; - else if (Note == 5) - if (Powered) return 809; - else return 810; - else if (Note == 6) - if (Powered) return 811; - else return 812; - else if (Note == 7) - if (Powered) return 813; - else return 814; - else if (Note == 8) - if (Powered) return 815; - else return 816; - else if (Note == 9) - if (Powered) return 817; - else return 818; - else if (Note == 10) - if (Powered) return 819; - else return 820; - else if (Note == 11) - if (Powered) return 821; - else return 822; - else if (Note == 12) - if (Powered) return 823; - else return 824; - else if (Note == 13) - if (Powered) return 825; - else return 826; - else if (Note == 14) - if (Powered) return 827; - else return 828; - else if (Note == 15) - if (Powered) return 829; - else return 830; - else if (Note == 16) - if (Powered) return 831; - else return 832; - else if (Note == 17) - if (Powered) return 833; - else return 834; - else if (Note == 18) - if (Powered) return 835; - else return 836; - else if (Note == 19) - if (Powered) return 837; - else return 838; - else if (Note == 20) - if (Powered) return 839; - else return 840; - else if (Note == 21) - if (Powered) return 841; - else return 842; - else if (Note == 22) - if (Powered) return 843; - else return 844; - else if (Note == 23) - if (Powered) return 845; - else return 846; - else - if (Powered) return 847; - else return 848; - else if (Instrument == Instrument::Didgeridoo) - if (Note == 0) - if (Powered) return 849; - else return 850; - else if (Note == 1) - if (Powered) return 851; - else return 852; - else if (Note == 2) - if (Powered) return 853; - else return 854; - else if (Note == 3) - if (Powered) return 855; - else return 856; - else if (Note == 4) - if (Powered) return 857; - else return 858; - else if (Note == 5) - if (Powered) return 859; - else return 860; - else if (Note == 6) - if (Powered) return 861; - else return 862; - else if (Note == 7) - if (Powered) return 863; - else return 864; - else if (Note == 8) - if (Powered) return 865; - else return 866; - else if (Note == 9) - if (Powered) return 867; - else return 868; - else if (Note == 10) - if (Powered) return 869; - else return 870; - else if (Note == 11) - if (Powered) return 871; - else return 872; - else if (Note == 12) - if (Powered) return 873; - else return 874; - else if (Note == 13) - if (Powered) return 875; - else return 876; - else if (Note == 14) - if (Powered) return 877; - else return 878; - else if (Note == 15) - if (Powered) return 879; - else return 880; - else if (Note == 16) - if (Powered) return 881; - else return 882; - else if (Note == 17) - if (Powered) return 883; - else return 884; - else if (Note == 18) - if (Powered) return 885; - else return 886; - else if (Note == 19) - if (Powered) return 887; - else return 888; - else if (Note == 20) - if (Powered) return 889; - else return 890; - else if (Note == 21) - if (Powered) return 891; - else return 892; - else if (Note == 22) - if (Powered) return 893; - else return 894; - else if (Note == 23) - if (Powered) return 895; - else return 896; - else - if (Powered) return 897; - else return 898; - else if (Instrument == Instrument::Bit) - if (Note == 0) - if (Powered) return 899; - else return 900; - else if (Note == 1) - if (Powered) return 901; - else return 902; - else if (Note == 2) - if (Powered) return 903; - else return 904; - else if (Note == 3) - if (Powered) return 905; - else return 906; - else if (Note == 4) - if (Powered) return 907; - else return 908; - else if (Note == 5) - if (Powered) return 909; - else return 910; - else if (Note == 6) - if (Powered) return 911; - else return 912; - else if (Note == 7) - if (Powered) return 913; - else return 914; - else if (Note == 8) - if (Powered) return 915; - else return 916; - else if (Note == 9) - if (Powered) return 917; - else return 918; - else if (Note == 10) - if (Powered) return 919; - else return 920; - else if (Note == 11) - if (Powered) return 921; - else return 922; - else if (Note == 12) - if (Powered) return 923; - else return 924; - else if (Note == 13) - if (Powered) return 925; - else return 926; - else if (Note == 14) - if (Powered) return 927; - else return 928; - else if (Note == 15) - if (Powered) return 929; - else return 930; - else if (Note == 16) - if (Powered) return 931; - else return 932; - else if (Note == 17) - if (Powered) return 933; - else return 934; - else if (Note == 18) - if (Powered) return 935; - else return 936; - else if (Note == 19) - if (Powered) return 937; - else return 938; - else if (Note == 20) - if (Powered) return 939; - else return 940; - else if (Note == 21) - if (Powered) return 941; - else return 942; - else if (Note == 22) - if (Powered) return 943; - else return 944; - else if (Note == 23) - if (Powered) return 945; - else return 946; - else - if (Powered) return 947; - else return 948; - else if (Instrument == Instrument::Banjo) - if (Note == 0) - if (Powered) return 949; - else return 950; - else if (Note == 1) - if (Powered) return 951; - else return 952; - else if (Note == 2) - if (Powered) return 953; - else return 954; - else if (Note == 3) - if (Powered) return 955; - else return 956; - else if (Note == 4) - if (Powered) return 957; - else return 958; - else if (Note == 5) - if (Powered) return 959; - else return 960; - else if (Note == 6) - if (Powered) return 961; - else return 962; - else if (Note == 7) - if (Powered) return 963; - else return 964; - else if (Note == 8) - if (Powered) return 965; - else return 966; - else if (Note == 9) - if (Powered) return 967; - else return 968; - else if (Note == 10) - if (Powered) return 969; - else return 970; - else if (Note == 11) - if (Powered) return 971; - else return 972; - else if (Note == 12) - if (Powered) return 973; - else return 974; - else if (Note == 13) - if (Powered) return 975; - else return 976; - else if (Note == 14) - if (Powered) return 977; - else return 978; - else if (Note == 15) - if (Powered) return 979; - else return 980; - else if (Note == 16) - if (Powered) return 981; - else return 982; - else if (Note == 17) - if (Powered) return 983; - else return 984; - else if (Note == 18) - if (Powered) return 985; - else return 986; - else if (Note == 19) - if (Powered) return 987; - else return 988; - else if (Note == 20) - if (Powered) return 989; - else return 990; - else if (Note == 21) - if (Powered) return 991; - else return 992; - else if (Note == 22) - if (Powered) return 993; - else return 994; - else if (Note == 23) - if (Powered) return 995; - else return 996; - else - if (Powered) return 997; - else return 998; - else - if (Note == 0) - if (Powered) return 999; - else return 1000; - else if (Note == 1) - if (Powered) return 1001; - else return 1002; - else if (Note == 2) - if (Powered) return 1003; - else return 1004; - else if (Note == 3) - if (Powered) return 1005; - else return 1006; - else if (Note == 4) - if (Powered) return 1007; - else return 1008; - else if (Note == 5) - if (Powered) return 1009; - else return 1010; - else if (Note == 6) - if (Powered) return 1011; - else return 1012; - else if (Note == 7) - if (Powered) return 1013; - else return 1014; - else if (Note == 8) - if (Powered) return 1015; - else return 1016; - else if (Note == 9) - if (Powered) return 1017; - else return 1018; - else if (Note == 10) - if (Powered) return 1019; - else return 1020; - else if (Note == 11) - if (Powered) return 1021; - else return 1022; - else if (Note == 12) - if (Powered) return 1023; - else return 1024; - else if (Note == 13) - if (Powered) return 1025; - else return 1026; - else if (Note == 14) - if (Powered) return 1027; - else return 1028; - else if (Note == 15) - if (Powered) return 1029; - else return 1030; - else if (Note == 16) - if (Powered) return 1031; - else return 1032; - else if (Note == 17) - if (Powered) return 1033; - else return 1034; - else if (Note == 18) - if (Powered) return 1035; - else return 1036; - else if (Note == 19) - if (Powered) return 1037; - else return 1038; - else if (Note == 20) - if (Powered) return 1039; - else return 1040; - else if (Note == 21) - if (Powered) return 1041; - else return 1042; - else if (Note == 22) - if (Powered) return 1043; - else return 1044; - else if (Note == 23) - if (Powered) return 1045; - else return 1046; - else - if (Powered) return 1047; - else return 1048; - } - BlockState NoteBlock(); - enum Instrument Instrument(BlockState Block); - unsigned char Note(BlockState Block); - bool Powered(BlockState Block); - } - namespace OakButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState OakButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6346; - else return 6347; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6348; - else return 6349; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6350; - else return 6351; - else - if (Powered) return 6352; - else return 6353; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6354; - else return 6355; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6356; - else return 6357; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6358; - else return 6359; - else - if (Powered) return 6360; - else return 6361; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6362; - else return 6363; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6364; - else return 6365; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6366; - else return 6367; - else - if (Powered) return 6368; - else return 6369; - } - BlockState OakButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace OakDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState OakDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3573; - else return 3574; - else - if (Powered) return 3575; - else return 3576; - else - if (Open) - if (Powered) return 3577; - else return 3578; - else - if (Powered) return 3579; - else return 3580; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3581; - else return 3582; - else - if (Powered) return 3583; - else return 3584; - else - if (Open) - if (Powered) return 3585; - else return 3586; - else - if (Powered) return 3587; - else return 3588; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3589; - else return 3590; - else - if (Powered) return 3591; - else return 3592; - else - if (Open) - if (Powered) return 3593; - else return 3594; - else - if (Powered) return 3595; - else return 3596; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3597; - else return 3598; - else - if (Powered) return 3599; - else return 3600; - else - if (Open) - if (Powered) return 3601; - else return 3602; - else - if (Powered) return 3603; - else return 3604; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3605; - else return 3606; - else - if (Powered) return 3607; - else return 3608; - else - if (Open) - if (Powered) return 3609; - else return 3610; - else - if (Powered) return 3611; - else return 3612; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3613; - else return 3614; - else - if (Powered) return 3615; - else return 3616; - else - if (Open) - if (Powered) return 3617; - else return 3618; - else - if (Powered) return 3619; - else return 3620; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3621; - else return 3622; - else - if (Powered) return 3623; - else return 3624; - else - if (Open) - if (Powered) return 3625; - else return 3626; - else - if (Powered) return 3627; - else return 3628; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 3629; - else return 3630; - else - if (Powered) return 3631; - else return 3632; - else - if (Open) - if (Powered) return 3633; - else return 3634; - else - if (Powered) return 3635; - else return 3636; - } - BlockState OakDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace OakFence - { - constexpr BlockState OakFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 3968; - else return 3969; - else - if (West) return 3972; - else return 3973; - else - if (South) - if (West) return 3976; - else return 3977; - else - if (West) return 3980; - else return 3981; + return 8517; + else if (Open) + if (Powered) + return 8518; else - if (North) - if (South) - if (West) return 3984; - else return 3985; - else - if (West) return 3988; - else return 3989; - else - if (South) - if (West) return 3992; - else return 3993; - else - if (West) return 3996; - else return 3997; - } - BlockState OakFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace OakFenceGate - { - constexpr BlockState OakFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 4820; - else return 4821; - else - if (Powered) return 4822; - else return 4823; - else - if (Open) - if (Powered) return 4824; - else return 4825; - else - if (Powered) return 4826; - else return 4827; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 4828; - else return 4829; - else - if (Powered) return 4830; - else return 4831; - else - if (Open) - if (Powered) return 4832; - else return 4833; - else - if (Powered) return 4834; - else return 4835; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 4836; - else return 4837; - else - if (Powered) return 4838; - else return 4839; - else - if (Open) - if (Powered) return 4840; - else return 4841; - else - if (Powered) return 4842; - else return 4843; - else - if (InWall) - if (Open) - if (Powered) return 4844; - else return 4845; - else - if (Powered) return 4846; - else return 4847; - else - if (Open) - if (Powered) return 4848; - else return 4849; - else - if (Powered) return 4850; - else return 4851; - } - BlockState OakFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace OakLeaves - { - constexpr BlockState OakLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 145; - else return 146; - else if (Distance == 2) - if (Persistent) return 147; - else return 148; - else if (Distance == 3) - if (Persistent) return 149; - else return 150; - else if (Distance == 4) - if (Persistent) return 151; - else return 152; - else if (Distance == 5) - if (Persistent) return 153; - else return 154; - else if (Distance == 6) - if (Persistent) return 155; - else return 156; - else - if (Persistent) return 157; - else return 158; - } - BlockState OakLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace OakLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState OakLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 73; - else if (Axis == Axis::Y) return 74; - else return 75; - } - BlockState OakLog(); - enum Axis Axis(BlockState Block); - } - namespace OakPlanks - { - constexpr BlockState OakPlanks() - { - return 15; - } - } - namespace OakPressurePlate - { - constexpr BlockState OakPressurePlate(const bool Powered) - { - if (Powered) return 3873; - else return 3874; - } - BlockState OakPressurePlate(); - bool Powered(BlockState Block); - } - namespace OakSapling - { - constexpr BlockState OakSapling(const unsigned char Stage) - { - if (Stage == 0) return 21; - else return 22; - } - BlockState OakSapling(); - unsigned char Stage(BlockState Block); - } - namespace OakSign - { - constexpr BlockState OakSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3382; - else if (Rotation == 1) return 3384; - else if (Rotation == 2) return 3386; - else if (Rotation == 3) return 3388; - else if (Rotation == 4) return 3390; - else if (Rotation == 5) return 3392; - else if (Rotation == 6) return 3394; - else if (Rotation == 7) return 3396; - else if (Rotation == 8) return 3398; - else if (Rotation == 9) return 3400; - else if (Rotation == 10) return 3402; - else if (Rotation == 11) return 3404; - else if (Rotation == 12) return 3406; - else if (Rotation == 13) return 3408; - else if (Rotation == 14) return 3410; - else return 3412; - } - BlockState OakSign(); - unsigned char Rotation(BlockState Block); - } - namespace OakSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState OakSlab(const enum Type Type) - { - if (Type == Type::Top) return 8301; - else if (Type == Type::Bottom) return 8303; - else return 8305; - } - BlockState OakSlab(); - enum Type Type(BlockState Block); - } - namespace OakStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState OakStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 1955; - else if (Shape == Shape::InnerLeft) return 1957; - else if (Shape == Shape::InnerRight) return 1959; - else if (Shape == Shape::OuterLeft) return 1961; - else return 1963; - else - if (Shape == Shape::Straight) return 1965; - else if (Shape == Shape::InnerLeft) return 1967; - else if (Shape == Shape::InnerRight) return 1969; - else if (Shape == Shape::OuterLeft) return 1971; - else return 1973; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 1975; - else if (Shape == Shape::InnerLeft) return 1977; - else if (Shape == Shape::InnerRight) return 1979; - else if (Shape == Shape::OuterLeft) return 1981; - else return 1983; - else - if (Shape == Shape::Straight) return 1985; - else if (Shape == Shape::InnerLeft) return 1987; - else if (Shape == Shape::InnerRight) return 1989; - else if (Shape == Shape::OuterLeft) return 1991; - else return 1993; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 1995; - else if (Shape == Shape::InnerLeft) return 1997; - else if (Shape == Shape::InnerRight) return 1999; - else if (Shape == Shape::OuterLeft) return 2001; - else return 2003; - else - if (Shape == Shape::Straight) return 2005; - else if (Shape == Shape::InnerLeft) return 2007; - else if (Shape == Shape::InnerRight) return 2009; - else if (Shape == Shape::OuterLeft) return 2011; - else return 2013; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 2015; - else if (Shape == Shape::InnerLeft) return 2017; - else if (Shape == Shape::InnerRight) return 2019; - else if (Shape == Shape::OuterLeft) return 2021; - else return 2023; - else - if (Shape == Shape::Straight) return 2025; - else if (Shape == Shape::InnerLeft) return 2027; - else if (Shape == Shape::InnerRight) return 2029; - else if (Shape == Shape::OuterLeft) return 2031; - else return 2033; - } - BlockState OakStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace OakTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState OakTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4112; - else return 4114; - else - if (Powered) return 4116; - else return 4118; - else - if (Open) - if (Powered) return 4120; - else return 4122; - else - if (Powered) return 4124; - else return 4126; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4128; - else return 4130; - else - if (Powered) return 4132; - else return 4134; - else - if (Open) - if (Powered) return 4136; - else return 4138; - else - if (Powered) return 4140; - else return 4142; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4144; - else return 4146; - else - if (Powered) return 4148; - else return 4150; - else - if (Open) - if (Powered) return 4152; - else return 4154; - else - if (Powered) return 4156; - else return 4158; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4160; - else return 4162; - else - if (Powered) return 4164; - else return 4166; - else - if (Open) - if (Powered) return 4168; - else return 4170; - else - if (Powered) return 4172; - else return 4174; - } - BlockState OakTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace OakWallSign - { - constexpr BlockState OakWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3736; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3738; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3740; - else return 3742; - } - BlockState OakWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace OakWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState OakWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 109; - else if (Axis == Axis::Y) return 110; - else return 111; - } - BlockState OakWood(); - enum Axis Axis(BlockState Block); - } - namespace Observer - { - constexpr BlockState Observer(const eBlockFace Facing, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 9260; - else return 9261; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Powered) return 9262; - else return 9263; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 9264; - else return 9265; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 9266; - else return 9267; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Powered) return 9268; - else return 9269; - else - if (Powered) return 9270; - else return 9271; - } - BlockState Observer(); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace Obsidian - { - constexpr BlockState Obsidian() - { - return 1434; - } - } - namespace OrangeBanner - { - constexpr BlockState OrangeBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7913; - else if (Rotation == 1) return 7914; - else if (Rotation == 2) return 7915; - else if (Rotation == 3) return 7916; - else if (Rotation == 4) return 7917; - else if (Rotation == 5) return 7918; - else if (Rotation == 6) return 7919; - else if (Rotation == 7) return 7920; - else if (Rotation == 8) return 7921; - else if (Rotation == 9) return 7922; - else if (Rotation == 10) return 7923; - else if (Rotation == 11) return 7924; - else if (Rotation == 12) return 7925; - else if (Rotation == 13) return 7926; - else if (Rotation == 14) return 7927; - else return 7928; - } - BlockState OrangeBanner(); - unsigned char Rotation(BlockState Block); - } - namespace OrangeBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState OrangeBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1065; - else return 1066; - else - if (Part == Part::Head) return 1067; - else return 1068; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1069; - else return 1070; - else - if (Part == Part::Head) return 1071; - else return 1072; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1073; - else return 1074; - else - if (Part == Part::Head) return 1075; - else return 1076; - else - if (Occupied) - if (Part == Part::Head) return 1077; - else return 1078; - else - if (Part == Part::Head) return 1079; - else return 1080; - } - BlockState OrangeBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace OrangeCarpet - { - constexpr BlockState OrangeCarpet() - { - return 7867; - } - } - namespace OrangeConcrete - { - constexpr BlockState OrangeConcrete() - { - return 9439; - } - } - namespace OrangeConcretePowder - { - constexpr BlockState OrangeConcretePowder() - { - return 9455; - } - } - namespace OrangeGlazedTerracotta - { - constexpr BlockState OrangeGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9378; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9379; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9380; - else return 9381; - } - BlockState OrangeGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace OrangeShulkerBox - { - constexpr BlockState OrangeShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9284; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9285; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9286; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9287; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9288; - else return 9289; - } - BlockState OrangeShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace OrangeStainedGlass - { - constexpr BlockState OrangeStainedGlass() - { - return 4096; - } - } - namespace OrangeStainedGlassPane - { - constexpr BlockState OrangeStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 6897; - else return 6898; - else - if (West) return 6901; - else return 6902; - else - if (South) - if (West) return 6905; - else return 6906; - else - if (West) return 6909; - else return 6910; + return 8519; + else if (Powered) + return 8520; + else + return 8521; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 8522; + else + return 8523; + else if (Powered) + return 8524; else - if (North) - if (South) - if (West) return 6913; - else return 6914; - else - if (West) return 6917; - else return 6918; - else - if (South) - if (West) return 6921; - else return 6922; - else - if (West) return 6925; - else return 6926; - } - BlockState OrangeStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace OrangeTerracotta - { - constexpr BlockState OrangeTerracotta() - { - return 6848; - } - } - namespace OrangeTulip - { - constexpr BlockState OrangeTulip() - { - return 1418; - } - } - namespace OrangeWallBanner - { - constexpr BlockState OrangeWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8157; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8158; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8159; - else return 8160; - } - BlockState OrangeWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace OrangeWool - { - constexpr BlockState OrangeWool() - { - return 1385; - } - } - namespace OxeyeDaisy - { - constexpr BlockState OxeyeDaisy() - { - return 1421; - } - } - namespace PackedIce - { - constexpr BlockState PackedIce() - { - return 7884; - } - } - namespace Peony - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState Peony(const enum Half Half) - { - if (Half == Half::Upper) return 7891; - else return 7892; - } - BlockState Peony(); - enum Half Half(BlockState Block); - } - namespace PetrifiedOakSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PetrifiedOakSlab(const enum Type Type) - { - if (Type == Type::Top) return 8361; - else if (Type == Type::Bottom) return 8363; - else return 8365; - } - BlockState PetrifiedOakSlab(); - enum Type Type(BlockState Block); - } - namespace PinkBanner - { - constexpr BlockState PinkBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7993; - else if (Rotation == 1) return 7994; - else if (Rotation == 2) return 7995; - else if (Rotation == 3) return 7996; - else if (Rotation == 4) return 7997; - else if (Rotation == 5) return 7998; - else if (Rotation == 6) return 7999; - else if (Rotation == 7) return 8000; - else if (Rotation == 8) return 8001; - else if (Rotation == 9) return 8002; - else if (Rotation == 10) return 8003; - else if (Rotation == 11) return 8004; - else if (Rotation == 12) return 8005; - else if (Rotation == 13) return 8006; - else if (Rotation == 14) return 8007; - else return 8008; - } - BlockState PinkBanner(); - unsigned char Rotation(BlockState Block); - } - namespace PinkBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState PinkBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1145; - else return 1146; - else - if (Part == Part::Head) return 1147; - else return 1148; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1149; - else return 1150; - else - if (Part == Part::Head) return 1151; - else return 1152; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1153; - else return 1154; - else - if (Part == Part::Head) return 1155; - else return 1156; - else - if (Occupied) - if (Part == Part::Head) return 1157; - else return 1158; - else - if (Part == Part::Head) return 1159; - else return 1160; - } - BlockState PinkBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace PinkCarpet - { - constexpr BlockState PinkCarpet() - { - return 7872; - } - } - namespace PinkConcrete - { - constexpr BlockState PinkConcrete() - { - return 9444; - } - } - namespace PinkConcretePowder - { - constexpr BlockState PinkConcretePowder() - { - return 9460; - } - } - namespace PinkGlazedTerracotta - { - constexpr BlockState PinkGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9398; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9399; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9400; - else return 9401; - } - BlockState PinkGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace PinkShulkerBox - { - constexpr BlockState PinkShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9314; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9315; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9316; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9317; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9318; - else return 9319; - } - BlockState PinkShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace PinkStainedGlass - { - constexpr BlockState PinkStainedGlass() - { - return 4101; - } - } - namespace PinkStainedGlassPane - { - constexpr BlockState PinkStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7057; - else return 7058; - else - if (West) return 7061; - else return 7062; - else - if (South) - if (West) return 7065; - else return 7066; - else - if (West) return 7069; - else return 7070; + return 8525; + else if (Open) + if (Powered) + return 8526; else - if (North) - if (South) - if (West) return 7073; - else return 7074; - else - if (West) return 7077; - else return 7078; - else - if (South) - if (West) return 7081; - else return 7082; - else - if (West) return 7085; - else return 7086; - } - BlockState PinkStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace PinkTerracotta - { - constexpr BlockState PinkTerracotta() - { - return 6853; - } - } - namespace PinkTulip - { - constexpr BlockState PinkTulip() - { - return 1420; - } - } - namespace PinkWallBanner - { - constexpr BlockState PinkWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8177; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8178; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8179; - else return 8180; - } - BlockState PinkWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace PinkWool - { - constexpr BlockState PinkWool() - { - return 1390; - } - } - namespace Piston - { - constexpr BlockState Piston(const bool Extended, const eBlockFace Facing) - { - if (Extended) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1348; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 1349; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1350; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 1351; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 1352; - else return 1353; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1354; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 1355; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1356; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 1357; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 1358; - else return 1359; - } - BlockState Piston(); - bool Extended(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace PistonHead - { - enum class Type - { - Normal, - Sticky - }; - constexpr BlockState PistonHead(const eBlockFace Facing, const bool Short, const enum Type Type) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Short) - if (Type == Type::Normal) return 1360; - else return 1361; - else - if (Type == Type::Normal) return 1362; - else return 1363; - else if (Facing == eBlockFace::BLOCK_FACE_XP) - if (Short) - if (Type == Type::Normal) return 1364; - else return 1365; - else - if (Type == Type::Normal) return 1366; - else return 1367; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Short) - if (Type == Type::Normal) return 1368; - else return 1369; - else - if (Type == Type::Normal) return 1370; - else return 1371; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Short) - if (Type == Type::Normal) return 1372; - else return 1373; - else - if (Type == Type::Normal) return 1374; - else return 1375; - else if (Facing == eBlockFace::BLOCK_FACE_YP) - if (Short) - if (Type == Type::Normal) return 1376; - else return 1377; - else - if (Type == Type::Normal) return 1378; - else return 1379; - else - if (Short) - if (Type == Type::Normal) return 1380; - else return 1381; - else - if (Type == Type::Normal) return 1382; - else return 1383; - } - BlockState PistonHead(); - eBlockFace Facing(BlockState Block); - bool Short(BlockState Block); - enum Type Type(BlockState Block); - } - namespace PlayerHead - { - constexpr BlockState PlayerHead(const unsigned char Rotation) - { - if (Rotation == 0) return 6550; - else if (Rotation == 1) return 6551; - else if (Rotation == 2) return 6552; - else if (Rotation == 3) return 6553; - else if (Rotation == 4) return 6554; - else if (Rotation == 5) return 6555; - else if (Rotation == 6) return 6556; - else if (Rotation == 7) return 6557; - else if (Rotation == 8) return 6558; - else if (Rotation == 9) return 6559; - else if (Rotation == 10) return 6560; - else if (Rotation == 11) return 6561; - else if (Rotation == 12) return 6562; - else if (Rotation == 13) return 6563; - else if (Rotation == 14) return 6564; - else return 6565; - } - BlockState PlayerHead(); - unsigned char Rotation(BlockState Block); - } - namespace PlayerWallHead - { - constexpr BlockState PlayerWallHead(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6566; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6567; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6568; - else return 6569; - } - BlockState PlayerWallHead(); - eBlockFace Facing(BlockState Block); - } - namespace Podzol - { - constexpr BlockState Podzol(const bool Snowy) - { - if (Snowy) return 12; - else return 13; - } - BlockState Podzol(); - bool Snowy(BlockState Block); - } - namespace PolishedAndesite - { - constexpr BlockState PolishedAndesite() - { - return 7; - } - } - namespace PolishedAndesiteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PolishedAndesiteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10856; - else if (Type == Type::Bottom) return 10858; - else return 10860; - } - BlockState PolishedAndesiteSlab(); - enum Type Type(BlockState Block); - } - namespace PolishedAndesiteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PolishedAndesiteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10630; - else if (Shape == Shape::InnerLeft) return 10632; - else if (Shape == Shape::InnerRight) return 10634; - else if (Shape == Shape::OuterLeft) return 10636; - else return 10638; - else - if (Shape == Shape::Straight) return 10640; - else if (Shape == Shape::InnerLeft) return 10642; - else if (Shape == Shape::InnerRight) return 10644; - else if (Shape == Shape::OuterLeft) return 10646; - else return 10648; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10650; - else if (Shape == Shape::InnerLeft) return 10652; - else if (Shape == Shape::InnerRight) return 10654; - else if (Shape == Shape::OuterLeft) return 10656; - else return 10658; - else - if (Shape == Shape::Straight) return 10660; - else if (Shape == Shape::InnerLeft) return 10662; - else if (Shape == Shape::InnerRight) return 10664; - else if (Shape == Shape::OuterLeft) return 10666; - else return 10668; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10670; - else if (Shape == Shape::InnerLeft) return 10672; - else if (Shape == Shape::InnerRight) return 10674; - else if (Shape == Shape::OuterLeft) return 10676; - else return 10678; - else - if (Shape == Shape::Straight) return 10680; - else if (Shape == Shape::InnerLeft) return 10682; - else if (Shape == Shape::InnerRight) return 10684; - else if (Shape == Shape::OuterLeft) return 10686; - else return 10688; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10690; - else if (Shape == Shape::InnerLeft) return 10692; - else if (Shape == Shape::InnerRight) return 10694; - else if (Shape == Shape::OuterLeft) return 10696; - else return 10698; - else - if (Shape == Shape::Straight) return 10700; - else if (Shape == Shape::InnerLeft) return 10702; - else if (Shape == Shape::InnerRight) return 10704; - else if (Shape == Shape::OuterLeft) return 10706; - else return 10708; - } - BlockState PolishedAndesiteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace PolishedBasalt - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState PolishedBasalt(const enum Axis Axis) - { - if (Axis == Axis::X) return 4005; - else if (Axis == Axis::Y) return 4006; - else return 4007; - } - BlockState PolishedBasalt(); - enum Axis Axis(BlockState Block); - } - namespace PolishedBlackstone - { - constexpr BlockState PolishedBlackstone() - { - return 16250; - } - } - namespace PolishedBlackstoneBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PolishedBlackstoneBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 16255; - else if (Type == Type::Bottom) return 16257; - else return 16259; - } - BlockState PolishedBlackstoneBrickSlab(); - enum Type Type(BlockState Block); - } - namespace PolishedBlackstoneBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PolishedBlackstoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16261; - else if (Shape == Shape::InnerLeft) return 16263; - else if (Shape == Shape::InnerRight) return 16265; - else if (Shape == Shape::OuterLeft) return 16267; - else return 16269; - else - if (Shape == Shape::Straight) return 16271; - else if (Shape == Shape::InnerLeft) return 16273; - else if (Shape == Shape::InnerRight) return 16275; - else if (Shape == Shape::OuterLeft) return 16277; - else return 16279; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16281; - else if (Shape == Shape::InnerLeft) return 16283; - else if (Shape == Shape::InnerRight) return 16285; - else if (Shape == Shape::OuterLeft) return 16287; - else return 16289; - else - if (Shape == Shape::Straight) return 16291; - else if (Shape == Shape::InnerLeft) return 16293; - else if (Shape == Shape::InnerRight) return 16295; - else if (Shape == Shape::OuterLeft) return 16297; - else return 16299; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16301; - else if (Shape == Shape::InnerLeft) return 16303; - else if (Shape == Shape::InnerRight) return 16305; - else if (Shape == Shape::OuterLeft) return 16307; - else return 16309; - else - if (Shape == Shape::Straight) return 16311; - else if (Shape == Shape::InnerLeft) return 16313; - else if (Shape == Shape::InnerRight) return 16315; - else if (Shape == Shape::OuterLeft) return 16317; - else return 16319; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16321; - else if (Shape == Shape::InnerLeft) return 16323; - else if (Shape == Shape::InnerRight) return 16325; - else if (Shape == Shape::OuterLeft) return 16327; - else return 16329; - else - if (Shape == Shape::Straight) return 16331; - else if (Shape == Shape::InnerLeft) return 16333; - else if (Shape == Shape::InnerRight) return 16335; - else if (Shape == Shape::OuterLeft) return 16337; - else return 16339; - } - BlockState PolishedBlackstoneBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState PolishedBlackstoneBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16343; - else if (West == West::Low) return 16344; - else return 16345; - else - if (West == West::None) return 16349; - else if (West == West::Low) return 16350; - else return 16351; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16355; - else if (West == West::Low) return 16356; - else return 16357; - else - if (West == West::None) return 16361; - else if (West == West::Low) return 16362; - else return 16363; - else - if (Up) - if (West == West::None) return 16367; - else if (West == West::Low) return 16368; - else return 16369; - else - if (West == West::None) return 16373; - else if (West == West::Low) return 16374; - else return 16375; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16379; - else if (West == West::Low) return 16380; - else return 16381; - else - if (West == West::None) return 16385; - else if (West == West::Low) return 16386; - else return 16387; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16391; - else if (West == West::Low) return 16392; - else return 16393; - else - if (West == West::None) return 16397; - else if (West == West::Low) return 16398; - else return 16399; - else - if (Up) - if (West == West::None) return 16403; - else if (West == West::Low) return 16404; - else return 16405; - else - if (West == West::None) return 16409; - else if (West == West::Low) return 16410; - else return 16411; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16415; - else if (West == West::Low) return 16416; - else return 16417; - else - if (West == West::None) return 16421; - else if (West == West::Low) return 16422; - else return 16423; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16427; - else if (West == West::Low) return 16428; - else return 16429; - else - if (West == West::None) return 16433; - else if (West == West::Low) return 16434; - else return 16435; - else - if (Up) - if (West == West::None) return 16439; - else if (West == West::Low) return 16440; - else return 16441; - else - if (West == West::None) return 16445; - else if (West == West::Low) return 16446; - else return 16447; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16451; - else if (West == West::Low) return 16452; - else return 16453; - else - if (West == West::None) return 16457; - else if (West == West::Low) return 16458; - else return 16459; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16463; - else if (West == West::Low) return 16464; - else return 16465; - else - if (West == West::None) return 16469; - else if (West == West::Low) return 16470; - else return 16471; - else - if (Up) - if (West == West::None) return 16475; - else if (West == West::Low) return 16476; - else return 16477; - else - if (West == West::None) return 16481; - else if (West == West::Low) return 16482; - else return 16483; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16487; - else if (West == West::Low) return 16488; - else return 16489; - else - if (West == West::None) return 16493; - else if (West == West::Low) return 16494; - else return 16495; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16499; - else if (West == West::Low) return 16500; - else return 16501; - else - if (West == West::None) return 16505; - else if (West == West::Low) return 16506; - else return 16507; - else - if (Up) - if (West == West::None) return 16511; - else if (West == West::Low) return 16512; - else return 16513; - else - if (West == West::None) return 16517; - else if (West == West::Low) return 16518; - else return 16519; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16523; - else if (West == West::Low) return 16524; - else return 16525; - else - if (West == West::None) return 16529; - else if (West == West::Low) return 16530; - else return 16531; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16535; - else if (West == West::Low) return 16536; - else return 16537; - else - if (West == West::None) return 16541; - else if (West == West::Low) return 16542; - else return 16543; - else - if (Up) - if (West == West::None) return 16547; - else if (West == West::Low) return 16548; - else return 16549; - else - if (West == West::None) return 16553; - else if (West == West::Low) return 16554; - else return 16555; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16559; - else if (West == West::Low) return 16560; - else return 16561; - else - if (West == West::None) return 16565; - else if (West == West::Low) return 16566; - else return 16567; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16571; - else if (West == West::Low) return 16572; - else return 16573; - else - if (West == West::None) return 16577; - else if (West == West::Low) return 16578; - else return 16579; - else - if (Up) - if (West == West::None) return 16583; - else if (West == West::Low) return 16584; - else return 16585; - else - if (West == West::None) return 16589; - else if (West == West::Low) return 16590; - else return 16591; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16595; - else if (West == West::Low) return 16596; - else return 16597; - else - if (West == West::None) return 16601; - else if (West == West::Low) return 16602; - else return 16603; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16607; - else if (West == West::Low) return 16608; - else return 16609; - else - if (West == West::None) return 16613; - else if (West == West::Low) return 16614; - else return 16615; - else - if (Up) - if (West == West::None) return 16619; - else if (West == West::Low) return 16620; - else return 16621; - else - if (West == West::None) return 16625; - else if (West == West::Low) return 16626; - else return 16627; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16631; - else if (West == West::Low) return 16632; - else return 16633; - else - if (West == West::None) return 16637; - else if (West == West::Low) return 16638; - else return 16639; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16643; - else if (West == West::Low) return 16644; - else return 16645; - else - if (West == West::None) return 16649; - else if (West == West::Low) return 16650; - else return 16651; - else - if (Up) - if (West == West::None) return 16655; - else if (West == West::Low) return 16656; - else return 16657; - else - if (West == West::None) return 16661; - else if (West == West::Low) return 16662; - else return 16663; - } - BlockState PolishedBlackstoneBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace PolishedBlackstoneBricks - { - constexpr BlockState PolishedBlackstoneBricks() - { - return 16251; - } - } - namespace PolishedBlackstoneButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState PolishedBlackstoneButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 16753; - else return 16754; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 16755; - else return 16756; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 16757; - else return 16758; - else - if (Powered) return 16759; - else return 16760; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 16761; - else return 16762; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 16763; - else return 16764; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 16765; - else return 16766; - else - if (Powered) return 16767; - else return 16768; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 16769; - else return 16770; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 16771; - else return 16772; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 16773; - else return 16774; - else - if (Powered) return 16775; - else return 16776; - } - BlockState PolishedBlackstoneButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace PolishedBlackstonePressurePlate - { - constexpr BlockState PolishedBlackstonePressurePlate(const bool Powered) - { - if (Powered) return 16751; - else return 16752; - } - BlockState PolishedBlackstonePressurePlate(); - bool Powered(BlockState Block); - } - namespace PolishedBlackstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PolishedBlackstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 16746; - else if (Type == Type::Bottom) return 16748; - else return 16750; - } - BlockState PolishedBlackstoneSlab(); - enum Type Type(BlockState Block); - } - namespace PolishedBlackstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PolishedBlackstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16666; - else if (Shape == Shape::InnerLeft) return 16668; - else if (Shape == Shape::InnerRight) return 16670; - else if (Shape == Shape::OuterLeft) return 16672; - else return 16674; - else - if (Shape == Shape::Straight) return 16676; - else if (Shape == Shape::InnerLeft) return 16678; - else if (Shape == Shape::InnerRight) return 16680; - else if (Shape == Shape::OuterLeft) return 16682; - else return 16684; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16686; - else if (Shape == Shape::InnerLeft) return 16688; - else if (Shape == Shape::InnerRight) return 16690; - else if (Shape == Shape::OuterLeft) return 16692; - else return 16694; - else - if (Shape == Shape::Straight) return 16696; - else if (Shape == Shape::InnerLeft) return 16698; - else if (Shape == Shape::InnerRight) return 16700; - else if (Shape == Shape::OuterLeft) return 16702; - else return 16704; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16706; - else if (Shape == Shape::InnerLeft) return 16708; - else if (Shape == Shape::InnerRight) return 16710; - else if (Shape == Shape::OuterLeft) return 16712; - else return 16714; - else - if (Shape == Shape::Straight) return 16716; - else if (Shape == Shape::InnerLeft) return 16718; - else if (Shape == Shape::InnerRight) return 16720; - else if (Shape == Shape::OuterLeft) return 16722; - else return 16724; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 16726; - else if (Shape == Shape::InnerLeft) return 16728; - else if (Shape == Shape::InnerRight) return 16730; - else if (Shape == Shape::OuterLeft) return 16732; - else return 16734; - else - if (Shape == Shape::Straight) return 16736; - else if (Shape == Shape::InnerLeft) return 16738; - else if (Shape == Shape::InnerRight) return 16740; - else if (Shape == Shape::OuterLeft) return 16742; - else return 16744; - } - BlockState PolishedBlackstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState PolishedBlackstoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16780; - else if (West == West::Low) return 16781; - else return 16782; - else - if (West == West::None) return 16786; - else if (West == West::Low) return 16787; - else return 16788; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16792; - else if (West == West::Low) return 16793; - else return 16794; - else - if (West == West::None) return 16798; - else if (West == West::Low) return 16799; - else return 16800; - else - if (Up) - if (West == West::None) return 16804; - else if (West == West::Low) return 16805; - else return 16806; - else - if (West == West::None) return 16810; - else if (West == West::Low) return 16811; - else return 16812; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16816; - else if (West == West::Low) return 16817; - else return 16818; - else - if (West == West::None) return 16822; - else if (West == West::Low) return 16823; - else return 16824; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16828; - else if (West == West::Low) return 16829; - else return 16830; - else - if (West == West::None) return 16834; - else if (West == West::Low) return 16835; - else return 16836; - else - if (Up) - if (West == West::None) return 16840; - else if (West == West::Low) return 16841; - else return 16842; - else - if (West == West::None) return 16846; - else if (West == West::Low) return 16847; - else return 16848; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16852; - else if (West == West::Low) return 16853; - else return 16854; - else - if (West == West::None) return 16858; - else if (West == West::Low) return 16859; - else return 16860; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16864; - else if (West == West::Low) return 16865; - else return 16866; - else - if (West == West::None) return 16870; - else if (West == West::Low) return 16871; - else return 16872; - else - if (Up) - if (West == West::None) return 16876; - else if (West == West::Low) return 16877; - else return 16878; - else - if (West == West::None) return 16882; - else if (West == West::Low) return 16883; - else return 16884; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16888; - else if (West == West::Low) return 16889; - else return 16890; - else - if (West == West::None) return 16894; - else if (West == West::Low) return 16895; - else return 16896; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16900; - else if (West == West::Low) return 16901; - else return 16902; - else - if (West == West::None) return 16906; - else if (West == West::Low) return 16907; - else return 16908; - else - if (Up) - if (West == West::None) return 16912; - else if (West == West::Low) return 16913; - else return 16914; - else - if (West == West::None) return 16918; - else if (West == West::Low) return 16919; - else return 16920; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 16924; - else if (West == West::Low) return 16925; - else return 16926; - else - if (West == West::None) return 16930; - else if (West == West::Low) return 16931; - else return 16932; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16936; - else if (West == West::Low) return 16937; - else return 16938; - else - if (West == West::None) return 16942; - else if (West == West::Low) return 16943; - else return 16944; - else - if (Up) - if (West == West::None) return 16948; - else if (West == West::Low) return 16949; - else return 16950; - else - if (West == West::None) return 16954; - else if (West == West::Low) return 16955; - else return 16956; - else - if (South == South::None) - if (Up) - if (West == West::None) return 16960; - else if (West == West::Low) return 16961; - else return 16962; - else - if (West == West::None) return 16966; - else if (West == West::Low) return 16967; - else return 16968; - else if (South == South::Low) - if (Up) - if (West == West::None) return 16972; - else if (West == West::Low) return 16973; - else return 16974; - else - if (West == West::None) return 16978; - else if (West == West::Low) return 16979; - else return 16980; - else - if (Up) - if (West == West::None) return 16984; - else if (West == West::Low) return 16985; - else return 16986; - else - if (West == West::None) return 16990; - else if (West == West::Low) return 16991; - else return 16992; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 16996; - else if (West == West::Low) return 16997; - else return 16998; - else - if (West == West::None) return 17002; - else if (West == West::Low) return 17003; - else return 17004; - else if (South == South::Low) - if (Up) - if (West == West::None) return 17008; - else if (West == West::Low) return 17009; - else return 17010; - else - if (West == West::None) return 17014; - else if (West == West::Low) return 17015; - else return 17016; - else - if (Up) - if (West == West::None) return 17020; - else if (West == West::Low) return 17021; - else return 17022; - else - if (West == West::None) return 17026; - else if (West == West::Low) return 17027; - else return 17028; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 17032; - else if (West == West::Low) return 17033; - else return 17034; - else - if (West == West::None) return 17038; - else if (West == West::Low) return 17039; - else return 17040; - else if (South == South::Low) - if (Up) - if (West == West::None) return 17044; - else if (West == West::Low) return 17045; - else return 17046; - else - if (West == West::None) return 17050; - else if (West == West::Low) return 17051; - else return 17052; - else - if (Up) - if (West == West::None) return 17056; - else if (West == West::Low) return 17057; - else return 17058; - else - if (West == West::None) return 17062; - else if (West == West::Low) return 17063; - else return 17064; - else - if (South == South::None) - if (Up) - if (West == West::None) return 17068; - else if (West == West::Low) return 17069; - else return 17070; - else - if (West == West::None) return 17074; - else if (West == West::Low) return 17075; - else return 17076; - else if (South == South::Low) - if (Up) - if (West == West::None) return 17080; - else if (West == West::Low) return 17081; - else return 17082; - else - if (West == West::None) return 17086; - else if (West == West::Low) return 17087; - else return 17088; - else - if (Up) - if (West == West::None) return 17092; - else if (West == West::Low) return 17093; - else return 17094; - else - if (West == West::None) return 17098; - else if (West == West::Low) return 17099; - else return 17100; - } - BlockState PolishedBlackstoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace PolishedDiorite - { - constexpr BlockState PolishedDiorite() - { - return 5; - } - } - namespace PolishedDioriteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PolishedDioriteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10808; - else if (Type == Type::Bottom) return 10810; - else return 10812; - } - BlockState PolishedDioriteSlab(); - enum Type Type(BlockState Block); - } - namespace PolishedDioriteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PolishedDioriteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9910; - else if (Shape == Shape::InnerLeft) return 9912; - else if (Shape == Shape::InnerRight) return 9914; - else if (Shape == Shape::OuterLeft) return 9916; - else return 9918; - else - if (Shape == Shape::Straight) return 9920; - else if (Shape == Shape::InnerLeft) return 9922; - else if (Shape == Shape::InnerRight) return 9924; - else if (Shape == Shape::OuterLeft) return 9926; - else return 9928; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9930; - else if (Shape == Shape::InnerLeft) return 9932; - else if (Shape == Shape::InnerRight) return 9934; - else if (Shape == Shape::OuterLeft) return 9936; - else return 9938; - else - if (Shape == Shape::Straight) return 9940; - else if (Shape == Shape::InnerLeft) return 9942; - else if (Shape == Shape::InnerRight) return 9944; - else if (Shape == Shape::OuterLeft) return 9946; - else return 9948; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9950; - else if (Shape == Shape::InnerLeft) return 9952; - else if (Shape == Shape::InnerRight) return 9954; - else if (Shape == Shape::OuterLeft) return 9956; - else return 9958; - else - if (Shape == Shape::Straight) return 9960; - else if (Shape == Shape::InnerLeft) return 9962; - else if (Shape == Shape::InnerRight) return 9964; - else if (Shape == Shape::OuterLeft) return 9966; - else return 9968; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9970; - else if (Shape == Shape::InnerLeft) return 9972; - else if (Shape == Shape::InnerRight) return 9974; - else if (Shape == Shape::OuterLeft) return 9976; - else return 9978; - else - if (Shape == Shape::Straight) return 9980; - else if (Shape == Shape::InnerLeft) return 9982; - else if (Shape == Shape::InnerRight) return 9984; - else if (Shape == Shape::OuterLeft) return 9986; - else return 9988; - } - BlockState PolishedDioriteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace PolishedGranite - { - constexpr BlockState PolishedGranite() - { - return 3; - } - } - namespace PolishedGraniteSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PolishedGraniteSlab(const enum Type Type) - { - if (Type == Type::Top) return 10790; - else if (Type == Type::Bottom) return 10792; - else return 10794; - } - BlockState PolishedGraniteSlab(); - enum Type Type(BlockState Block); - } - namespace PolishedGraniteStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PolishedGraniteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9670; - else if (Shape == Shape::InnerLeft) return 9672; - else if (Shape == Shape::InnerRight) return 9674; - else if (Shape == Shape::OuterLeft) return 9676; - else return 9678; - else - if (Shape == Shape::Straight) return 9680; - else if (Shape == Shape::InnerLeft) return 9682; - else if (Shape == Shape::InnerRight) return 9684; - else if (Shape == Shape::OuterLeft) return 9686; - else return 9688; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9690; - else if (Shape == Shape::InnerLeft) return 9692; - else if (Shape == Shape::InnerRight) return 9694; - else if (Shape == Shape::OuterLeft) return 9696; - else return 9698; - else - if (Shape == Shape::Straight) return 9700; - else if (Shape == Shape::InnerLeft) return 9702; - else if (Shape == Shape::InnerRight) return 9704; - else if (Shape == Shape::OuterLeft) return 9706; - else return 9708; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9710; - else if (Shape == Shape::InnerLeft) return 9712; - else if (Shape == Shape::InnerRight) return 9714; - else if (Shape == Shape::OuterLeft) return 9716; - else return 9718; - else - if (Shape == Shape::Straight) return 9720; - else if (Shape == Shape::InnerLeft) return 9722; - else if (Shape == Shape::InnerRight) return 9724; - else if (Shape == Shape::OuterLeft) return 9726; - else return 9728; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9730; - else if (Shape == Shape::InnerLeft) return 9732; - else if (Shape == Shape::InnerRight) return 9734; - else if (Shape == Shape::OuterLeft) return 9736; - else return 9738; - else - if (Shape == Shape::Straight) return 9740; - else if (Shape == Shape::InnerLeft) return 9742; - else if (Shape == Shape::InnerRight) return 9744; - else if (Shape == Shape::OuterLeft) return 9746; - else return 9748; - } - BlockState PolishedGraniteStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace Poppy - { - constexpr BlockState Poppy() - { - return 1413; - } - } - namespace Potatoes - { - constexpr BlockState Potatoes(const unsigned char Age) - { - if (Age == 0) return 6338; - else if (Age == 1) return 6339; - else if (Age == 2) return 6340; - else if (Age == 3) return 6341; - else if (Age == 4) return 6342; - else if (Age == 5) return 6343; - else if (Age == 6) return 6344; - else return 6345; - } - BlockState Potatoes(); - unsigned char Age(BlockState Block); - } - namespace PottedAcaciaSapling - { - constexpr BlockState PottedAcaciaSapling() - { - return 6310; - } - } - namespace PottedAllium - { - constexpr BlockState PottedAllium() - { - return 6316; - } - } - namespace PottedAzureBluet - { - constexpr BlockState PottedAzureBluet() - { - return 6317; - } - } - namespace PottedBamboo - { - constexpr BlockState PottedBamboo() - { - return 9664; - } - } - namespace PottedBirchSapling - { - constexpr BlockState PottedBirchSapling() - { - return 6308; - } - } - namespace PottedBlueOrchid - { - constexpr BlockState PottedBlueOrchid() - { - return 6315; - } - } - namespace PottedBrownMushroom - { - constexpr BlockState PottedBrownMushroom() - { - return 6327; - } - } - namespace PottedCactus - { - constexpr BlockState PottedCactus() - { - return 6329; - } - } - namespace PottedCornflower - { - constexpr BlockState PottedCornflower() - { - return 6323; - } - } - namespace PottedCrimsonFungus - { - constexpr BlockState PottedCrimsonFungus() - { - return 15834; - } - } - namespace PottedCrimsonRoots - { - constexpr BlockState PottedCrimsonRoots() - { - return 15836; - } - } - namespace PottedDandelion - { - constexpr BlockState PottedDandelion() - { - return 6313; - } - } - namespace PottedDarkOakSapling - { - constexpr BlockState PottedDarkOakSapling() - { - return 6311; - } - } - namespace PottedDeadBush - { - constexpr BlockState PottedDeadBush() - { - return 6328; - } - } - namespace PottedFern - { - constexpr BlockState PottedFern() - { - return 6312; - } - } - namespace PottedJungleSapling - { - constexpr BlockState PottedJungleSapling() - { - return 6309; - } - } - namespace PottedLilyOfTheValley - { - constexpr BlockState PottedLilyOfTheValley() - { - return 6324; - } - } - namespace PottedOakSapling - { - constexpr BlockState PottedOakSapling() - { - return 6306; - } - } - namespace PottedOrangeTulip - { - constexpr BlockState PottedOrangeTulip() - { - return 6319; - } - } - namespace PottedOxeyeDaisy - { - constexpr BlockState PottedOxeyeDaisy() - { - return 6322; - } - } - namespace PottedPinkTulip - { - constexpr BlockState PottedPinkTulip() - { - return 6321; - } - } - namespace PottedPoppy - { - constexpr BlockState PottedPoppy() - { - return 6314; - } - } - namespace PottedRedMushroom - { - constexpr BlockState PottedRedMushroom() - { - return 6326; - } - } - namespace PottedRedTulip - { - constexpr BlockState PottedRedTulip() - { - return 6318; - } - } - namespace PottedSpruceSapling - { - constexpr BlockState PottedSpruceSapling() - { - return 6307; - } - } - namespace PottedWarpedFungus - { - constexpr BlockState PottedWarpedFungus() - { - return 15835; - } - } - namespace PottedWarpedRoots - { - constexpr BlockState PottedWarpedRoots() - { - return 15837; - } - } - namespace PottedWhiteTulip - { - constexpr BlockState PottedWhiteTulip() - { - return 6320; - } - } - namespace PottedWitherRose - { - constexpr BlockState PottedWitherRose() - { - return 6325; - } - } - namespace PoweredRail - { - enum class Shape - { - NorthSouth, - EastWest, - AscendingEast, - AscendingWest, - AscendingNorth, - AscendingSouth - }; - constexpr BlockState PoweredRail(const bool Powered, const enum Shape Shape) - { - if (Powered) - if (Shape == Shape::NorthSouth) return 1305; - else if (Shape == Shape::EastWest) return 1306; - else if (Shape == Shape::AscendingEast) return 1307; - else if (Shape == Shape::AscendingWest) return 1308; - else if (Shape == Shape::AscendingNorth) return 1309; - else return 1310; - else - if (Shape == Shape::NorthSouth) return 1311; - else if (Shape == Shape::EastWest) return 1312; - else if (Shape == Shape::AscendingEast) return 1313; - else if (Shape == Shape::AscendingWest) return 1314; - else if (Shape == Shape::AscendingNorth) return 1315; - else return 1316; - } - BlockState PoweredRail(); - bool Powered(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace Prismarine - { - constexpr BlockState Prismarine() - { - return 7601; - } - } - namespace PrismarineBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PrismarineBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 7851; - else if (Type == Type::Bottom) return 7853; - else return 7855; - } - BlockState PrismarineBrickSlab(); - enum Type Type(BlockState Block); - } - namespace PrismarineBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PrismarineBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7685; - else if (Shape == Shape::InnerLeft) return 7687; - else if (Shape == Shape::InnerRight) return 7689; - else if (Shape == Shape::OuterLeft) return 7691; - else return 7693; - else - if (Shape == Shape::Straight) return 7695; - else if (Shape == Shape::InnerLeft) return 7697; - else if (Shape == Shape::InnerRight) return 7699; - else if (Shape == Shape::OuterLeft) return 7701; - else return 7703; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7705; - else if (Shape == Shape::InnerLeft) return 7707; - else if (Shape == Shape::InnerRight) return 7709; - else if (Shape == Shape::OuterLeft) return 7711; - else return 7713; - else - if (Shape == Shape::Straight) return 7715; - else if (Shape == Shape::InnerLeft) return 7717; - else if (Shape == Shape::InnerRight) return 7719; - else if (Shape == Shape::OuterLeft) return 7721; - else return 7723; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7725; - else if (Shape == Shape::InnerLeft) return 7727; - else if (Shape == Shape::InnerRight) return 7729; - else if (Shape == Shape::OuterLeft) return 7731; - else return 7733; - else - if (Shape == Shape::Straight) return 7735; - else if (Shape == Shape::InnerLeft) return 7737; - else if (Shape == Shape::InnerRight) return 7739; - else if (Shape == Shape::OuterLeft) return 7741; - else return 7743; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7745; - else if (Shape == Shape::InnerLeft) return 7747; - else if (Shape == Shape::InnerRight) return 7749; - else if (Shape == Shape::OuterLeft) return 7751; - else return 7753; - else - if (Shape == Shape::Straight) return 7755; - else if (Shape == Shape::InnerLeft) return 7757; - else if (Shape == Shape::InnerRight) return 7759; - else if (Shape == Shape::OuterLeft) return 7761; - else return 7763; - } - BlockState PrismarineBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace PrismarineBricks - { - constexpr BlockState PrismarineBricks() - { - return 7602; - } - } - namespace PrismarineSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PrismarineSlab(const enum Type Type) - { - if (Type == Type::Top) return 7845; - else if (Type == Type::Bottom) return 7847; - else return 7849; - } - BlockState PrismarineSlab(); - enum Type Type(BlockState Block); - } - namespace PrismarineStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PrismarineStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7605; - else if (Shape == Shape::InnerLeft) return 7607; - else if (Shape == Shape::InnerRight) return 7609; - else if (Shape == Shape::OuterLeft) return 7611; - else return 7613; - else - if (Shape == Shape::Straight) return 7615; - else if (Shape == Shape::InnerLeft) return 7617; - else if (Shape == Shape::InnerRight) return 7619; - else if (Shape == Shape::OuterLeft) return 7621; - else return 7623; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7625; - else if (Shape == Shape::InnerLeft) return 7627; - else if (Shape == Shape::InnerRight) return 7629; - else if (Shape == Shape::OuterLeft) return 7631; - else return 7633; - else - if (Shape == Shape::Straight) return 7635; - else if (Shape == Shape::InnerLeft) return 7637; - else if (Shape == Shape::InnerRight) return 7639; - else if (Shape == Shape::OuterLeft) return 7641; - else return 7643; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7645; - else if (Shape == Shape::InnerLeft) return 7647; - else if (Shape == Shape::InnerRight) return 7649; - else if (Shape == Shape::OuterLeft) return 7651; - else return 7653; - else - if (Shape == Shape::Straight) return 7655; - else if (Shape == Shape::InnerLeft) return 7657; - else if (Shape == Shape::InnerRight) return 7659; - else if (Shape == Shape::OuterLeft) return 7661; - else return 7663; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 7665; - else if (Shape == Shape::InnerLeft) return 7667; - else if (Shape == Shape::InnerRight) return 7669; - else if (Shape == Shape::OuterLeft) return 7671; - else return 7673; - else - if (Shape == Shape::Straight) return 7675; - else if (Shape == Shape::InnerLeft) return 7677; - else if (Shape == Shape::InnerRight) return 7679; - else if (Shape == Shape::OuterLeft) return 7681; - else return 7683; - } - BlockState PrismarineStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState PrismarineWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11194; - else if (West == West::Low) return 11195; - else return 11196; - else - if (West == West::None) return 11200; - else if (West == West::Low) return 11201; - else return 11202; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11206; - else if (West == West::Low) return 11207; - else return 11208; - else - if (West == West::None) return 11212; - else if (West == West::Low) return 11213; - else return 11214; - else - if (Up) - if (West == West::None) return 11218; - else if (West == West::Low) return 11219; - else return 11220; - else - if (West == West::None) return 11224; - else if (West == West::Low) return 11225; - else return 11226; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11230; - else if (West == West::Low) return 11231; - else return 11232; - else - if (West == West::None) return 11236; - else if (West == West::Low) return 11237; - else return 11238; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11242; - else if (West == West::Low) return 11243; - else return 11244; - else - if (West == West::None) return 11248; - else if (West == West::Low) return 11249; - else return 11250; - else - if (Up) - if (West == West::None) return 11254; - else if (West == West::Low) return 11255; - else return 11256; - else - if (West == West::None) return 11260; - else if (West == West::Low) return 11261; - else return 11262; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11266; - else if (West == West::Low) return 11267; - else return 11268; - else - if (West == West::None) return 11272; - else if (West == West::Low) return 11273; - else return 11274; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11278; - else if (West == West::Low) return 11279; - else return 11280; - else - if (West == West::None) return 11284; - else if (West == West::Low) return 11285; - else return 11286; - else - if (Up) - if (West == West::None) return 11290; - else if (West == West::Low) return 11291; - else return 11292; - else - if (West == West::None) return 11296; - else if (West == West::Low) return 11297; - else return 11298; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11302; - else if (West == West::Low) return 11303; - else return 11304; - else - if (West == West::None) return 11308; - else if (West == West::Low) return 11309; - else return 11310; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11314; - else if (West == West::Low) return 11315; - else return 11316; - else - if (West == West::None) return 11320; - else if (West == West::Low) return 11321; - else return 11322; - else - if (Up) - if (West == West::None) return 11326; - else if (West == West::Low) return 11327; - else return 11328; - else - if (West == West::None) return 11332; - else if (West == West::Low) return 11333; - else return 11334; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11338; - else if (West == West::Low) return 11339; - else return 11340; - else - if (West == West::None) return 11344; - else if (West == West::Low) return 11345; - else return 11346; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11350; - else if (West == West::Low) return 11351; - else return 11352; - else - if (West == West::None) return 11356; - else if (West == West::Low) return 11357; - else return 11358; - else - if (Up) - if (West == West::None) return 11362; - else if (West == West::Low) return 11363; - else return 11364; - else - if (West == West::None) return 11368; - else if (West == West::Low) return 11369; - else return 11370; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11374; - else if (West == West::Low) return 11375; - else return 11376; - else - if (West == West::None) return 11380; - else if (West == West::Low) return 11381; - else return 11382; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11386; - else if (West == West::Low) return 11387; - else return 11388; - else - if (West == West::None) return 11392; - else if (West == West::Low) return 11393; - else return 11394; - else - if (Up) - if (West == West::None) return 11398; - else if (West == West::Low) return 11399; - else return 11400; - else - if (West == West::None) return 11404; - else if (West == West::Low) return 11405; - else return 11406; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11410; - else if (West == West::Low) return 11411; - else return 11412; - else - if (West == West::None) return 11416; - else if (West == West::Low) return 11417; - else return 11418; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11422; - else if (West == West::Low) return 11423; - else return 11424; - else - if (West == West::None) return 11428; - else if (West == West::Low) return 11429; - else return 11430; - else - if (Up) - if (West == West::None) return 11434; - else if (West == West::Low) return 11435; - else return 11436; - else - if (West == West::None) return 11440; - else if (West == West::Low) return 11441; - else return 11442; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11446; - else if (West == West::Low) return 11447; - else return 11448; - else - if (West == West::None) return 11452; - else if (West == West::Low) return 11453; - else return 11454; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11458; - else if (West == West::Low) return 11459; - else return 11460; - else - if (West == West::None) return 11464; - else if (West == West::Low) return 11465; - else return 11466; - else - if (Up) - if (West == West::None) return 11470; - else if (West == West::Low) return 11471; - else return 11472; - else - if (West == West::None) return 11476; - else if (West == West::Low) return 11477; - else return 11478; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11482; - else if (West == West::Low) return 11483; - else return 11484; - else - if (West == West::None) return 11488; - else if (West == West::Low) return 11489; - else return 11490; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11494; - else if (West == West::Low) return 11495; - else return 11496; - else - if (West == West::None) return 11500; - else if (West == West::Low) return 11501; - else return 11502; - else - if (Up) - if (West == West::None) return 11506; - else if (West == West::Low) return 11507; - else return 11508; - else - if (West == West::None) return 11512; - else if (West == West::Low) return 11513; - else return 11514; - } - BlockState PrismarineWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Pumpkin - { - constexpr BlockState Pumpkin() - { - return 3998; - } - } - namespace PumpkinStem - { - constexpr BlockState PumpkinStem(const unsigned char Age) - { - if (Age == 0) return 4772; - else if (Age == 1) return 4773; - else if (Age == 2) return 4774; - else if (Age == 3) return 4775; - else if (Age == 4) return 4776; - else if (Age == 5) return 4777; - else if (Age == 6) return 4778; - else return 4779; - } - BlockState PumpkinStem(); - unsigned char Age(BlockState Block); - } - namespace PurpleBanner - { - constexpr BlockState PurpleBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8057; - else if (Rotation == 1) return 8058; - else if (Rotation == 2) return 8059; - else if (Rotation == 3) return 8060; - else if (Rotation == 4) return 8061; - else if (Rotation == 5) return 8062; - else if (Rotation == 6) return 8063; - else if (Rotation == 7) return 8064; - else if (Rotation == 8) return 8065; - else if (Rotation == 9) return 8066; - else if (Rotation == 10) return 8067; - else if (Rotation == 11) return 8068; - else if (Rotation == 12) return 8069; - else if (Rotation == 13) return 8070; - else if (Rotation == 14) return 8071; - else return 8072; - } - BlockState PurpleBanner(); - unsigned char Rotation(BlockState Block); - } - namespace PurpleBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState PurpleBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1209; - else return 1210; - else - if (Part == Part::Head) return 1211; - else return 1212; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1213; - else return 1214; - else - if (Part == Part::Head) return 1215; - else return 1216; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1217; - else return 1218; - else - if (Part == Part::Head) return 1219; - else return 1220; - else - if (Occupied) - if (Part == Part::Head) return 1221; - else return 1222; - else - if (Part == Part::Head) return 1223; - else return 1224; - } - BlockState PurpleBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace PurpleCarpet - { - constexpr BlockState PurpleCarpet() - { - return 7876; - } - } - namespace PurpleConcrete - { - constexpr BlockState PurpleConcrete() - { - return 9448; - } - } - namespace PurpleConcretePowder - { - constexpr BlockState PurpleConcretePowder() - { - return 9464; - } - } - namespace PurpleGlazedTerracotta - { - constexpr BlockState PurpleGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9414; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9415; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9416; - else return 9417; - } - BlockState PurpleGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace PurpleShulkerBox - { - constexpr BlockState PurpleShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9338; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9339; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9340; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9341; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9342; - else return 9343; - } - BlockState PurpleShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace PurpleStainedGlass - { - constexpr BlockState PurpleStainedGlass() - { - return 4105; - } - } - namespace PurpleStainedGlassPane - { - constexpr BlockState PurpleStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7185; - else return 7186; - else - if (West) return 7189; - else return 7190; - else - if (South) - if (West) return 7193; - else return 7194; - else - if (West) return 7197; - else return 7198; + return 8527; + else if (Powered) + return 8528; + else + return 8529; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 8530; + else + return 8531; + else if (Powered) + return 8532; else - if (North) - if (South) - if (West) return 7201; - else return 7202; - else - if (West) return 7205; - else return 7206; - else - if (South) - if (West) return 7209; - else return 7210; - else - if (West) return 7213; - else return 7214; - } - BlockState PurpleStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace PurpleTerracotta - { - constexpr BlockState PurpleTerracotta() - { - return 6857; - } - } - namespace PurpleWallBanner - { - constexpr BlockState PurpleWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8193; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8194; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8195; - else return 8196; - } - BlockState PurpleWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace PurpleWool - { - constexpr BlockState PurpleWool() - { - return 1394; - } - } - namespace PurpurBlock - { - constexpr BlockState PurpurBlock() - { - return 9134; - } - } - namespace PurpurPillar - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState PurpurPillar(const enum Axis Axis) - { - if (Axis == Axis::X) return 9135; - else if (Axis == Axis::Y) return 9136; - else return 9137; - } - BlockState PurpurPillar(); - enum Axis Axis(BlockState Block); - } - namespace PurpurSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState PurpurSlab(const enum Type Type) - { - if (Type == Type::Top) return 8409; - else if (Type == Type::Bottom) return 8411; - else return 8413; - } - BlockState PurpurSlab(); - enum Type Type(BlockState Block); - } - namespace PurpurStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState PurpurStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9139; - else if (Shape == Shape::InnerLeft) return 9141; - else if (Shape == Shape::InnerRight) return 9143; - else if (Shape == Shape::OuterLeft) return 9145; - else return 9147; - else - if (Shape == Shape::Straight) return 9149; - else if (Shape == Shape::InnerLeft) return 9151; - else if (Shape == Shape::InnerRight) return 9153; - else if (Shape == Shape::OuterLeft) return 9155; - else return 9157; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9159; - else if (Shape == Shape::InnerLeft) return 9161; - else if (Shape == Shape::InnerRight) return 9163; - else if (Shape == Shape::OuterLeft) return 9165; - else return 9167; - else - if (Shape == Shape::Straight) return 9169; - else if (Shape == Shape::InnerLeft) return 9171; - else if (Shape == Shape::InnerRight) return 9173; - else if (Shape == Shape::OuterLeft) return 9175; - else return 9177; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9179; - else if (Shape == Shape::InnerLeft) return 9181; - else if (Shape == Shape::InnerRight) return 9183; - else if (Shape == Shape::OuterLeft) return 9185; - else return 9187; - else - if (Shape == Shape::Straight) return 9189; - else if (Shape == Shape::InnerLeft) return 9191; - else if (Shape == Shape::InnerRight) return 9193; - else if (Shape == Shape::OuterLeft) return 9195; - else return 9197; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9199; - else if (Shape == Shape::InnerLeft) return 9201; - else if (Shape == Shape::InnerRight) return 9203; - else if (Shape == Shape::OuterLeft) return 9205; - else return 9207; - else - if (Shape == Shape::Straight) return 9209; - else if (Shape == Shape::InnerLeft) return 9211; - else if (Shape == Shape::InnerRight) return 9213; - else if (Shape == Shape::OuterLeft) return 9215; - else return 9217; - } - BlockState PurpurStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace QuartzBlock - { - constexpr BlockState QuartzBlock() - { - return 6738; - } - } - namespace QuartzBricks - { - constexpr BlockState QuartzBricks() - { - return 17103; - } - } - namespace QuartzPillar - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState QuartzPillar(const enum Axis Axis) - { - if (Axis == Axis::X) return 6740; - else if (Axis == Axis::Y) return 6741; - else return 6742; - } - BlockState QuartzPillar(); - enum Axis Axis(BlockState Block); - } - namespace QuartzSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState QuartzSlab(const enum Type Type) - { - if (Type == Type::Top) return 8391; - else if (Type == Type::Bottom) return 8393; - else return 8395; - } - BlockState QuartzSlab(); - enum Type Type(BlockState Block); - } - namespace QuartzStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState QuartzStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 6744; - else if (Shape == Shape::InnerLeft) return 6746; - else if (Shape == Shape::InnerRight) return 6748; - else if (Shape == Shape::OuterLeft) return 6750; - else return 6752; - else - if (Shape == Shape::Straight) return 6754; - else if (Shape == Shape::InnerLeft) return 6756; - else if (Shape == Shape::InnerRight) return 6758; - else if (Shape == Shape::OuterLeft) return 6760; - else return 6762; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 6764; - else if (Shape == Shape::InnerLeft) return 6766; - else if (Shape == Shape::InnerRight) return 6768; - else if (Shape == Shape::OuterLeft) return 6770; - else return 6772; - else - if (Shape == Shape::Straight) return 6774; - else if (Shape == Shape::InnerLeft) return 6776; - else if (Shape == Shape::InnerRight) return 6778; - else if (Shape == Shape::OuterLeft) return 6780; - else return 6782; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 6784; - else if (Shape == Shape::InnerLeft) return 6786; - else if (Shape == Shape::InnerRight) return 6788; - else if (Shape == Shape::OuterLeft) return 6790; - else return 6792; - else - if (Shape == Shape::Straight) return 6794; - else if (Shape == Shape::InnerLeft) return 6796; - else if (Shape == Shape::InnerRight) return 6798; - else if (Shape == Shape::OuterLeft) return 6800; - else return 6802; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 6804; - else if (Shape == Shape::InnerLeft) return 6806; - else if (Shape == Shape::InnerRight) return 6808; - else if (Shape == Shape::OuterLeft) return 6810; - else return 6812; - else - if (Shape == Shape::Straight) return 6814; - else if (Shape == Shape::InnerLeft) return 6816; - else if (Shape == Shape::InnerRight) return 6818; - else if (Shape == Shape::OuterLeft) return 6820; - else return 6822; - } - BlockState QuartzStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace Rail - { - enum class Shape - { - NorthSouth, - EastWest, - AscendingEast, - AscendingWest, - AscendingNorth, - AscendingSouth, - SouthEast, - SouthWest, - NorthWest, - NorthEast - }; - constexpr BlockState Rail(const enum Shape Shape) - { - if (Shape == Shape::NorthSouth) return 3645; - else if (Shape == Shape::EastWest) return 3646; - else if (Shape == Shape::AscendingEast) return 3647; - else if (Shape == Shape::AscendingWest) return 3648; - else if (Shape == Shape::AscendingNorth) return 3649; - else if (Shape == Shape::AscendingSouth) return 3650; - else if (Shape == Shape::SouthEast) return 3651; - else if (Shape == Shape::SouthWest) return 3652; - else if (Shape == Shape::NorthWest) return 3653; - else return 3654; - } - BlockState Rail(); - enum Shape Shape(BlockState Block); - } - namespace RedBanner - { - constexpr BlockState RedBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 8121; - else if (Rotation == 1) return 8122; - else if (Rotation == 2) return 8123; - else if (Rotation == 3) return 8124; - else if (Rotation == 4) return 8125; - else if (Rotation == 5) return 8126; - else if (Rotation == 6) return 8127; - else if (Rotation == 7) return 8128; - else if (Rotation == 8) return 8129; - else if (Rotation == 9) return 8130; - else if (Rotation == 10) return 8131; - else if (Rotation == 11) return 8132; - else if (Rotation == 12) return 8133; - else if (Rotation == 13) return 8134; - else if (Rotation == 14) return 8135; - else return 8136; - } - BlockState RedBanner(); - unsigned char Rotation(BlockState Block); - } - namespace RedBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState RedBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1273; - else return 1274; - else - if (Part == Part::Head) return 1275; - else return 1276; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1277; - else return 1278; - else - if (Part == Part::Head) return 1279; - else return 1280; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1281; - else return 1282; - else - if (Part == Part::Head) return 1283; - else return 1284; - else - if (Occupied) - if (Part == Part::Head) return 1285; - else return 1286; - else - if (Part == Part::Head) return 1287; - else return 1288; - } - BlockState RedBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace RedCarpet - { - constexpr BlockState RedCarpet() - { - return 7880; - } - } - namespace RedConcrete - { - constexpr BlockState RedConcrete() - { - return 9452; - } - } - namespace RedConcretePowder - { - constexpr BlockState RedConcretePowder() - { - return 9468; - } - } - namespace RedGlazedTerracotta - { - constexpr BlockState RedGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9430; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9431; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9432; - else return 9433; - } - BlockState RedGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace RedMushroom - { - constexpr BlockState RedMushroom() - { - return 1426; - } - } - namespace RedMushroomBlock - { - constexpr BlockState RedMushroomBlock(const bool Down, const bool East, const bool North, const bool South, const bool Up, const bool West) - { - if (Down) - if (East) - if (North) - if (South) - if (Up) - if (West) return 4569; - else return 4570; - else - if (West) return 4571; - else return 4572; - else - if (Up) - if (West) return 4573; - else return 4574; - else - if (West) return 4575; - else return 4576; - else - if (South) - if (Up) - if (West) return 4577; - else return 4578; - else - if (West) return 4579; - else return 4580; - else - if (Up) - if (West) return 4581; - else return 4582; - else - if (West) return 4583; - else return 4584; - else - if (North) - if (South) - if (Up) - if (West) return 4585; - else return 4586; - else - if (West) return 4587; - else return 4588; - else - if (Up) - if (West) return 4589; - else return 4590; - else - if (West) return 4591; - else return 4592; - else - if (South) - if (Up) - if (West) return 4593; - else return 4594; - else - if (West) return 4595; - else return 4596; - else - if (Up) - if (West) return 4597; - else return 4598; - else - if (West) return 4599; - else return 4600; + return 8533; + else if (Open) + if (Powered) + return 8534; else - if (East) - if (North) - if (South) - if (Up) - if (West) return 4601; - else return 4602; - else - if (West) return 4603; - else return 4604; - else - if (Up) - if (West) return 4605; - else return 4606; - else - if (West) return 4607; - else return 4608; - else - if (South) - if (Up) - if (West) return 4609; - else return 4610; - else - if (West) return 4611; - else return 4612; - else - if (Up) - if (West) return 4613; - else return 4614; - else - if (West) return 4615; - else return 4616; - else - if (North) - if (South) - if (Up) - if (West) return 4617; - else return 4618; - else - if (West) return 4619; - else return 4620; - else - if (Up) - if (West) return 4621; - else return 4622; - else - if (West) return 4623; - else return 4624; - else - if (South) - if (Up) - if (West) return 4625; - else return 4626; - else - if (West) return 4627; - else return 4628; - else - if (Up) - if (West) return 4629; - else return 4630; - else - if (West) return 4631; - else return 4632; - } - BlockState RedMushroomBlock(); - bool Down(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace RedNetherBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState RedNetherBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 10850; - else if (Type == Type::Bottom) return 10852; - else return 10854; - } - BlockState RedNetherBrickSlab(); - enum Type Type(BlockState Block); - } - namespace RedNetherBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState RedNetherBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10550; - else if (Shape == Shape::InnerLeft) return 10552; - else if (Shape == Shape::InnerRight) return 10554; - else if (Shape == Shape::OuterLeft) return 10556; - else return 10558; - else - if (Shape == Shape::Straight) return 10560; - else if (Shape == Shape::InnerLeft) return 10562; - else if (Shape == Shape::InnerRight) return 10564; - else if (Shape == Shape::OuterLeft) return 10566; - else return 10568; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10570; - else if (Shape == Shape::InnerLeft) return 10572; - else if (Shape == Shape::InnerRight) return 10574; - else if (Shape == Shape::OuterLeft) return 10576; - else return 10578; - else - if (Shape == Shape::Straight) return 10580; - else if (Shape == Shape::InnerLeft) return 10582; - else if (Shape == Shape::InnerRight) return 10584; - else if (Shape == Shape::OuterLeft) return 10586; - else return 10588; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10590; - else if (Shape == Shape::InnerLeft) return 10592; - else if (Shape == Shape::InnerRight) return 10594; - else if (Shape == Shape::OuterLeft) return 10596; - else return 10598; - else - if (Shape == Shape::Straight) return 10600; - else if (Shape == Shape::InnerLeft) return 10602; - else if (Shape == Shape::InnerRight) return 10604; - else if (Shape == Shape::OuterLeft) return 10606; - else return 10608; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10610; - else if (Shape == Shape::InnerLeft) return 10612; - else if (Shape == Shape::InnerRight) return 10614; - else if (Shape == Shape::OuterLeft) return 10616; - else return 10618; - else - if (Shape == Shape::Straight) return 10620; - else if (Shape == Shape::InnerLeft) return 10622; - else if (Shape == Shape::InnerRight) return 10624; - else if (Shape == Shape::OuterLeft) return 10626; - else return 10628; - } - BlockState RedNetherBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState RedNetherBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13462; - else if (West == West::Low) return 13463; - else return 13464; - else - if (West == West::None) return 13468; - else if (West == West::Low) return 13469; - else return 13470; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13474; - else if (West == West::Low) return 13475; - else return 13476; - else - if (West == West::None) return 13480; - else if (West == West::Low) return 13481; - else return 13482; - else - if (Up) - if (West == West::None) return 13486; - else if (West == West::Low) return 13487; - else return 13488; - else - if (West == West::None) return 13492; - else if (West == West::Low) return 13493; - else return 13494; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13498; - else if (West == West::Low) return 13499; - else return 13500; - else - if (West == West::None) return 13504; - else if (West == West::Low) return 13505; - else return 13506; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13510; - else if (West == West::Low) return 13511; - else return 13512; - else - if (West == West::None) return 13516; - else if (West == West::Low) return 13517; - else return 13518; - else - if (Up) - if (West == West::None) return 13522; - else if (West == West::Low) return 13523; - else return 13524; - else - if (West == West::None) return 13528; - else if (West == West::Low) return 13529; - else return 13530; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13534; - else if (West == West::Low) return 13535; - else return 13536; - else - if (West == West::None) return 13540; - else if (West == West::Low) return 13541; - else return 13542; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13546; - else if (West == West::Low) return 13547; - else return 13548; - else - if (West == West::None) return 13552; - else if (West == West::Low) return 13553; - else return 13554; - else - if (Up) - if (West == West::None) return 13558; - else if (West == West::Low) return 13559; - else return 13560; - else - if (West == West::None) return 13564; - else if (West == West::Low) return 13565; - else return 13566; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13570; - else if (West == West::Low) return 13571; - else return 13572; - else - if (West == West::None) return 13576; - else if (West == West::Low) return 13577; - else return 13578; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13582; - else if (West == West::Low) return 13583; - else return 13584; - else - if (West == West::None) return 13588; - else if (West == West::Low) return 13589; - else return 13590; - else - if (Up) - if (West == West::None) return 13594; - else if (West == West::Low) return 13595; - else return 13596; - else - if (West == West::None) return 13600; - else if (West == West::Low) return 13601; - else return 13602; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13606; - else if (West == West::Low) return 13607; - else return 13608; - else - if (West == West::None) return 13612; - else if (West == West::Low) return 13613; - else return 13614; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13618; - else if (West == West::Low) return 13619; - else return 13620; - else - if (West == West::None) return 13624; - else if (West == West::Low) return 13625; - else return 13626; - else - if (Up) - if (West == West::None) return 13630; - else if (West == West::Low) return 13631; - else return 13632; - else - if (West == West::None) return 13636; - else if (West == West::Low) return 13637; - else return 13638; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13642; - else if (West == West::Low) return 13643; - else return 13644; - else - if (West == West::None) return 13648; - else if (West == West::Low) return 13649; - else return 13650; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13654; - else if (West == West::Low) return 13655; - else return 13656; - else - if (West == West::None) return 13660; - else if (West == West::Low) return 13661; - else return 13662; - else - if (Up) - if (West == West::None) return 13666; - else if (West == West::Low) return 13667; - else return 13668; - else - if (West == West::None) return 13672; - else if (West == West::Low) return 13673; - else return 13674; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13678; - else if (West == West::Low) return 13679; - else return 13680; - else - if (West == West::None) return 13684; - else if (West == West::Low) return 13685; - else return 13686; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13690; - else if (West == West::Low) return 13691; - else return 13692; - else - if (West == West::None) return 13696; - else if (West == West::Low) return 13697; - else return 13698; - else - if (Up) - if (West == West::None) return 13702; - else if (West == West::Low) return 13703; - else return 13704; - else - if (West == West::None) return 13708; - else if (West == West::Low) return 13709; - else return 13710; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13714; - else if (West == West::Low) return 13715; - else return 13716; - else - if (West == West::None) return 13720; - else if (West == West::Low) return 13721; - else return 13722; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13726; - else if (West == West::Low) return 13727; - else return 13728; - else - if (West == West::None) return 13732; - else if (West == West::Low) return 13733; - else return 13734; - else - if (Up) - if (West == West::None) return 13738; - else if (West == West::Low) return 13739; - else return 13740; - else - if (West == West::None) return 13744; - else if (West == West::Low) return 13745; - else return 13746; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13750; - else if (West == West::Low) return 13751; - else return 13752; - else - if (West == West::None) return 13756; - else if (West == West::Low) return 13757; - else return 13758; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13762; - else if (West == West::Low) return 13763; - else return 13764; - else - if (West == West::None) return 13768; - else if (West == West::Low) return 13769; - else return 13770; - else - if (Up) - if (West == West::None) return 13774; - else if (West == West::Low) return 13775; - else return 13776; - else - if (West == West::None) return 13780; - else if (West == West::Low) return 13781; - else return 13782; - } - BlockState RedNetherBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace RedNetherBricks - { - constexpr BlockState RedNetherBricks() - { - return 9255; - } - } - namespace RedSand - { - constexpr BlockState RedSand() - { - return 67; - } - } - namespace RedSandstone - { - constexpr BlockState RedSandstone() - { - return 8217; - } - } - namespace RedSandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState RedSandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8397; - else if (Type == Type::Bottom) return 8399; - else return 8401; - } - BlockState RedSandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace RedSandstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState RedSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 8221; - else if (Shape == Shape::InnerLeft) return 8223; - else if (Shape == Shape::InnerRight) return 8225; - else if (Shape == Shape::OuterLeft) return 8227; - else return 8229; - else - if (Shape == Shape::Straight) return 8231; - else if (Shape == Shape::InnerLeft) return 8233; - else if (Shape == Shape::InnerRight) return 8235; - else if (Shape == Shape::OuterLeft) return 8237; - else return 8239; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 8241; - else if (Shape == Shape::InnerLeft) return 8243; - else if (Shape == Shape::InnerRight) return 8245; - else if (Shape == Shape::OuterLeft) return 8247; - else return 8249; - else - if (Shape == Shape::Straight) return 8251; - else if (Shape == Shape::InnerLeft) return 8253; - else if (Shape == Shape::InnerRight) return 8255; - else if (Shape == Shape::OuterLeft) return 8257; - else return 8259; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 8261; - else if (Shape == Shape::InnerLeft) return 8263; - else if (Shape == Shape::InnerRight) return 8265; - else if (Shape == Shape::OuterLeft) return 8267; - else return 8269; - else - if (Shape == Shape::Straight) return 8271; - else if (Shape == Shape::InnerLeft) return 8273; - else if (Shape == Shape::InnerRight) return 8275; - else if (Shape == Shape::OuterLeft) return 8277; - else return 8279; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 8281; - else if (Shape == Shape::InnerLeft) return 8283; - else if (Shape == Shape::InnerRight) return 8285; - else if (Shape == Shape::OuterLeft) return 8287; - else return 8289; - else - if (Shape == Shape::Straight) return 8291; - else if (Shape == Shape::InnerLeft) return 8293; - else if (Shape == Shape::InnerRight) return 8295; - else if (Shape == Shape::OuterLeft) return 8297; - else return 8299; - } - BlockState RedSandstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState RedSandstoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11518; - else if (West == West::Low) return 11519; - else return 11520; - else - if (West == West::None) return 11524; - else if (West == West::Low) return 11525; - else return 11526; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11530; - else if (West == West::Low) return 11531; - else return 11532; - else - if (West == West::None) return 11536; - else if (West == West::Low) return 11537; - else return 11538; - else - if (Up) - if (West == West::None) return 11542; - else if (West == West::Low) return 11543; - else return 11544; - else - if (West == West::None) return 11548; - else if (West == West::Low) return 11549; - else return 11550; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11554; - else if (West == West::Low) return 11555; - else return 11556; - else - if (West == West::None) return 11560; - else if (West == West::Low) return 11561; - else return 11562; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11566; - else if (West == West::Low) return 11567; - else return 11568; - else - if (West == West::None) return 11572; - else if (West == West::Low) return 11573; - else return 11574; - else - if (Up) - if (West == West::None) return 11578; - else if (West == West::Low) return 11579; - else return 11580; - else - if (West == West::None) return 11584; - else if (West == West::Low) return 11585; - else return 11586; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11590; - else if (West == West::Low) return 11591; - else return 11592; - else - if (West == West::None) return 11596; - else if (West == West::Low) return 11597; - else return 11598; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11602; - else if (West == West::Low) return 11603; - else return 11604; - else - if (West == West::None) return 11608; - else if (West == West::Low) return 11609; - else return 11610; - else - if (Up) - if (West == West::None) return 11614; - else if (West == West::Low) return 11615; - else return 11616; - else - if (West == West::None) return 11620; - else if (West == West::Low) return 11621; - else return 11622; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11626; - else if (West == West::Low) return 11627; - else return 11628; - else - if (West == West::None) return 11632; - else if (West == West::Low) return 11633; - else return 11634; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11638; - else if (West == West::Low) return 11639; - else return 11640; - else - if (West == West::None) return 11644; - else if (West == West::Low) return 11645; - else return 11646; - else - if (Up) - if (West == West::None) return 11650; - else if (West == West::Low) return 11651; - else return 11652; - else - if (West == West::None) return 11656; - else if (West == West::Low) return 11657; - else return 11658; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11662; - else if (West == West::Low) return 11663; - else return 11664; - else - if (West == West::None) return 11668; - else if (West == West::Low) return 11669; - else return 11670; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11674; - else if (West == West::Low) return 11675; - else return 11676; - else - if (West == West::None) return 11680; - else if (West == West::Low) return 11681; - else return 11682; - else - if (Up) - if (West == West::None) return 11686; - else if (West == West::Low) return 11687; - else return 11688; - else - if (West == West::None) return 11692; - else if (West == West::Low) return 11693; - else return 11694; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11698; - else if (West == West::Low) return 11699; - else return 11700; - else - if (West == West::None) return 11704; - else if (West == West::Low) return 11705; - else return 11706; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11710; - else if (West == West::Low) return 11711; - else return 11712; - else - if (West == West::None) return 11716; - else if (West == West::Low) return 11717; - else return 11718; - else - if (Up) - if (West == West::None) return 11722; - else if (West == West::Low) return 11723; - else return 11724; - else - if (West == West::None) return 11728; - else if (West == West::Low) return 11729; - else return 11730; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 11734; - else if (West == West::Low) return 11735; - else return 11736; - else - if (West == West::None) return 11740; - else if (West == West::Low) return 11741; - else return 11742; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11746; - else if (West == West::Low) return 11747; - else return 11748; - else - if (West == West::None) return 11752; - else if (West == West::Low) return 11753; - else return 11754; - else - if (Up) - if (West == West::None) return 11758; - else if (West == West::Low) return 11759; - else return 11760; - else - if (West == West::None) return 11764; - else if (West == West::Low) return 11765; - else return 11766; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 11770; - else if (West == West::Low) return 11771; - else return 11772; - else - if (West == West::None) return 11776; - else if (West == West::Low) return 11777; - else return 11778; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11782; - else if (West == West::Low) return 11783; - else return 11784; - else - if (West == West::None) return 11788; - else if (West == West::Low) return 11789; - else return 11790; - else - if (Up) - if (West == West::None) return 11794; - else if (West == West::Low) return 11795; - else return 11796; - else - if (West == West::None) return 11800; - else if (West == West::Low) return 11801; - else return 11802; - else - if (South == South::None) - if (Up) - if (West == West::None) return 11806; - else if (West == West::Low) return 11807; - else return 11808; - else - if (West == West::None) return 11812; - else if (West == West::Low) return 11813; - else return 11814; - else if (South == South::Low) - if (Up) - if (West == West::None) return 11818; - else if (West == West::Low) return 11819; - else return 11820; - else - if (West == West::None) return 11824; - else if (West == West::Low) return 11825; - else return 11826; - else - if (Up) - if (West == West::None) return 11830; - else if (West == West::Low) return 11831; - else return 11832; - else - if (West == West::None) return 11836; - else if (West == West::Low) return 11837; - else return 11838; - } - BlockState RedSandstoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace RedShulkerBox - { - constexpr BlockState RedShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9362; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9363; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9364; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9365; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9366; - else return 9367; - } - BlockState RedShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace RedStainedGlass - { - constexpr BlockState RedStainedGlass() - { - return 4109; - } - } - namespace RedStainedGlassPane - { - constexpr BlockState RedStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 7313; - else return 7314; - else - if (West) return 7317; - else return 7318; - else - if (South) - if (West) return 7321; - else return 7322; - else - if (West) return 7325; - else return 7326; + return 8535; + else if (Powered) + return 8536; + else + return 8537; + else if (InWall) + if (Open) + if (Powered) + return 8538; else - if (North) - if (South) - if (West) return 7329; - else return 7330; - else - if (West) return 7333; - else return 7334; - else - if (South) - if (West) return 7337; - else return 7338; - else - if (West) return 7341; - else return 7342; - } - BlockState RedStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace RedTerracotta - { - constexpr BlockState RedTerracotta() - { - return 6861; - } - } - namespace RedTulip - { - constexpr BlockState RedTulip() - { - return 1417; - } - } - namespace RedWallBanner - { - constexpr BlockState RedWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8209; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8210; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8211; - else return 8212; - } - BlockState RedWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace RedWool - { - constexpr BlockState RedWool() - { - return 1398; - } - } - namespace RedstoneBlock - { - constexpr BlockState RedstoneBlock() - { - return 6726; - } - } - namespace RedstoneLamp - { - constexpr BlockState RedstoneLamp(const bool Lit) - { - if (Lit) return 5156; - else return 5157; - } - BlockState RedstoneLamp(); - bool Lit(BlockState Block); - } - namespace RedstoneOre - { - constexpr BlockState RedstoneOre(const bool Lit) - { - if (Lit) return 3885; - else return 3886; - } - BlockState RedstoneOre(); - bool Lit(BlockState Block); - } - namespace RedstoneTorch - { - constexpr BlockState RedstoneTorch(const bool Lit) - { - if (Lit) return 3887; - else return 3888; - } - BlockState RedstoneTorch(); - bool Lit(BlockState Block); - } - namespace RedstoneWallTorch - { - constexpr BlockState RedstoneWallTorch(const eBlockFace Facing, const bool Lit) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) return 3889; - else return 3890; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) return 3891; - else return 3892; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) return 3893; - else return 3894; - else - if (Lit) return 3895; - else return 3896; - } - BlockState RedstoneWallTorch(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - } - 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 BlockState RedstoneWire(const enum East East, const enum North North, const unsigned char Power, const enum South South, const enum West West) - { - if (East == East::Up) - if (North == North::Up) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2058; - else if (West == West::Side) return 2059; - else return 2060; - else if (South == South::Side) - if (West == West::Up) return 2061; - else if (West == West::Side) return 2062; - else return 2063; - else - if (West == West::Up) return 2064; - else if (West == West::Side) return 2065; - else return 2066; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2067; - else if (West == West::Side) return 2068; - else return 2069; - else if (South == South::Side) - if (West == West::Up) return 2070; - else if (West == West::Side) return 2071; - else return 2072; - else - if (West == West::Up) return 2073; - else if (West == West::Side) return 2074; - else return 2075; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2076; - else if (West == West::Side) return 2077; - else return 2078; - else if (South == South::Side) - if (West == West::Up) return 2079; - else if (West == West::Side) return 2080; - else return 2081; - else - if (West == West::Up) return 2082; - else if (West == West::Side) return 2083; - else return 2084; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2085; - else if (West == West::Side) return 2086; - else return 2087; - else if (South == South::Side) - if (West == West::Up) return 2088; - else if (West == West::Side) return 2089; - else return 2090; - else - if (West == West::Up) return 2091; - else if (West == West::Side) return 2092; - else return 2093; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2094; - else if (West == West::Side) return 2095; - else return 2096; - else if (South == South::Side) - if (West == West::Up) return 2097; - else if (West == West::Side) return 2098; - else return 2099; - else - if (West == West::Up) return 2100; - else if (West == West::Side) return 2101; - else return 2102; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2103; - else if (West == West::Side) return 2104; - else return 2105; - else if (South == South::Side) - if (West == West::Up) return 2106; - else if (West == West::Side) return 2107; - else return 2108; - else - if (West == West::Up) return 2109; - else if (West == West::Side) return 2110; - else return 2111; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2112; - else if (West == West::Side) return 2113; - else return 2114; - else if (South == South::Side) - if (West == West::Up) return 2115; - else if (West == West::Side) return 2116; - else return 2117; - else - if (West == West::Up) return 2118; - else if (West == West::Side) return 2119; - else return 2120; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2121; - else if (West == West::Side) return 2122; - else return 2123; - else if (South == South::Side) - if (West == West::Up) return 2124; - else if (West == West::Side) return 2125; - else return 2126; - else - if (West == West::Up) return 2127; - else if (West == West::Side) return 2128; - else return 2129; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2130; - else if (West == West::Side) return 2131; - else return 2132; - else if (South == South::Side) - if (West == West::Up) return 2133; - else if (West == West::Side) return 2134; - else return 2135; - else - if (West == West::Up) return 2136; - else if (West == West::Side) return 2137; - else return 2138; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2139; - else if (West == West::Side) return 2140; - else return 2141; - else if (South == South::Side) - if (West == West::Up) return 2142; - else if (West == West::Side) return 2143; - else return 2144; - else - if (West == West::Up) return 2145; - else if (West == West::Side) return 2146; - else return 2147; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2148; - else if (West == West::Side) return 2149; - else return 2150; - else if (South == South::Side) - if (West == West::Up) return 2151; - else if (West == West::Side) return 2152; - else return 2153; - else - if (West == West::Up) return 2154; - else if (West == West::Side) return 2155; - else return 2156; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2157; - else if (West == West::Side) return 2158; - else return 2159; - else if (South == South::Side) - if (West == West::Up) return 2160; - else if (West == West::Side) return 2161; - else return 2162; - else - if (West == West::Up) return 2163; - else if (West == West::Side) return 2164; - else return 2165; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2166; - else if (West == West::Side) return 2167; - else return 2168; - else if (South == South::Side) - if (West == West::Up) return 2169; - else if (West == West::Side) return 2170; - else return 2171; - else - if (West == West::Up) return 2172; - else if (West == West::Side) return 2173; - else return 2174; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2175; - else if (West == West::Side) return 2176; - else return 2177; - else if (South == South::Side) - if (West == West::Up) return 2178; - else if (West == West::Side) return 2179; - else return 2180; - else - if (West == West::Up) return 2181; - else if (West == West::Side) return 2182; - else return 2183; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2184; - else if (West == West::Side) return 2185; - else return 2186; - else if (South == South::Side) - if (West == West::Up) return 2187; - else if (West == West::Side) return 2188; - else return 2189; - else - if (West == West::Up) return 2190; - else if (West == West::Side) return 2191; - else return 2192; - else - if (South == South::Up) - if (West == West::Up) return 2193; - else if (West == West::Side) return 2194; - else return 2195; - else if (South == South::Side) - if (West == West::Up) return 2196; - else if (West == West::Side) return 2197; - else return 2198; - else - if (West == West::Up) return 2199; - else if (West == West::Side) return 2200; - else return 2201; - else if (North == North::Side) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2202; - else if (West == West::Side) return 2203; - else return 2204; - else if (South == South::Side) - if (West == West::Up) return 2205; - else if (West == West::Side) return 2206; - else return 2207; - else - if (West == West::Up) return 2208; - else if (West == West::Side) return 2209; - else return 2210; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2211; - else if (West == West::Side) return 2212; - else return 2213; - else if (South == South::Side) - if (West == West::Up) return 2214; - else if (West == West::Side) return 2215; - else return 2216; - else - if (West == West::Up) return 2217; - else if (West == West::Side) return 2218; - else return 2219; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2220; - else if (West == West::Side) return 2221; - else return 2222; - else if (South == South::Side) - if (West == West::Up) return 2223; - else if (West == West::Side) return 2224; - else return 2225; - else - if (West == West::Up) return 2226; - else if (West == West::Side) return 2227; - else return 2228; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2229; - else if (West == West::Side) return 2230; - else return 2231; - else if (South == South::Side) - if (West == West::Up) return 2232; - else if (West == West::Side) return 2233; - else return 2234; - else - if (West == West::Up) return 2235; - else if (West == West::Side) return 2236; - else return 2237; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2238; - else if (West == West::Side) return 2239; - else return 2240; - else if (South == South::Side) - if (West == West::Up) return 2241; - else if (West == West::Side) return 2242; - else return 2243; - else - if (West == West::Up) return 2244; - else if (West == West::Side) return 2245; - else return 2246; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2247; - else if (West == West::Side) return 2248; - else return 2249; - else if (South == South::Side) - if (West == West::Up) return 2250; - else if (West == West::Side) return 2251; - else return 2252; - else - if (West == West::Up) return 2253; - else if (West == West::Side) return 2254; - else return 2255; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2256; - else if (West == West::Side) return 2257; - else return 2258; - else if (South == South::Side) - if (West == West::Up) return 2259; - else if (West == West::Side) return 2260; - else return 2261; - else - if (West == West::Up) return 2262; - else if (West == West::Side) return 2263; - else return 2264; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2265; - else if (West == West::Side) return 2266; - else return 2267; - else if (South == South::Side) - if (West == West::Up) return 2268; - else if (West == West::Side) return 2269; - else return 2270; - else - if (West == West::Up) return 2271; - else if (West == West::Side) return 2272; - else return 2273; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2274; - else if (West == West::Side) return 2275; - else return 2276; - else if (South == South::Side) - if (West == West::Up) return 2277; - else if (West == West::Side) return 2278; - else return 2279; - else - if (West == West::Up) return 2280; - else if (West == West::Side) return 2281; - else return 2282; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2283; - else if (West == West::Side) return 2284; - else return 2285; - else if (South == South::Side) - if (West == West::Up) return 2286; - else if (West == West::Side) return 2287; - else return 2288; - else - if (West == West::Up) return 2289; - else if (West == West::Side) return 2290; - else return 2291; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2292; - else if (West == West::Side) return 2293; - else return 2294; - else if (South == South::Side) - if (West == West::Up) return 2295; - else if (West == West::Side) return 2296; - else return 2297; - else - if (West == West::Up) return 2298; - else if (West == West::Side) return 2299; - else return 2300; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2301; - else if (West == West::Side) return 2302; - else return 2303; - else if (South == South::Side) - if (West == West::Up) return 2304; - else if (West == West::Side) return 2305; - else return 2306; - else - if (West == West::Up) return 2307; - else if (West == West::Side) return 2308; - else return 2309; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2310; - else if (West == West::Side) return 2311; - else return 2312; - else if (South == South::Side) - if (West == West::Up) return 2313; - else if (West == West::Side) return 2314; - else return 2315; - else - if (West == West::Up) return 2316; - else if (West == West::Side) return 2317; - else return 2318; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2319; - else if (West == West::Side) return 2320; - else return 2321; - else if (South == South::Side) - if (West == West::Up) return 2322; - else if (West == West::Side) return 2323; - else return 2324; - else - if (West == West::Up) return 2325; - else if (West == West::Side) return 2326; - else return 2327; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2328; - else if (West == West::Side) return 2329; - else return 2330; - else if (South == South::Side) - if (West == West::Up) return 2331; - else if (West == West::Side) return 2332; - else return 2333; - else - if (West == West::Up) return 2334; - else if (West == West::Side) return 2335; - else return 2336; - else - if (South == South::Up) - if (West == West::Up) return 2337; - else if (West == West::Side) return 2338; - else return 2339; - else if (South == South::Side) - if (West == West::Up) return 2340; - else if (West == West::Side) return 2341; - else return 2342; - else - if (West == West::Up) return 2343; - else if (West == West::Side) return 2344; - else return 2345; - else - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2346; - else if (West == West::Side) return 2347; - else return 2348; - else if (South == South::Side) - if (West == West::Up) return 2349; - else if (West == West::Side) return 2350; - else return 2351; - else - if (West == West::Up) return 2352; - else if (West == West::Side) return 2353; - else return 2354; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2355; - else if (West == West::Side) return 2356; - else return 2357; - else if (South == South::Side) - if (West == West::Up) return 2358; - else if (West == West::Side) return 2359; - else return 2360; - else - if (West == West::Up) return 2361; - else if (West == West::Side) return 2362; - else return 2363; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2364; - else if (West == West::Side) return 2365; - else return 2366; - else if (South == South::Side) - if (West == West::Up) return 2367; - else if (West == West::Side) return 2368; - else return 2369; - else - if (West == West::Up) return 2370; - else if (West == West::Side) return 2371; - else return 2372; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2373; - else if (West == West::Side) return 2374; - else return 2375; - else if (South == South::Side) - if (West == West::Up) return 2376; - else if (West == West::Side) return 2377; - else return 2378; - else - if (West == West::Up) return 2379; - else if (West == West::Side) return 2380; - else return 2381; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2382; - else if (West == West::Side) return 2383; - else return 2384; - else if (South == South::Side) - if (West == West::Up) return 2385; - else if (West == West::Side) return 2386; - else return 2387; - else - if (West == West::Up) return 2388; - else if (West == West::Side) return 2389; - else return 2390; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2391; - else if (West == West::Side) return 2392; - else return 2393; - else if (South == South::Side) - if (West == West::Up) return 2394; - else if (West == West::Side) return 2395; - else return 2396; - else - if (West == West::Up) return 2397; - else if (West == West::Side) return 2398; - else return 2399; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2400; - else if (West == West::Side) return 2401; - else return 2402; - else if (South == South::Side) - if (West == West::Up) return 2403; - else if (West == West::Side) return 2404; - else return 2405; - else - if (West == West::Up) return 2406; - else if (West == West::Side) return 2407; - else return 2408; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2409; - else if (West == West::Side) return 2410; - else return 2411; - else if (South == South::Side) - if (West == West::Up) return 2412; - else if (West == West::Side) return 2413; - else return 2414; - else - if (West == West::Up) return 2415; - else if (West == West::Side) return 2416; - else return 2417; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2418; - else if (West == West::Side) return 2419; - else return 2420; - else if (South == South::Side) - if (West == West::Up) return 2421; - else if (West == West::Side) return 2422; - else return 2423; - else - if (West == West::Up) return 2424; - else if (West == West::Side) return 2425; - else return 2426; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2427; - else if (West == West::Side) return 2428; - else return 2429; - else if (South == South::Side) - if (West == West::Up) return 2430; - else if (West == West::Side) return 2431; - else return 2432; - else - if (West == West::Up) return 2433; - else if (West == West::Side) return 2434; - else return 2435; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2436; - else if (West == West::Side) return 2437; - else return 2438; - else if (South == South::Side) - if (West == West::Up) return 2439; - else if (West == West::Side) return 2440; - else return 2441; - else - if (West == West::Up) return 2442; - else if (West == West::Side) return 2443; - else return 2444; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2445; - else if (West == West::Side) return 2446; - else return 2447; - else if (South == South::Side) - if (West == West::Up) return 2448; - else if (West == West::Side) return 2449; - else return 2450; - else - if (West == West::Up) return 2451; - else if (West == West::Side) return 2452; - else return 2453; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2454; - else if (West == West::Side) return 2455; - else return 2456; - else if (South == South::Side) - if (West == West::Up) return 2457; - else if (West == West::Side) return 2458; - else return 2459; - else - if (West == West::Up) return 2460; - else if (West == West::Side) return 2461; - else return 2462; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2463; - else if (West == West::Side) return 2464; - else return 2465; - else if (South == South::Side) - if (West == West::Up) return 2466; - else if (West == West::Side) return 2467; - else return 2468; - else - if (West == West::Up) return 2469; - else if (West == West::Side) return 2470; - else return 2471; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2472; - else if (West == West::Side) return 2473; - else return 2474; - else if (South == South::Side) - if (West == West::Up) return 2475; - else if (West == West::Side) return 2476; - else return 2477; - else - if (West == West::Up) return 2478; - else if (West == West::Side) return 2479; - else return 2480; - else - if (South == South::Up) - if (West == West::Up) return 2481; - else if (West == West::Side) return 2482; - else return 2483; - else if (South == South::Side) - if (West == West::Up) return 2484; - else if (West == West::Side) return 2485; - else return 2486; - else - if (West == West::Up) return 2487; - else if (West == West::Side) return 2488; - else return 2489; - else if (East == East::Side) - if (North == North::Up) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2490; - else if (West == West::Side) return 2491; - else return 2492; - else if (South == South::Side) - if (West == West::Up) return 2493; - else if (West == West::Side) return 2494; - else return 2495; - else - if (West == West::Up) return 2496; - else if (West == West::Side) return 2497; - else return 2498; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2499; - else if (West == West::Side) return 2500; - else return 2501; - else if (South == South::Side) - if (West == West::Up) return 2502; - else if (West == West::Side) return 2503; - else return 2504; - else - if (West == West::Up) return 2505; - else if (West == West::Side) return 2506; - else return 2507; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2508; - else if (West == West::Side) return 2509; - else return 2510; - else if (South == South::Side) - if (West == West::Up) return 2511; - else if (West == West::Side) return 2512; - else return 2513; - else - if (West == West::Up) return 2514; - else if (West == West::Side) return 2515; - else return 2516; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2517; - else if (West == West::Side) return 2518; - else return 2519; - else if (South == South::Side) - if (West == West::Up) return 2520; - else if (West == West::Side) return 2521; - else return 2522; - else - if (West == West::Up) return 2523; - else if (West == West::Side) return 2524; - else return 2525; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2526; - else if (West == West::Side) return 2527; - else return 2528; - else if (South == South::Side) - if (West == West::Up) return 2529; - else if (West == West::Side) return 2530; - else return 2531; - else - if (West == West::Up) return 2532; - else if (West == West::Side) return 2533; - else return 2534; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2535; - else if (West == West::Side) return 2536; - else return 2537; - else if (South == South::Side) - if (West == West::Up) return 2538; - else if (West == West::Side) return 2539; - else return 2540; - else - if (West == West::Up) return 2541; - else if (West == West::Side) return 2542; - else return 2543; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2544; - else if (West == West::Side) return 2545; - else return 2546; - else if (South == South::Side) - if (West == West::Up) return 2547; - else if (West == West::Side) return 2548; - else return 2549; - else - if (West == West::Up) return 2550; - else if (West == West::Side) return 2551; - else return 2552; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2553; - else if (West == West::Side) return 2554; - else return 2555; - else if (South == South::Side) - if (West == West::Up) return 2556; - else if (West == West::Side) return 2557; - else return 2558; - else - if (West == West::Up) return 2559; - else if (West == West::Side) return 2560; - else return 2561; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2562; - else if (West == West::Side) return 2563; - else return 2564; - else if (South == South::Side) - if (West == West::Up) return 2565; - else if (West == West::Side) return 2566; - else return 2567; - else - if (West == West::Up) return 2568; - else if (West == West::Side) return 2569; - else return 2570; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2571; - else if (West == West::Side) return 2572; - else return 2573; - else if (South == South::Side) - if (West == West::Up) return 2574; - else if (West == West::Side) return 2575; - else return 2576; - else - if (West == West::Up) return 2577; - else if (West == West::Side) return 2578; - else return 2579; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2580; - else if (West == West::Side) return 2581; - else return 2582; - else if (South == South::Side) - if (West == West::Up) return 2583; - else if (West == West::Side) return 2584; - else return 2585; - else - if (West == West::Up) return 2586; - else if (West == West::Side) return 2587; - else return 2588; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2589; - else if (West == West::Side) return 2590; - else return 2591; - else if (South == South::Side) - if (West == West::Up) return 2592; - else if (West == West::Side) return 2593; - else return 2594; - else - if (West == West::Up) return 2595; - else if (West == West::Side) return 2596; - else return 2597; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2598; - else if (West == West::Side) return 2599; - else return 2600; - else if (South == South::Side) - if (West == West::Up) return 2601; - else if (West == West::Side) return 2602; - else return 2603; - else - if (West == West::Up) return 2604; - else if (West == West::Side) return 2605; - else return 2606; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2607; - else if (West == West::Side) return 2608; - else return 2609; - else if (South == South::Side) - if (West == West::Up) return 2610; - else if (West == West::Side) return 2611; - else return 2612; - else - if (West == West::Up) return 2613; - else if (West == West::Side) return 2614; - else return 2615; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2616; - else if (West == West::Side) return 2617; - else return 2618; - else if (South == South::Side) - if (West == West::Up) return 2619; - else if (West == West::Side) return 2620; - else return 2621; - else - if (West == West::Up) return 2622; - else if (West == West::Side) return 2623; - else return 2624; - else - if (South == South::Up) - if (West == West::Up) return 2625; - else if (West == West::Side) return 2626; - else return 2627; - else if (South == South::Side) - if (West == West::Up) return 2628; - else if (West == West::Side) return 2629; - else return 2630; - else - if (West == West::Up) return 2631; - else if (West == West::Side) return 2632; - else return 2633; - else if (North == North::Side) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2634; - else if (West == West::Side) return 2635; - else return 2636; - else if (South == South::Side) - if (West == West::Up) return 2637; - else if (West == West::Side) return 2638; - else return 2639; - else - if (West == West::Up) return 2640; - else if (West == West::Side) return 2641; - else return 2642; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2643; - else if (West == West::Side) return 2644; - else return 2645; - else if (South == South::Side) - if (West == West::Up) return 2646; - else if (West == West::Side) return 2647; - else return 2648; - else - if (West == West::Up) return 2649; - else if (West == West::Side) return 2650; - else return 2651; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2652; - else if (West == West::Side) return 2653; - else return 2654; - else if (South == South::Side) - if (West == West::Up) return 2655; - else if (West == West::Side) return 2656; - else return 2657; - else - if (West == West::Up) return 2658; - else if (West == West::Side) return 2659; - else return 2660; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2661; - else if (West == West::Side) return 2662; - else return 2663; - else if (South == South::Side) - if (West == West::Up) return 2664; - else if (West == West::Side) return 2665; - else return 2666; - else - if (West == West::Up) return 2667; - else if (West == West::Side) return 2668; - else return 2669; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2670; - else if (West == West::Side) return 2671; - else return 2672; - else if (South == South::Side) - if (West == West::Up) return 2673; - else if (West == West::Side) return 2674; - else return 2675; - else - if (West == West::Up) return 2676; - else if (West == West::Side) return 2677; - else return 2678; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2679; - else if (West == West::Side) return 2680; - else return 2681; - else if (South == South::Side) - if (West == West::Up) return 2682; - else if (West == West::Side) return 2683; - else return 2684; - else - if (West == West::Up) return 2685; - else if (West == West::Side) return 2686; - else return 2687; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2688; - else if (West == West::Side) return 2689; - else return 2690; - else if (South == South::Side) - if (West == West::Up) return 2691; - else if (West == West::Side) return 2692; - else return 2693; - else - if (West == West::Up) return 2694; - else if (West == West::Side) return 2695; - else return 2696; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2697; - else if (West == West::Side) return 2698; - else return 2699; - else if (South == South::Side) - if (West == West::Up) return 2700; - else if (West == West::Side) return 2701; - else return 2702; - else - if (West == West::Up) return 2703; - else if (West == West::Side) return 2704; - else return 2705; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2706; - else if (West == West::Side) return 2707; - else return 2708; - else if (South == South::Side) - if (West == West::Up) return 2709; - else if (West == West::Side) return 2710; - else return 2711; - else - if (West == West::Up) return 2712; - else if (West == West::Side) return 2713; - else return 2714; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2715; - else if (West == West::Side) return 2716; - else return 2717; - else if (South == South::Side) - if (West == West::Up) return 2718; - else if (West == West::Side) return 2719; - else return 2720; - else - if (West == West::Up) return 2721; - else if (West == West::Side) return 2722; - else return 2723; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2724; - else if (West == West::Side) return 2725; - else return 2726; - else if (South == South::Side) - if (West == West::Up) return 2727; - else if (West == West::Side) return 2728; - else return 2729; - else - if (West == West::Up) return 2730; - else if (West == West::Side) return 2731; - else return 2732; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2733; - else if (West == West::Side) return 2734; - else return 2735; - else if (South == South::Side) - if (West == West::Up) return 2736; - else if (West == West::Side) return 2737; - else return 2738; - else - if (West == West::Up) return 2739; - else if (West == West::Side) return 2740; - else return 2741; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2742; - else if (West == West::Side) return 2743; - else return 2744; - else if (South == South::Side) - if (West == West::Up) return 2745; - else if (West == West::Side) return 2746; - else return 2747; - else - if (West == West::Up) return 2748; - else if (West == West::Side) return 2749; - else return 2750; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2751; - else if (West == West::Side) return 2752; - else return 2753; - else if (South == South::Side) - if (West == West::Up) return 2754; - else if (West == West::Side) return 2755; - else return 2756; - else - if (West == West::Up) return 2757; - else if (West == West::Side) return 2758; - else return 2759; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2760; - else if (West == West::Side) return 2761; - else return 2762; - else if (South == South::Side) - if (West == West::Up) return 2763; - else if (West == West::Side) return 2764; - else return 2765; - else - if (West == West::Up) return 2766; - else if (West == West::Side) return 2767; - else return 2768; - else - if (South == South::Up) - if (West == West::Up) return 2769; - else if (West == West::Side) return 2770; - else return 2771; - else if (South == South::Side) - if (West == West::Up) return 2772; - else if (West == West::Side) return 2773; - else return 2774; - else - if (West == West::Up) return 2775; - else if (West == West::Side) return 2776; - else return 2777; - else - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2778; - else if (West == West::Side) return 2779; - else return 2780; - else if (South == South::Side) - if (West == West::Up) return 2781; - else if (West == West::Side) return 2782; - else return 2783; - else - if (West == West::Up) return 2784; - else if (West == West::Side) return 2785; - else return 2786; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2787; - else if (West == West::Side) return 2788; - else return 2789; - else if (South == South::Side) - if (West == West::Up) return 2790; - else if (West == West::Side) return 2791; - else return 2792; - else - if (West == West::Up) return 2793; - else if (West == West::Side) return 2794; - else return 2795; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2796; - else if (West == West::Side) return 2797; - else return 2798; - else if (South == South::Side) - if (West == West::Up) return 2799; - else if (West == West::Side) return 2800; - else return 2801; - else - if (West == West::Up) return 2802; - else if (West == West::Side) return 2803; - else return 2804; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2805; - else if (West == West::Side) return 2806; - else return 2807; - else if (South == South::Side) - if (West == West::Up) return 2808; - else if (West == West::Side) return 2809; - else return 2810; - else - if (West == West::Up) return 2811; - else if (West == West::Side) return 2812; - else return 2813; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2814; - else if (West == West::Side) return 2815; - else return 2816; - else if (South == South::Side) - if (West == West::Up) return 2817; - else if (West == West::Side) return 2818; - else return 2819; - else - if (West == West::Up) return 2820; - else if (West == West::Side) return 2821; - else return 2822; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2823; - else if (West == West::Side) return 2824; - else return 2825; - else if (South == South::Side) - if (West == West::Up) return 2826; - else if (West == West::Side) return 2827; - else return 2828; - else - if (West == West::Up) return 2829; - else if (West == West::Side) return 2830; - else return 2831; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2832; - else if (West == West::Side) return 2833; - else return 2834; - else if (South == South::Side) - if (West == West::Up) return 2835; - else if (West == West::Side) return 2836; - else return 2837; - else - if (West == West::Up) return 2838; - else if (West == West::Side) return 2839; - else return 2840; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2841; - else if (West == West::Side) return 2842; - else return 2843; - else if (South == South::Side) - if (West == West::Up) return 2844; - else if (West == West::Side) return 2845; - else return 2846; - else - if (West == West::Up) return 2847; - else if (West == West::Side) return 2848; - else return 2849; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2850; - else if (West == West::Side) return 2851; - else return 2852; - else if (South == South::Side) - if (West == West::Up) return 2853; - else if (West == West::Side) return 2854; - else return 2855; - else - if (West == West::Up) return 2856; - else if (West == West::Side) return 2857; - else return 2858; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 2859; - else if (West == West::Side) return 2860; - else return 2861; - else if (South == South::Side) - if (West == West::Up) return 2862; - else if (West == West::Side) return 2863; - else return 2864; - else - if (West == West::Up) return 2865; - else if (West == West::Side) return 2866; - else return 2867; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 2868; - else if (West == West::Side) return 2869; - else return 2870; - else if (South == South::Side) - if (West == West::Up) return 2871; - else if (West == West::Side) return 2872; - else return 2873; - else - if (West == West::Up) return 2874; - else if (West == West::Side) return 2875; - else return 2876; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 2877; - else if (West == West::Side) return 2878; - else return 2879; - else if (South == South::Side) - if (West == West::Up) return 2880; - else if (West == West::Side) return 2881; - else return 2882; - else - if (West == West::Up) return 2883; - else if (West == West::Side) return 2884; - else return 2885; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 2886; - else if (West == West::Side) return 2887; - else return 2888; - else if (South == South::Side) - if (West == West::Up) return 2889; - else if (West == West::Side) return 2890; - else return 2891; - else - if (West == West::Up) return 2892; - else if (West == West::Side) return 2893; - else return 2894; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 2895; - else if (West == West::Side) return 2896; - else return 2897; - else if (South == South::Side) - if (West == West::Up) return 2898; - else if (West == West::Side) return 2899; - else return 2900; - else - if (West == West::Up) return 2901; - else if (West == West::Side) return 2902; - else return 2903; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 2904; - else if (West == West::Side) return 2905; - else return 2906; - else if (South == South::Side) - if (West == West::Up) return 2907; - else if (West == West::Side) return 2908; - else return 2909; - else - if (West == West::Up) return 2910; - else if (West == West::Side) return 2911; - else return 2912; - else - if (South == South::Up) - if (West == West::Up) return 2913; - else if (West == West::Side) return 2914; - else return 2915; - else if (South == South::Side) - if (West == West::Up) return 2916; - else if (West == West::Side) return 2917; - else return 2918; - else - if (West == West::Up) return 2919; - else if (West == West::Side) return 2920; - else return 2921; - else - if (North == North::Up) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 2922; - else if (West == West::Side) return 2923; - else return 2924; - else if (South == South::Side) - if (West == West::Up) return 2925; - else if (West == West::Side) return 2926; - else return 2927; - else - if (West == West::Up) return 2928; - else if (West == West::Side) return 2929; - else return 2930; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 2931; - else if (West == West::Side) return 2932; - else return 2933; - else if (South == South::Side) - if (West == West::Up) return 2934; - else if (West == West::Side) return 2935; - else return 2936; - else - if (West == West::Up) return 2937; - else if (West == West::Side) return 2938; - else return 2939; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 2940; - else if (West == West::Side) return 2941; - else return 2942; - else if (South == South::Side) - if (West == West::Up) return 2943; - else if (West == West::Side) return 2944; - else return 2945; - else - if (West == West::Up) return 2946; - else if (West == West::Side) return 2947; - else return 2948; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 2949; - else if (West == West::Side) return 2950; - else return 2951; - else if (South == South::Side) - if (West == West::Up) return 2952; - else if (West == West::Side) return 2953; - else return 2954; - else - if (West == West::Up) return 2955; - else if (West == West::Side) return 2956; - else return 2957; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 2958; - else if (West == West::Side) return 2959; - else return 2960; - else if (South == South::Side) - if (West == West::Up) return 2961; - else if (West == West::Side) return 2962; - else return 2963; - else - if (West == West::Up) return 2964; - else if (West == West::Side) return 2965; - else return 2966; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 2967; - else if (West == West::Side) return 2968; - else return 2969; - else if (South == South::Side) - if (West == West::Up) return 2970; - else if (West == West::Side) return 2971; - else return 2972; - else - if (West == West::Up) return 2973; - else if (West == West::Side) return 2974; - else return 2975; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 2976; - else if (West == West::Side) return 2977; - else return 2978; - else if (South == South::Side) - if (West == West::Up) return 2979; - else if (West == West::Side) return 2980; - else return 2981; - else - if (West == West::Up) return 2982; - else if (West == West::Side) return 2983; - else return 2984; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 2985; - else if (West == West::Side) return 2986; - else return 2987; - else if (South == South::Side) - if (West == West::Up) return 2988; - else if (West == West::Side) return 2989; - else return 2990; - else - if (West == West::Up) return 2991; - else if (West == West::Side) return 2992; - else return 2993; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 2994; - else if (West == West::Side) return 2995; - else return 2996; - else if (South == South::Side) - if (West == West::Up) return 2997; - else if (West == West::Side) return 2998; - else return 2999; - else - if (West == West::Up) return 3000; - else if (West == West::Side) return 3001; - else return 3002; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 3003; - else if (West == West::Side) return 3004; - else return 3005; - else if (South == South::Side) - if (West == West::Up) return 3006; - else if (West == West::Side) return 3007; - else return 3008; - else - if (West == West::Up) return 3009; - else if (West == West::Side) return 3010; - else return 3011; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 3012; - else if (West == West::Side) return 3013; - else return 3014; - else if (South == South::Side) - if (West == West::Up) return 3015; - else if (West == West::Side) return 3016; - else return 3017; - else - if (West == West::Up) return 3018; - else if (West == West::Side) return 3019; - else return 3020; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 3021; - else if (West == West::Side) return 3022; - else return 3023; - else if (South == South::Side) - if (West == West::Up) return 3024; - else if (West == West::Side) return 3025; - else return 3026; - else - if (West == West::Up) return 3027; - else if (West == West::Side) return 3028; - else return 3029; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 3030; - else if (West == West::Side) return 3031; - else return 3032; - else if (South == South::Side) - if (West == West::Up) return 3033; - else if (West == West::Side) return 3034; - else return 3035; - else - if (West == West::Up) return 3036; - else if (West == West::Side) return 3037; - else return 3038; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 3039; - else if (West == West::Side) return 3040; - else return 3041; - else if (South == South::Side) - if (West == West::Up) return 3042; - else if (West == West::Side) return 3043; - else return 3044; - else - if (West == West::Up) return 3045; - else if (West == West::Side) return 3046; - else return 3047; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 3048; - else if (West == West::Side) return 3049; - else return 3050; - else if (South == South::Side) - if (West == West::Up) return 3051; - else if (West == West::Side) return 3052; - else return 3053; - else - if (West == West::Up) return 3054; - else if (West == West::Side) return 3055; - else return 3056; - else - if (South == South::Up) - if (West == West::Up) return 3057; - else if (West == West::Side) return 3058; - else return 3059; - else if (South == South::Side) - if (West == West::Up) return 3060; - else if (West == West::Side) return 3061; - else return 3062; - else - if (West == West::Up) return 3063; - else if (West == West::Side) return 3064; - else return 3065; - else if (North == North::Side) - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 3066; - else if (West == West::Side) return 3067; - else return 3068; - else if (South == South::Side) - if (West == West::Up) return 3069; - else if (West == West::Side) return 3070; - else return 3071; - else - if (West == West::Up) return 3072; - else if (West == West::Side) return 3073; - else return 3074; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 3075; - else if (West == West::Side) return 3076; - else return 3077; - else if (South == South::Side) - if (West == West::Up) return 3078; - else if (West == West::Side) return 3079; - else return 3080; - else - if (West == West::Up) return 3081; - else if (West == West::Side) return 3082; - else return 3083; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 3084; - else if (West == West::Side) return 3085; - else return 3086; - else if (South == South::Side) - if (West == West::Up) return 3087; - else if (West == West::Side) return 3088; - else return 3089; - else - if (West == West::Up) return 3090; - else if (West == West::Side) return 3091; - else return 3092; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 3093; - else if (West == West::Side) return 3094; - else return 3095; - else if (South == South::Side) - if (West == West::Up) return 3096; - else if (West == West::Side) return 3097; - else return 3098; - else - if (West == West::Up) return 3099; - else if (West == West::Side) return 3100; - else return 3101; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 3102; - else if (West == West::Side) return 3103; - else return 3104; - else if (South == South::Side) - if (West == West::Up) return 3105; - else if (West == West::Side) return 3106; - else return 3107; - else - if (West == West::Up) return 3108; - else if (West == West::Side) return 3109; - else return 3110; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 3111; - else if (West == West::Side) return 3112; - else return 3113; - else if (South == South::Side) - if (West == West::Up) return 3114; - else if (West == West::Side) return 3115; - else return 3116; - else - if (West == West::Up) return 3117; - else if (West == West::Side) return 3118; - else return 3119; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 3120; - else if (West == West::Side) return 3121; - else return 3122; - else if (South == South::Side) - if (West == West::Up) return 3123; - else if (West == West::Side) return 3124; - else return 3125; - else - if (West == West::Up) return 3126; - else if (West == West::Side) return 3127; - else return 3128; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 3129; - else if (West == West::Side) return 3130; - else return 3131; - else if (South == South::Side) - if (West == West::Up) return 3132; - else if (West == West::Side) return 3133; - else return 3134; - else - if (West == West::Up) return 3135; - else if (West == West::Side) return 3136; - else return 3137; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 3138; - else if (West == West::Side) return 3139; - else return 3140; - else if (South == South::Side) - if (West == West::Up) return 3141; - else if (West == West::Side) return 3142; - else return 3143; - else - if (West == West::Up) return 3144; - else if (West == West::Side) return 3145; - else return 3146; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 3147; - else if (West == West::Side) return 3148; - else return 3149; - else if (South == South::Side) - if (West == West::Up) return 3150; - else if (West == West::Side) return 3151; - else return 3152; - else - if (West == West::Up) return 3153; - else if (West == West::Side) return 3154; - else return 3155; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 3156; - else if (West == West::Side) return 3157; - else return 3158; - else if (South == South::Side) - if (West == West::Up) return 3159; - else if (West == West::Side) return 3160; - else return 3161; - else - if (West == West::Up) return 3162; - else if (West == West::Side) return 3163; - else return 3164; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 3165; - else if (West == West::Side) return 3166; - else return 3167; - else if (South == South::Side) - if (West == West::Up) return 3168; - else if (West == West::Side) return 3169; - else return 3170; - else - if (West == West::Up) return 3171; - else if (West == West::Side) return 3172; - else return 3173; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 3174; - else if (West == West::Side) return 3175; - else return 3176; - else if (South == South::Side) - if (West == West::Up) return 3177; - else if (West == West::Side) return 3178; - else return 3179; - else - if (West == West::Up) return 3180; - else if (West == West::Side) return 3181; - else return 3182; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 3183; - else if (West == West::Side) return 3184; - else return 3185; - else if (South == South::Side) - if (West == West::Up) return 3186; - else if (West == West::Side) return 3187; - else return 3188; - else - if (West == West::Up) return 3189; - else if (West == West::Side) return 3190; - else return 3191; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 3192; - else if (West == West::Side) return 3193; - else return 3194; - else if (South == South::Side) - if (West == West::Up) return 3195; - else if (West == West::Side) return 3196; - else return 3197; - else - if (West == West::Up) return 3198; - else if (West == West::Side) return 3199; - else return 3200; - else - if (South == South::Up) - if (West == West::Up) return 3201; - else if (West == West::Side) return 3202; - else return 3203; - else if (South == South::Side) - if (West == West::Up) return 3204; - else if (West == West::Side) return 3205; - else return 3206; - else - if (West == West::Up) return 3207; - else if (West == West::Side) return 3208; - else return 3209; - else - if (Power == 0) - if (South == South::Up) - if (West == West::Up) return 3210; - else if (West == West::Side) return 3211; - else return 3212; - else if (South == South::Side) - if (West == West::Up) return 3213; - else if (West == West::Side) return 3214; - else return 3215; - else - if (West == West::Up) return 3216; - else if (West == West::Side) return 3217; - else return 3218; - else if (Power == 1) - if (South == South::Up) - if (West == West::Up) return 3219; - else if (West == West::Side) return 3220; - else return 3221; - else if (South == South::Side) - if (West == West::Up) return 3222; - else if (West == West::Side) return 3223; - else return 3224; - else - if (West == West::Up) return 3225; - else if (West == West::Side) return 3226; - else return 3227; - else if (Power == 2) - if (South == South::Up) - if (West == West::Up) return 3228; - else if (West == West::Side) return 3229; - else return 3230; - else if (South == South::Side) - if (West == West::Up) return 3231; - else if (West == West::Side) return 3232; - else return 3233; - else - if (West == West::Up) return 3234; - else if (West == West::Side) return 3235; - else return 3236; - else if (Power == 3) - if (South == South::Up) - if (West == West::Up) return 3237; - else if (West == West::Side) return 3238; - else return 3239; - else if (South == South::Side) - if (West == West::Up) return 3240; - else if (West == West::Side) return 3241; - else return 3242; - else - if (West == West::Up) return 3243; - else if (West == West::Side) return 3244; - else return 3245; - else if (Power == 4) - if (South == South::Up) - if (West == West::Up) return 3246; - else if (West == West::Side) return 3247; - else return 3248; - else if (South == South::Side) - if (West == West::Up) return 3249; - else if (West == West::Side) return 3250; - else return 3251; - else - if (West == West::Up) return 3252; - else if (West == West::Side) return 3253; - else return 3254; - else if (Power == 5) - if (South == South::Up) - if (West == West::Up) return 3255; - else if (West == West::Side) return 3256; - else return 3257; - else if (South == South::Side) - if (West == West::Up) return 3258; - else if (West == West::Side) return 3259; - else return 3260; - else - if (West == West::Up) return 3261; - else if (West == West::Side) return 3262; - else return 3263; - else if (Power == 6) - if (South == South::Up) - if (West == West::Up) return 3264; - else if (West == West::Side) return 3265; - else return 3266; - else if (South == South::Side) - if (West == West::Up) return 3267; - else if (West == West::Side) return 3268; - else return 3269; - else - if (West == West::Up) return 3270; - else if (West == West::Side) return 3271; - else return 3272; - else if (Power == 7) - if (South == South::Up) - if (West == West::Up) return 3273; - else if (West == West::Side) return 3274; - else return 3275; - else if (South == South::Side) - if (West == West::Up) return 3276; - else if (West == West::Side) return 3277; - else return 3278; - else - if (West == West::Up) return 3279; - else if (West == West::Side) return 3280; - else return 3281; - else if (Power == 8) - if (South == South::Up) - if (West == West::Up) return 3282; - else if (West == West::Side) return 3283; - else return 3284; - else if (South == South::Side) - if (West == West::Up) return 3285; - else if (West == West::Side) return 3286; - else return 3287; - else - if (West == West::Up) return 3288; - else if (West == West::Side) return 3289; - else return 3290; - else if (Power == 9) - if (South == South::Up) - if (West == West::Up) return 3291; - else if (West == West::Side) return 3292; - else return 3293; - else if (South == South::Side) - if (West == West::Up) return 3294; - else if (West == West::Side) return 3295; - else return 3296; - else - if (West == West::Up) return 3297; - else if (West == West::Side) return 3298; - else return 3299; - else if (Power == 10) - if (South == South::Up) - if (West == West::Up) return 3300; - else if (West == West::Side) return 3301; - else return 3302; - else if (South == South::Side) - if (West == West::Up) return 3303; - else if (West == West::Side) return 3304; - else return 3305; - else - if (West == West::Up) return 3306; - else if (West == West::Side) return 3307; - else return 3308; - else if (Power == 11) - if (South == South::Up) - if (West == West::Up) return 3309; - else if (West == West::Side) return 3310; - else return 3311; - else if (South == South::Side) - if (West == West::Up) return 3312; - else if (West == West::Side) return 3313; - else return 3314; - else - if (West == West::Up) return 3315; - else if (West == West::Side) return 3316; - else return 3317; - else if (Power == 12) - if (South == South::Up) - if (West == West::Up) return 3318; - else if (West == West::Side) return 3319; - else return 3320; - else if (South == South::Side) - if (West == West::Up) return 3321; - else if (West == West::Side) return 3322; - else return 3323; - else - if (West == West::Up) return 3324; - else if (West == West::Side) return 3325; - else return 3326; - else if (Power == 13) - if (South == South::Up) - if (West == West::Up) return 3327; - else if (West == West::Side) return 3328; - else return 3329; - else if (South == South::Side) - if (West == West::Up) return 3330; - else if (West == West::Side) return 3331; - else return 3332; - else - if (West == West::Up) return 3333; - else if (West == West::Side) return 3334; - else return 3335; - else if (Power == 14) - if (South == South::Up) - if (West == West::Up) return 3336; - else if (West == West::Side) return 3337; - else return 3338; - else if (South == South::Side) - if (West == West::Up) return 3339; - else if (West == West::Side) return 3340; - else return 3341; - else - if (West == West::Up) return 3342; - else if (West == West::Side) return 3343; - else return 3344; - else - if (South == South::Up) - if (West == West::Up) return 3345; - else if (West == West::Side) return 3346; - else return 3347; - else if (South == South::Side) - if (West == West::Up) return 3348; - else if (West == West::Side) return 3349; - else return 3350; - else - if (West == West::Up) return 3351; - else if (West == West::Side) return 3352; - else return 3353; - } - BlockState RedstoneWire(); - enum East East(BlockState Block); - enum North North(BlockState Block); - unsigned char Power(BlockState Block); - enum South South(BlockState Block); - enum West West(BlockState Block); - } - namespace Repeater - { - constexpr BlockState Repeater(const unsigned char Delay, const eBlockFace Facing, const bool Locked, const bool Powered) - { - if (Delay == 1) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Locked) - if (Powered) return 4031; - else return 4032; - else - if (Powered) return 4033; - else return 4034; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Locked) - if (Powered) return 4035; - else return 4036; - else - if (Powered) return 4037; - else return 4038; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Locked) - if (Powered) return 4039; - else return 4040; - else - if (Powered) return 4041; - else return 4042; - else - if (Locked) - if (Powered) return 4043; - else return 4044; - else - if (Powered) return 4045; - else return 4046; - else if (Delay == 2) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Locked) - if (Powered) return 4047; - else return 4048; - else - if (Powered) return 4049; - else return 4050; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Locked) - if (Powered) return 4051; - else return 4052; - else - if (Powered) return 4053; - else return 4054; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Locked) - if (Powered) return 4055; - else return 4056; - else - if (Powered) return 4057; - else return 4058; - else - if (Locked) - if (Powered) return 4059; - else return 4060; - else - if (Powered) return 4061; - else return 4062; - else if (Delay == 3) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Locked) - if (Powered) return 4063; - else return 4064; - else - if (Powered) return 4065; - else return 4066; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Locked) - if (Powered) return 4067; - else return 4068; - else - if (Powered) return 4069; - else return 4070; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Locked) - if (Powered) return 4071; - else return 4072; - else - if (Powered) return 4073; - else return 4074; - else - if (Locked) - if (Powered) return 4075; - else return 4076; - else - if (Powered) return 4077; - else return 4078; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Locked) - if (Powered) return 4079; - else return 4080; - else - if (Powered) return 4081; - else return 4082; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Locked) - if (Powered) return 4083; - else return 4084; - else - if (Powered) return 4085; - else return 4086; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Locked) - if (Powered) return 4087; - else return 4088; - else - if (Powered) return 4089; - else return 4090; - else - if (Locked) - if (Powered) return 4091; - else return 4092; - else - if (Powered) return 4093; - else return 4094; - } - BlockState Repeater(); - unsigned char Delay(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Locked(BlockState Block); - bool Powered(BlockState Block); - } - namespace RepeatingCommandBlock - { - constexpr BlockState RepeatingCommandBlock(const bool Conditional, const eBlockFace Facing) - { - if (Conditional) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9225; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9226; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9227; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9228; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9229; - else return 9230; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9231; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9232; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9233; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9234; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9235; - else return 9236; - } - BlockState RepeatingCommandBlock(); - bool Conditional(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace RespawnAnchor - { - constexpr BlockState RespawnAnchor(const unsigned char Charges) - { - if (Charges == 0) return 15829; - else if (Charges == 1) return 15830; - else if (Charges == 2) return 15831; - else if (Charges == 3) return 15832; - else return 15833; - } - BlockState RespawnAnchor(); - unsigned char Charges(BlockState Block); - } - namespace RoseBush - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState RoseBush(const enum Half Half) - { - if (Half == Half::Upper) return 7889; - else return 7890; - } - BlockState RoseBush(); - enum Half Half(BlockState Block); - } - namespace Sand - { - constexpr BlockState Sand() - { - return 66; - } - } - namespace Sandstone - { - constexpr BlockState Sandstone() - { - return 246; - } - } - namespace SandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8349; - else if (Type == Type::Bottom) return 8351; - else return 8353; - } - BlockState SandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace SandstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState SandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5171; - else if (Shape == Shape::InnerLeft) return 5173; - else if (Shape == Shape::InnerRight) return 5175; - else if (Shape == Shape::OuterLeft) return 5177; - else return 5179; - else - if (Shape == Shape::Straight) return 5181; - else if (Shape == Shape::InnerLeft) return 5183; - else if (Shape == Shape::InnerRight) return 5185; - else if (Shape == Shape::OuterLeft) return 5187; - else return 5189; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5191; - else if (Shape == Shape::InnerLeft) return 5193; - else if (Shape == Shape::InnerRight) return 5195; - else if (Shape == Shape::OuterLeft) return 5197; - else return 5199; - else - if (Shape == Shape::Straight) return 5201; - else if (Shape == Shape::InnerLeft) return 5203; - else if (Shape == Shape::InnerRight) return 5205; - else if (Shape == Shape::OuterLeft) return 5207; - else return 5209; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5211; - else if (Shape == Shape::InnerLeft) return 5213; - else if (Shape == Shape::InnerRight) return 5215; - else if (Shape == Shape::OuterLeft) return 5217; - else return 5219; - else - if (Shape == Shape::Straight) return 5221; - else if (Shape == Shape::InnerLeft) return 5223; - else if (Shape == Shape::InnerRight) return 5225; - else if (Shape == Shape::OuterLeft) return 5227; - else return 5229; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5231; - else if (Shape == Shape::InnerLeft) return 5233; - else if (Shape == Shape::InnerRight) return 5235; - else if (Shape == Shape::OuterLeft) return 5237; - else return 5239; - else - if (Shape == Shape::Straight) return 5241; - else if (Shape == Shape::InnerLeft) return 5243; - else if (Shape == Shape::InnerRight) return 5245; - else if (Shape == Shape::OuterLeft) return 5247; - else return 5249; - } - BlockState SandstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState SandstoneWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13786; - else if (West == West::Low) return 13787; - else return 13788; - else - if (West == West::None) return 13792; - else if (West == West::Low) return 13793; - else return 13794; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13798; - else if (West == West::Low) return 13799; - else return 13800; - else - if (West == West::None) return 13804; - else if (West == West::Low) return 13805; - else return 13806; - else - if (Up) - if (West == West::None) return 13810; - else if (West == West::Low) return 13811; - else return 13812; - else - if (West == West::None) return 13816; - else if (West == West::Low) return 13817; - else return 13818; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13822; - else if (West == West::Low) return 13823; - else return 13824; - else - if (West == West::None) return 13828; - else if (West == West::Low) return 13829; - else return 13830; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13834; - else if (West == West::Low) return 13835; - else return 13836; - else - if (West == West::None) return 13840; - else if (West == West::Low) return 13841; - else return 13842; - else - if (Up) - if (West == West::None) return 13846; - else if (West == West::Low) return 13847; - else return 13848; - else - if (West == West::None) return 13852; - else if (West == West::Low) return 13853; - else return 13854; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13858; - else if (West == West::Low) return 13859; - else return 13860; - else - if (West == West::None) return 13864; - else if (West == West::Low) return 13865; - else return 13866; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13870; - else if (West == West::Low) return 13871; - else return 13872; - else - if (West == West::None) return 13876; - else if (West == West::Low) return 13877; - else return 13878; - else - if (Up) - if (West == West::None) return 13882; - else if (West == West::Low) return 13883; - else return 13884; - else - if (West == West::None) return 13888; - else if (West == West::Low) return 13889; - else return 13890; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 13894; - else if (West == West::Low) return 13895; - else return 13896; - else - if (West == West::None) return 13900; - else if (West == West::Low) return 13901; - else return 13902; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13906; - else if (West == West::Low) return 13907; - else return 13908; - else - if (West == West::None) return 13912; - else if (West == West::Low) return 13913; - else return 13914; - else - if (Up) - if (West == West::None) return 13918; - else if (West == West::Low) return 13919; - else return 13920; - else - if (West == West::None) return 13924; - else if (West == West::Low) return 13925; - else return 13926; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 13930; - else if (West == West::Low) return 13931; - else return 13932; - else - if (West == West::None) return 13936; - else if (West == West::Low) return 13937; - else return 13938; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13942; - else if (West == West::Low) return 13943; - else return 13944; - else - if (West == West::None) return 13948; - else if (West == West::Low) return 13949; - else return 13950; - else - if (Up) - if (West == West::None) return 13954; - else if (West == West::Low) return 13955; - else return 13956; - else - if (West == West::None) return 13960; - else if (West == West::Low) return 13961; - else return 13962; - else - if (South == South::None) - if (Up) - if (West == West::None) return 13966; - else if (West == West::Low) return 13967; - else return 13968; - else - if (West == West::None) return 13972; - else if (West == West::Low) return 13973; - else return 13974; - else if (South == South::Low) - if (Up) - if (West == West::None) return 13978; - else if (West == West::Low) return 13979; - else return 13980; - else - if (West == West::None) return 13984; - else if (West == West::Low) return 13985; - else return 13986; - else - if (Up) - if (West == West::None) return 13990; - else if (West == West::Low) return 13991; - else return 13992; - else - if (West == West::None) return 13996; - else if (West == West::Low) return 13997; - else return 13998; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 14002; - else if (West == West::Low) return 14003; - else return 14004; - else - if (West == West::None) return 14008; - else if (West == West::Low) return 14009; - else return 14010; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14014; - else if (West == West::Low) return 14015; - else return 14016; - else - if (West == West::None) return 14020; - else if (West == West::Low) return 14021; - else return 14022; - else - if (Up) - if (West == West::None) return 14026; - else if (West == West::Low) return 14027; - else return 14028; - else - if (West == West::None) return 14032; - else if (West == West::Low) return 14033; - else return 14034; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 14038; - else if (West == West::Low) return 14039; - else return 14040; - else - if (West == West::None) return 14044; - else if (West == West::Low) return 14045; - else return 14046; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14050; - else if (West == West::Low) return 14051; - else return 14052; - else - if (West == West::None) return 14056; - else if (West == West::Low) return 14057; - else return 14058; - else - if (Up) - if (West == West::None) return 14062; - else if (West == West::Low) return 14063; - else return 14064; - else - if (West == West::None) return 14068; - else if (West == West::Low) return 14069; - else return 14070; - else - if (South == South::None) - if (Up) - if (West == West::None) return 14074; - else if (West == West::Low) return 14075; - else return 14076; - else - if (West == West::None) return 14080; - else if (West == West::Low) return 14081; - else return 14082; - else if (South == South::Low) - if (Up) - if (West == West::None) return 14086; - else if (West == West::Low) return 14087; - else return 14088; - else - if (West == West::None) return 14092; - else if (West == West::Low) return 14093; - else return 14094; - else - if (Up) - if (West == West::None) return 14098; - else if (West == West::Low) return 14099; - else return 14100; - else - if (West == West::None) return 14104; - else if (West == West::Low) return 14105; - else return 14106; - } - BlockState SandstoneWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace Scaffolding - { - constexpr BlockState Scaffolding(const bool Bottom, const unsigned char Distance) - { - if (Bottom) - if (Distance == 0) return 14756; - else if (Distance == 1) return 14758; - else if (Distance == 2) return 14760; - else if (Distance == 3) return 14762; - else if (Distance == 4) return 14764; - else if (Distance == 5) return 14766; - else if (Distance == 6) return 14768; - else return 14770; - else - if (Distance == 0) return 14772; - else if (Distance == 1) return 14774; - else if (Distance == 2) return 14776; - else if (Distance == 3) return 14778; - else if (Distance == 4) return 14780; - else if (Distance == 5) return 14782; - else if (Distance == 6) return 14784; - else return 14786; - } - BlockState Scaffolding(); - bool Bottom(BlockState Block); - unsigned char Distance(BlockState Block); - } - namespace SeaLantern - { - constexpr BlockState SeaLantern() - { - return 7862; - } - } - namespace SeaPickle - { - constexpr BlockState SeaPickle(const unsigned char Pickles) - { - if (Pickles == 1) return 9641; - else if (Pickles == 2) return 9643; - else if (Pickles == 3) return 9645; - else return 9647; - } - BlockState SeaPickle(); - unsigned char Pickles(BlockState Block); - } - namespace Seagrass - { - constexpr BlockState Seagrass() - { - return 1345; - } - } - namespace Shroomlight - { - constexpr BlockState Shroomlight() - { - return 14989; - } - } - namespace ShulkerBox - { - constexpr BlockState ShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9272; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9273; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9274; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9275; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9276; - else return 9277; - } - BlockState ShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace SkeletonSkull - { - constexpr BlockState SkeletonSkull(const unsigned char Rotation) - { - if (Rotation == 0) return 6490; - else if (Rotation == 1) return 6491; - else if (Rotation == 2) return 6492; - else if (Rotation == 3) return 6493; - else if (Rotation == 4) return 6494; - else if (Rotation == 5) return 6495; - else if (Rotation == 6) return 6496; - else if (Rotation == 7) return 6497; - else if (Rotation == 8) return 6498; - else if (Rotation == 9) return 6499; - else if (Rotation == 10) return 6500; - else if (Rotation == 11) return 6501; - else if (Rotation == 12) return 6502; - else if (Rotation == 13) return 6503; - else if (Rotation == 14) return 6504; - else return 6505; - } - BlockState SkeletonSkull(); - unsigned char Rotation(BlockState Block); - } - namespace SkeletonWallSkull - { - constexpr BlockState SkeletonWallSkull(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6506; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6507; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6508; - else return 6509; - } - BlockState SkeletonWallSkull(); - eBlockFace Facing(BlockState Block); - } - namespace SlimeBlock - { - constexpr BlockState SlimeBlock() - { - return 7535; - } - } - namespace SmithingTable - { - constexpr BlockState SmithingTable() - { - return 14849; - } - } - namespace Smoker - { - constexpr BlockState Smoker(const eBlockFace Facing, const bool Lit) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) return 14803; - else return 14804; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) return 14805; - else return 14806; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) return 14807; - else return 14808; - else - if (Lit) return 14809; - else return 14810; - } - BlockState Smoker(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - } - namespace SmoothQuartz - { - constexpr BlockState SmoothQuartz() - { - return 8416; - } - } - namespace SmoothQuartzSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SmoothQuartzSlab(const enum Type Type) - { - if (Type == Type::Top) return 10832; - else if (Type == Type::Bottom) return 10834; - else return 10836; - } - BlockState SmoothQuartzSlab(); - enum Type Type(BlockState Block); - } - namespace SmoothQuartzStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState SmoothQuartzStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10310; - else if (Shape == Shape::InnerLeft) return 10312; - else if (Shape == Shape::InnerRight) return 10314; - else if (Shape == Shape::OuterLeft) return 10316; - else return 10318; - else - if (Shape == Shape::Straight) return 10320; - else if (Shape == Shape::InnerLeft) return 10322; - else if (Shape == Shape::InnerRight) return 10324; - else if (Shape == Shape::OuterLeft) return 10326; - else return 10328; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10330; - else if (Shape == Shape::InnerLeft) return 10332; - else if (Shape == Shape::InnerRight) return 10334; - else if (Shape == Shape::OuterLeft) return 10336; - else return 10338; - else - if (Shape == Shape::Straight) return 10340; - else if (Shape == Shape::InnerLeft) return 10342; - else if (Shape == Shape::InnerRight) return 10344; - else if (Shape == Shape::OuterLeft) return 10346; - else return 10348; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10350; - else if (Shape == Shape::InnerLeft) return 10352; - else if (Shape == Shape::InnerRight) return 10354; - else if (Shape == Shape::OuterLeft) return 10356; - else return 10358; - else - if (Shape == Shape::Straight) return 10360; - else if (Shape == Shape::InnerLeft) return 10362; - else if (Shape == Shape::InnerRight) return 10364; - else if (Shape == Shape::OuterLeft) return 10366; - else return 10368; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10370; - else if (Shape == Shape::InnerLeft) return 10372; - else if (Shape == Shape::InnerRight) return 10374; - else if (Shape == Shape::OuterLeft) return 10376; - else return 10378; - else - if (Shape == Shape::Straight) return 10380; - else if (Shape == Shape::InnerLeft) return 10382; - else if (Shape == Shape::InnerRight) return 10384; - else if (Shape == Shape::OuterLeft) return 10386; - else return 10388; - } - BlockState SmoothQuartzStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace SmoothRedSandstone - { - constexpr BlockState SmoothRedSandstone() - { - return 8417; - } - } - namespace SmoothRedSandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SmoothRedSandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 10796; - else if (Type == Type::Bottom) return 10798; - else return 10800; - } - BlockState SmoothRedSandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace SmoothRedSandstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState SmoothRedSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9750; - else if (Shape == Shape::InnerLeft) return 9752; - else if (Shape == Shape::InnerRight) return 9754; - else if (Shape == Shape::OuterLeft) return 9756; - else return 9758; - else - if (Shape == Shape::Straight) return 9760; - else if (Shape == Shape::InnerLeft) return 9762; - else if (Shape == Shape::InnerRight) return 9764; - else if (Shape == Shape::OuterLeft) return 9766; - else return 9768; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9770; - else if (Shape == Shape::InnerLeft) return 9772; - else if (Shape == Shape::InnerRight) return 9774; - else if (Shape == Shape::OuterLeft) return 9776; - else return 9778; - else - if (Shape == Shape::Straight) return 9780; - else if (Shape == Shape::InnerLeft) return 9782; - else if (Shape == Shape::InnerRight) return 9784; - else if (Shape == Shape::OuterLeft) return 9786; - else return 9788; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9790; - else if (Shape == Shape::InnerLeft) return 9792; - else if (Shape == Shape::InnerRight) return 9794; - else if (Shape == Shape::OuterLeft) return 9796; - else return 9798; - else - if (Shape == Shape::Straight) return 9800; - else if (Shape == Shape::InnerLeft) return 9802; - else if (Shape == Shape::InnerRight) return 9804; - else if (Shape == Shape::OuterLeft) return 9806; - else return 9808; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 9810; - else if (Shape == Shape::InnerLeft) return 9812; - else if (Shape == Shape::InnerRight) return 9814; - else if (Shape == Shape::OuterLeft) return 9816; - else return 9818; - else - if (Shape == Shape::Straight) return 9820; - else if (Shape == Shape::InnerLeft) return 9822; - else if (Shape == Shape::InnerRight) return 9824; - else if (Shape == Shape::OuterLeft) return 9826; - else return 9828; - } - BlockState SmoothRedSandstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace SmoothSandstone - { - constexpr BlockState SmoothSandstone() - { - return 8415; - } - } - namespace SmoothSandstoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SmoothSandstoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 10826; - else if (Type == Type::Bottom) return 10828; - else return 10830; - } - BlockState SmoothSandstoneSlab(); - enum Type Type(BlockState Block); - } - namespace SmoothSandstoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState SmoothSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10230; - else if (Shape == Shape::InnerLeft) return 10232; - else if (Shape == Shape::InnerRight) return 10234; - else if (Shape == Shape::OuterLeft) return 10236; - else return 10238; - else - if (Shape == Shape::Straight) return 10240; - else if (Shape == Shape::InnerLeft) return 10242; - else if (Shape == Shape::InnerRight) return 10244; - else if (Shape == Shape::OuterLeft) return 10246; - else return 10248; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10250; - else if (Shape == Shape::InnerLeft) return 10252; - else if (Shape == Shape::InnerRight) return 10254; - else if (Shape == Shape::OuterLeft) return 10256; - else return 10258; - else - if (Shape == Shape::Straight) return 10260; - else if (Shape == Shape::InnerLeft) return 10262; - else if (Shape == Shape::InnerRight) return 10264; - else if (Shape == Shape::OuterLeft) return 10266; - else return 10268; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10270; - else if (Shape == Shape::InnerLeft) return 10272; - else if (Shape == Shape::InnerRight) return 10274; - else if (Shape == Shape::OuterLeft) return 10276; - else return 10278; - else - if (Shape == Shape::Straight) return 10280; - else if (Shape == Shape::InnerLeft) return 10282; - else if (Shape == Shape::InnerRight) return 10284; - else if (Shape == Shape::OuterLeft) return 10286; - else return 10288; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10290; - else if (Shape == Shape::InnerLeft) return 10292; - else if (Shape == Shape::InnerRight) return 10294; - else if (Shape == Shape::OuterLeft) return 10296; - else return 10298; - else - if (Shape == Shape::Straight) return 10300; - else if (Shape == Shape::InnerLeft) return 10302; - else if (Shape == Shape::InnerRight) return 10304; - else if (Shape == Shape::OuterLeft) return 10306; - else return 10308; - } - BlockState SmoothSandstoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace SmoothStone - { - constexpr BlockState SmoothStone() - { - return 8414; - } - } - namespace SmoothStoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SmoothStoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8343; - else if (Type == Type::Bottom) return 8345; - else return 8347; - } - BlockState SmoothStoneSlab(); - enum Type Type(BlockState Block); - } - namespace Snow - { - constexpr BlockState Snow(const unsigned char Layers) - { - if (Layers == 1) return 3921; - else if (Layers == 2) return 3922; - else if (Layers == 3) return 3923; - else if (Layers == 4) return 3924; - else if (Layers == 5) return 3925; - else if (Layers == 6) return 3926; - else if (Layers == 7) return 3927; - else return 3928; - } - BlockState Snow(); - unsigned char Layers(BlockState Block); - } - namespace SnowBlock - { - constexpr BlockState SnowBlock() - { - return 3930; - } - } - namespace SoulCampfire - { - constexpr BlockState SoulCampfire(const eBlockFace Facing, const bool Lit, const bool SignalFire) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Lit) - if (SignalFire) return 14923; - else return 14925; - else - if (SignalFire) return 14927; - else return 14929; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Lit) - if (SignalFire) return 14931; - else return 14933; - else - if (SignalFire) return 14935; - else return 14937; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Lit) - if (SignalFire) return 14939; - else return 14941; - else - if (SignalFire) return 14943; - else return 14945; - else - if (Lit) - if (SignalFire) return 14947; - else return 14949; - else - if (SignalFire) return 14951; - else return 14953; - } - BlockState SoulCampfire(); - eBlockFace Facing(BlockState Block); - bool Lit(BlockState Block); - bool SignalFire(BlockState Block); - } - namespace SoulFire - { - constexpr BlockState SoulFire() - { - return 1952; - } - } - namespace SoulLantern - { - constexpr BlockState SoulLantern(const bool Hanging) - { - if (Hanging) return 14888; - else return 14889; - } - BlockState SoulLantern(); - bool Hanging(BlockState Block); - } - namespace SoulSand - { - constexpr BlockState SoulSand() - { - return 4000; - } - } - namespace SoulSoil - { - constexpr BlockState SoulSoil() - { - return 4001; - } - } - namespace SoulTorch - { - constexpr BlockState SoulTorch() - { - return 4008; - } - } - namespace SoulWallTorch - { - constexpr BlockState SoulWallTorch(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4009; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4010; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 4011; - else return 4012; - } - BlockState SoulWallTorch(); - eBlockFace Facing(BlockState Block); - } - namespace Spawner - { - constexpr BlockState Spawner() - { - return 1953; - } - } - namespace Sponge - { - constexpr BlockState Sponge() - { - return 229; - } - } - namespace SpruceButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState SpruceButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6370; - else return 6371; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6372; - else return 6373; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6374; - else return 6375; - else - if (Powered) return 6376; - else return 6377; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6378; - else return 6379; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6380; - else return 6381; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6382; - else return 6383; - else - if (Powered) return 6384; - else return 6385; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 6386; - else return 6387; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 6388; - else return 6389; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 6390; - else return 6391; - else - if (Powered) return 6392; - else return 6393; - } - BlockState SpruceButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace SpruceDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState SpruceDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8738; - else return 8739; - else - if (Powered) return 8740; - else return 8741; - else - if (Open) - if (Powered) return 8742; - else return 8743; - else - if (Powered) return 8744; - else return 8745; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8746; - else return 8747; - else - if (Powered) return 8748; - else return 8749; - else - if (Open) - if (Powered) return 8750; - else return 8751; - else - if (Powered) return 8752; - else return 8753; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8754; - else return 8755; - else - if (Powered) return 8756; - else return 8757; - else - if (Open) - if (Powered) return 8758; - else return 8759; - else - if (Powered) return 8760; - else return 8761; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8762; - else return 8763; - else - if (Powered) return 8764; - else return 8765; - else - if (Open) - if (Powered) return 8766; - else return 8767; - else - if (Powered) return 8768; - else return 8769; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8770; - else return 8771; - else - if (Powered) return 8772; - else return 8773; - else - if (Open) - if (Powered) return 8774; - else return 8775; - else - if (Powered) return 8776; - else return 8777; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8778; - else return 8779; - else - if (Powered) return 8780; - else return 8781; - else - if (Open) - if (Powered) return 8782; - else return 8783; - else - if (Powered) return 8784; - else return 8785; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8786; - else return 8787; - else - if (Powered) return 8788; - else return 8789; - else - if (Open) - if (Powered) return 8790; - else return 8791; - else - if (Powered) return 8792; - else return 8793; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 8794; - else return 8795; - else - if (Powered) return 8796; - else return 8797; - else - if (Open) - if (Powered) return 8798; - else return 8799; - else - if (Powered) return 8800; - else return 8801; - } - BlockState SpruceDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace SpruceFence - { - constexpr BlockState SpruceFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 8580; - else return 8581; - else - if (West) return 8584; - else return 8585; - else - if (South) - if (West) return 8588; - else return 8589; - else - if (West) return 8592; - else return 8593; + return 8539; + else if (Powered) + return 8540; + else + return 8541; + else if (Open) + if (Powered) + return 8542; + else + return 8543; + else if (Powered) + return 8544; + else + return 8545; +} +BlockState AcaciaFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace AcaciaFenceGate +namespace AcaciaLeaves +{ +constexpr BlockState AcaciaLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 201; + else + return 202; + else if (Distance == 2) + if (Persistent) + return 203; + else + return 204; + else if (Distance == 3) + if (Persistent) + return 205; + else + return 206; + else if (Distance == 4) + if (Persistent) + return 207; + else + return 208; + else if (Distance == 5) + if (Persistent) + return 209; + else + return 210; + else if (Distance == 6) + if (Persistent) + return 211; + else + return 212; + else if (Persistent) + return 213; + else + return 214; +} +BlockState AcaciaLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace AcaciaLeaves +namespace AcaciaLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState AcaciaLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 85; + else if (Axis == Axis::Y) + return 86; + else + return 87; +} +BlockState AcaciaLog(); +enum Axis Axis(BlockState Block); +} // namespace AcaciaLog +namespace AcaciaPlanks +{ +constexpr BlockState AcaciaPlanks() +{ + return 19; +} +} // namespace AcaciaPlanks +namespace AcaciaPressurePlate +{ +constexpr BlockState AcaciaPressurePlate(const bool Powered) +{ + if (Powered) + return 3881; + else + return 3882; +} +BlockState AcaciaPressurePlate(); +bool Powered(BlockState Block); +} // namespace AcaciaPressurePlate +namespace AcaciaSapling +{ +constexpr BlockState AcaciaSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 29; + else + return 30; +} +BlockState AcaciaSapling(); +unsigned char Stage(BlockState Block); +} // namespace AcaciaSapling +namespace AcaciaSign +{ +constexpr BlockState AcaciaSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3478; + else if (Rotation == 1) + return 3480; + else if (Rotation == 2) + return 3482; + else if (Rotation == 3) + return 3484; + else if (Rotation == 4) + return 3486; + else if (Rotation == 5) + return 3488; + else if (Rotation == 6) + return 3490; + else if (Rotation == 7) + return 3492; + else if (Rotation == 8) + return 3494; + else if (Rotation == 9) + return 3496; + else if (Rotation == 10) + return 3498; + else if (Rotation == 11) + return 3500; + else if (Rotation == 12) + return 3502; + else if (Rotation == 13) + return 3504; + else if (Rotation == 14) + return 3506; + else + return 3508; +} +BlockState AcaciaSign(); +unsigned char Rotation(BlockState Block); +} // namespace AcaciaSign +namespace AcaciaSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState AcaciaSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8325; + else if (Type == Type::Bottom) + return 8327; + else + return 8329; +} +BlockState AcaciaSlab(); +enum Type Type(BlockState Block); +} // namespace AcaciaSlab +namespace AcaciaStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState AcaciaStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7376; + else if (Shape == Shape::InnerLeft) + return 7378; + else if (Shape == Shape::InnerRight) + return 7380; + else if (Shape == Shape::OuterLeft) + return 7382; else - if (North) - if (South) - if (West) return 8596; - else return 8597; - else - if (West) return 8600; - else return 8601; - else - if (South) - if (West) return 8604; - else return 8605; - else - if (West) return 8608; - else return 8609; - } - BlockState SpruceFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace SpruceFenceGate - { - constexpr BlockState SpruceFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 8418; - else return 8419; - else - if (Powered) return 8420; - else return 8421; - else - if (Open) - if (Powered) return 8422; - else return 8423; - else - if (Powered) return 8424; - else return 8425; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 8426; - else return 8427; - else - if (Powered) return 8428; - else return 8429; - else - if (Open) - if (Powered) return 8430; - else return 8431; - else - if (Powered) return 8432; - else return 8433; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 8434; - else return 8435; - else - if (Powered) return 8436; - else return 8437; - else - if (Open) - if (Powered) return 8438; - else return 8439; - else - if (Powered) return 8440; - else return 8441; - else - if (InWall) - if (Open) - if (Powered) return 8442; - else return 8443; - else - if (Powered) return 8444; - else return 8445; - else - if (Open) - if (Powered) return 8446; - else return 8447; - else - if (Powered) return 8448; - else return 8449; - } - BlockState SpruceFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace SpruceLeaves - { - constexpr BlockState SpruceLeaves(const unsigned char Distance, const bool Persistent) - { - if (Distance == 1) - if (Persistent) return 159; - else return 160; - else if (Distance == 2) - if (Persistent) return 161; - else return 162; - else if (Distance == 3) - if (Persistent) return 163; - else return 164; - else if (Distance == 4) - if (Persistent) return 165; - else return 166; - else if (Distance == 5) - if (Persistent) return 167; - else return 168; - else if (Distance == 6) - if (Persistent) return 169; - else return 170; - else - if (Persistent) return 171; - else return 172; - } - BlockState SpruceLeaves(); - unsigned char Distance(BlockState Block); - bool Persistent(BlockState Block); - } - namespace SpruceLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState SpruceLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 76; - else if (Axis == Axis::Y) return 77; - else return 78; - } - BlockState SpruceLog(); - enum Axis Axis(BlockState Block); - } - namespace SprucePlanks - { - constexpr BlockState SprucePlanks() - { - return 16; - } - } - namespace SprucePressurePlate - { - constexpr BlockState SprucePressurePlate(const bool Powered) - { - if (Powered) return 3875; - else return 3876; - } - BlockState SprucePressurePlate(); - bool Powered(BlockState Block); - } - namespace SpruceSapling - { - constexpr BlockState SpruceSapling(const unsigned char Stage) - { - if (Stage == 0) return 23; - else return 24; - } - BlockState SpruceSapling(); - unsigned char Stage(BlockState Block); - } - namespace SpruceSign - { - constexpr BlockState SpruceSign(const unsigned char Rotation) - { - if (Rotation == 0) return 3414; - else if (Rotation == 1) return 3416; - else if (Rotation == 2) return 3418; - else if (Rotation == 3) return 3420; - else if (Rotation == 4) return 3422; - else if (Rotation == 5) return 3424; - else if (Rotation == 6) return 3426; - else if (Rotation == 7) return 3428; - else if (Rotation == 8) return 3430; - else if (Rotation == 9) return 3432; - else if (Rotation == 10) return 3434; - else if (Rotation == 11) return 3436; - else if (Rotation == 12) return 3438; - else if (Rotation == 13) return 3440; - else if (Rotation == 14) return 3442; - else return 3444; - } - BlockState SpruceSign(); - unsigned char Rotation(BlockState Block); - } - namespace SpruceSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState SpruceSlab(const enum Type Type) - { - if (Type == Type::Top) return 8307; - else if (Type == Type::Bottom) return 8309; - else return 8311; - } - BlockState SpruceSlab(); - enum Type Type(BlockState Block); - } - namespace SpruceStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState SpruceStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5405; - else if (Shape == Shape::InnerLeft) return 5407; - else if (Shape == Shape::InnerRight) return 5409; - else if (Shape == Shape::OuterLeft) return 5411; - else return 5413; - else - if (Shape == Shape::Straight) return 5415; - else if (Shape == Shape::InnerLeft) return 5417; - else if (Shape == Shape::InnerRight) return 5419; - else if (Shape == Shape::OuterLeft) return 5421; - else return 5423; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5425; - else if (Shape == Shape::InnerLeft) return 5427; - else if (Shape == Shape::InnerRight) return 5429; - else if (Shape == Shape::OuterLeft) return 5431; - else return 5433; - else - if (Shape == Shape::Straight) return 5435; - else if (Shape == Shape::InnerLeft) return 5437; - else if (Shape == Shape::InnerRight) return 5439; - else if (Shape == Shape::OuterLeft) return 5441; - else return 5443; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5445; - else if (Shape == Shape::InnerLeft) return 5447; - else if (Shape == Shape::InnerRight) return 5449; - else if (Shape == Shape::OuterLeft) return 5451; - else return 5453; - else - if (Shape == Shape::Straight) return 5455; - else if (Shape == Shape::InnerLeft) return 5457; - else if (Shape == Shape::InnerRight) return 5459; - else if (Shape == Shape::OuterLeft) return 5461; - else return 5463; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 5465; - else if (Shape == Shape::InnerLeft) return 5467; - else if (Shape == Shape::InnerRight) return 5469; - else if (Shape == Shape::OuterLeft) return 5471; - else return 5473; - else - if (Shape == Shape::Straight) return 5475; - else if (Shape == Shape::InnerLeft) return 5477; - else if (Shape == Shape::InnerRight) return 5479; - else if (Shape == Shape::OuterLeft) return 5481; - else return 5483; - } - BlockState SpruceStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace SpruceTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState SpruceTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4176; - else return 4178; - else - if (Powered) return 4180; - else return 4182; - else - if (Open) - if (Powered) return 4184; - else return 4186; - else - if (Powered) return 4188; - else return 4190; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 4192; - else return 4194; - else - if (Powered) return 4196; - else return 4198; - else - if (Open) - if (Powered) return 4200; - else return 4202; - else - if (Powered) return 4204; - else return 4206; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 4208; - else return 4210; - else - if (Powered) return 4212; - else return 4214; - else - if (Open) - if (Powered) return 4216; - else return 4218; - else - if (Powered) return 4220; - else return 4222; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 4224; - else return 4226; - else - if (Powered) return 4228; - else return 4230; - else - if (Open) - if (Powered) return 4232; - else return 4234; - else - if (Powered) return 4236; - else return 4238; - } - BlockState SpruceTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace SpruceWallSign - { - constexpr BlockState SpruceWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3744; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3746; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 3748; - else return 3750; - } - BlockState SpruceWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace SpruceWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState SpruceWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 112; - else if (Axis == Axis::Y) return 113; - else return 114; - } - BlockState SpruceWood(); - enum Axis Axis(BlockState Block); - } - namespace StickyPiston - { - constexpr BlockState StickyPiston(const bool Extended, const eBlockFace Facing) - { - if (Extended) - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1329; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 1330; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1331; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 1332; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 1333; - else return 1334; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1335; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 1336; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1337; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 1338; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 1339; - else return 1340; - } - BlockState StickyPiston(); - bool Extended(BlockState Block); - eBlockFace Facing(BlockState Block); - } - namespace Stone - { - constexpr BlockState Stone() - { - return 1; - } - } - namespace StoneBrickSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState StoneBrickSlab(const enum Type Type) - { - if (Type == Type::Top) return 8379; - else if (Type == Type::Bottom) return 8381; - else return 8383; - } - BlockState StoneBrickSlab(); - enum Type Type(BlockState Block); - } - namespace StoneBrickStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState StoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4933; - else if (Shape == Shape::InnerLeft) return 4935; - else if (Shape == Shape::InnerRight) return 4937; - else if (Shape == Shape::OuterLeft) return 4939; - else return 4941; - else - if (Shape == Shape::Straight) return 4943; - else if (Shape == Shape::InnerLeft) return 4945; - else if (Shape == Shape::InnerRight) return 4947; - else if (Shape == Shape::OuterLeft) return 4949; - else return 4951; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4953; - else if (Shape == Shape::InnerLeft) return 4955; - else if (Shape == Shape::InnerRight) return 4957; - else if (Shape == Shape::OuterLeft) return 4959; - else return 4961; - else - if (Shape == Shape::Straight) return 4963; - else if (Shape == Shape::InnerLeft) return 4965; - else if (Shape == Shape::InnerRight) return 4967; - else if (Shape == Shape::OuterLeft) return 4969; - else return 4971; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4973; - else if (Shape == Shape::InnerLeft) return 4975; - else if (Shape == Shape::InnerRight) return 4977; - else if (Shape == Shape::OuterLeft) return 4979; - else return 4981; - else - if (Shape == Shape::Straight) return 4983; - else if (Shape == Shape::InnerLeft) return 4985; - else if (Shape == Shape::InnerRight) return 4987; - else if (Shape == Shape::OuterLeft) return 4989; - else return 4991; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 4993; - else if (Shape == Shape::InnerLeft) return 4995; - else if (Shape == Shape::InnerRight) return 4997; - else if (Shape == Shape::OuterLeft) return 4999; - else return 5001; - else - if (Shape == Shape::Straight) return 5003; - else if (Shape == Shape::InnerLeft) return 5005; - else if (Shape == Shape::InnerRight) return 5007; - else if (Shape == Shape::OuterLeft) return 5009; - else return 5011; - } - BlockState StoneBrickStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - 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 BlockState StoneBrickWall(const enum East East, const enum North North, const enum South South, const bool Up, const enum West West) - { - if (East == East::None) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12490; - else if (West == West::Low) return 12491; - else return 12492; - else - if (West == West::None) return 12496; - else if (West == West::Low) return 12497; - else return 12498; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12502; - else if (West == West::Low) return 12503; - else return 12504; - else - if (West == West::None) return 12508; - else if (West == West::Low) return 12509; - else return 12510; - else - if (Up) - if (West == West::None) return 12514; - else if (West == West::Low) return 12515; - else return 12516; - else - if (West == West::None) return 12520; - else if (West == West::Low) return 12521; - else return 12522; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12526; - else if (West == West::Low) return 12527; - else return 12528; - else - if (West == West::None) return 12532; - else if (West == West::Low) return 12533; - else return 12534; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12538; - else if (West == West::Low) return 12539; - else return 12540; - else - if (West == West::None) return 12544; - else if (West == West::Low) return 12545; - else return 12546; - else - if (Up) - if (West == West::None) return 12550; - else if (West == West::Low) return 12551; - else return 12552; - else - if (West == West::None) return 12556; - else if (West == West::Low) return 12557; - else return 12558; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12562; - else if (West == West::Low) return 12563; - else return 12564; - else - if (West == West::None) return 12568; - else if (West == West::Low) return 12569; - else return 12570; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12574; - else if (West == West::Low) return 12575; - else return 12576; - else - if (West == West::None) return 12580; - else if (West == West::Low) return 12581; - else return 12582; - else - if (Up) - if (West == West::None) return 12586; - else if (West == West::Low) return 12587; - else return 12588; - else - if (West == West::None) return 12592; - else if (West == West::Low) return 12593; - else return 12594; - else if (East == East::Low) - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12598; - else if (West == West::Low) return 12599; - else return 12600; - else - if (West == West::None) return 12604; - else if (West == West::Low) return 12605; - else return 12606; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12610; - else if (West == West::Low) return 12611; - else return 12612; - else - if (West == West::None) return 12616; - else if (West == West::Low) return 12617; - else return 12618; - else - if (Up) - if (West == West::None) return 12622; - else if (West == West::Low) return 12623; - else return 12624; - else - if (West == West::None) return 12628; - else if (West == West::Low) return 12629; - else return 12630; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12634; - else if (West == West::Low) return 12635; - else return 12636; - else - if (West == West::None) return 12640; - else if (West == West::Low) return 12641; - else return 12642; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12646; - else if (West == West::Low) return 12647; - else return 12648; - else - if (West == West::None) return 12652; - else if (West == West::Low) return 12653; - else return 12654; - else - if (Up) - if (West == West::None) return 12658; - else if (West == West::Low) return 12659; - else return 12660; - else - if (West == West::None) return 12664; - else if (West == West::Low) return 12665; - else return 12666; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12670; - else if (West == West::Low) return 12671; - else return 12672; - else - if (West == West::None) return 12676; - else if (West == West::Low) return 12677; - else return 12678; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12682; - else if (West == West::Low) return 12683; - else return 12684; - else - if (West == West::None) return 12688; - else if (West == West::Low) return 12689; - else return 12690; - else - if (Up) - if (West == West::None) return 12694; - else if (West == West::Low) return 12695; - else return 12696; - else - if (West == West::None) return 12700; - else if (West == West::Low) return 12701; - else return 12702; - else - if (North == North::None) - if (South == South::None) - if (Up) - if (West == West::None) return 12706; - else if (West == West::Low) return 12707; - else return 12708; - else - if (West == West::None) return 12712; - else if (West == West::Low) return 12713; - else return 12714; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12718; - else if (West == West::Low) return 12719; - else return 12720; - else - if (West == West::None) return 12724; - else if (West == West::Low) return 12725; - else return 12726; - else - if (Up) - if (West == West::None) return 12730; - else if (West == West::Low) return 12731; - else return 12732; - else - if (West == West::None) return 12736; - else if (West == West::Low) return 12737; - else return 12738; - else if (North == North::Low) - if (South == South::None) - if (Up) - if (West == West::None) return 12742; - else if (West == West::Low) return 12743; - else return 12744; - else - if (West == West::None) return 12748; - else if (West == West::Low) return 12749; - else return 12750; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12754; - else if (West == West::Low) return 12755; - else return 12756; - else - if (West == West::None) return 12760; - else if (West == West::Low) return 12761; - else return 12762; - else - if (Up) - if (West == West::None) return 12766; - else if (West == West::Low) return 12767; - else return 12768; - else - if (West == West::None) return 12772; - else if (West == West::Low) return 12773; - else return 12774; - else - if (South == South::None) - if (Up) - if (West == West::None) return 12778; - else if (West == West::Low) return 12779; - else return 12780; - else - if (West == West::None) return 12784; - else if (West == West::Low) return 12785; - else return 12786; - else if (South == South::Low) - if (Up) - if (West == West::None) return 12790; - else if (West == West::Low) return 12791; - else return 12792; - else - if (West == West::None) return 12796; - else if (West == West::Low) return 12797; - else return 12798; - else - if (Up) - if (West == West::None) return 12802; - else if (West == West::Low) return 12803; - else return 12804; - else - if (West == West::None) return 12808; - else if (West == West::Low) return 12809; - else return 12810; - } - BlockState StoneBrickWall(); - enum East East(BlockState Block); - enum North North(BlockState Block); - enum South South(BlockState Block); - bool Up(BlockState Block); - enum West West(BlockState Block); - } - namespace StoneBricks - { - constexpr BlockState StoneBricks() - { - return 4495; - } - } - namespace StoneButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState StoneButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3897; - else return 3898; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3899; - else return 3900; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3901; - else return 3902; - else - if (Powered) return 3903; - else return 3904; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3905; - else return 3906; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3907; - else return 3908; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3909; - else return 3910; - else - if (Powered) return 3911; - else return 3912; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 3913; - else return 3914; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 3915; - else return 3916; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 3917; - else return 3918; - else - if (Powered) return 3919; - else return 3920; - } - BlockState StoneButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace StonePressurePlate - { - constexpr BlockState StonePressurePlate(const bool Powered) - { - if (Powered) return 3807; - else return 3808; - } - BlockState StonePressurePlate(); - bool Powered(BlockState Block); - } - namespace StoneSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState StoneSlab(const enum Type Type) - { - if (Type == Type::Top) return 8337; - else if (Type == Type::Bottom) return 8339; - else return 8341; - } - BlockState StoneSlab(); - enum Type Type(BlockState Block); - } - namespace StoneStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState StoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10150; - else if (Shape == Shape::InnerLeft) return 10152; - else if (Shape == Shape::InnerRight) return 10154; - else if (Shape == Shape::OuterLeft) return 10156; - else return 10158; - else - if (Shape == Shape::Straight) return 10160; - else if (Shape == Shape::InnerLeft) return 10162; - else if (Shape == Shape::InnerRight) return 10164; - else if (Shape == Shape::OuterLeft) return 10166; - else return 10168; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10170; - else if (Shape == Shape::InnerLeft) return 10172; - else if (Shape == Shape::InnerRight) return 10174; - else if (Shape == Shape::OuterLeft) return 10176; - else return 10178; - else - if (Shape == Shape::Straight) return 10180; - else if (Shape == Shape::InnerLeft) return 10182; - else if (Shape == Shape::InnerRight) return 10184; - else if (Shape == Shape::OuterLeft) return 10186; - else return 10188; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10190; - else if (Shape == Shape::InnerLeft) return 10192; - else if (Shape == Shape::InnerRight) return 10194; - else if (Shape == Shape::OuterLeft) return 10196; - else return 10198; - else - if (Shape == Shape::Straight) return 10200; - else if (Shape == Shape::InnerLeft) return 10202; - else if (Shape == Shape::InnerRight) return 10204; - else if (Shape == Shape::OuterLeft) return 10206; - else return 10208; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 10210; - else if (Shape == Shape::InnerLeft) return 10212; - else if (Shape == Shape::InnerRight) return 10214; - else if (Shape == Shape::OuterLeft) return 10216; - else return 10218; - else - if (Shape == Shape::Straight) return 10220; - else if (Shape == Shape::InnerLeft) return 10222; - else if (Shape == Shape::InnerRight) return 10224; - else if (Shape == Shape::OuterLeft) return 10226; - else return 10228; - } - BlockState StoneStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace Stonecutter - { - constexpr BlockState Stonecutter(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14850; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14851; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 14852; - else return 14853; - } - BlockState Stonecutter(); - eBlockFace Facing(BlockState Block); - } - namespace StrippedAcaciaLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedAcaciaLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 100; - else if (Axis == Axis::Y) return 101; - else return 102; - } - BlockState StrippedAcaciaLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedAcaciaWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedAcaciaWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 139; - else if (Axis == Axis::Y) return 140; - else return 141; - } - BlockState StrippedAcaciaWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedBirchLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedBirchLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 94; - else if (Axis == Axis::Y) return 95; - else return 96; - } - BlockState StrippedBirchLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedBirchWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedBirchWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 133; - else if (Axis == Axis::Y) return 134; - else return 135; - } - BlockState StrippedBirchWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedCrimsonHyphae - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedCrimsonHyphae(const enum Axis Axis) - { - if (Axis == Axis::X) return 14984; - else if (Axis == Axis::Y) return 14985; - else return 14986; - } - BlockState StrippedCrimsonHyphae(); - enum Axis Axis(BlockState Block); - } - namespace StrippedCrimsonStem - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedCrimsonStem(const enum Axis Axis) - { - if (Axis == Axis::X) return 14978; - else if (Axis == Axis::Y) return 14979; - else return 14980; - } - BlockState StrippedCrimsonStem(); - enum Axis Axis(BlockState Block); - } - namespace StrippedDarkOakLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedDarkOakLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 103; - else if (Axis == Axis::Y) return 104; - else return 105; - } - BlockState StrippedDarkOakLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedDarkOakWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedDarkOakWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 142; - else if (Axis == Axis::Y) return 143; - else return 144; - } - BlockState StrippedDarkOakWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedJungleLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedJungleLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 97; - else if (Axis == Axis::Y) return 98; - else return 99; - } - BlockState StrippedJungleLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedJungleWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedJungleWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 136; - else if (Axis == Axis::Y) return 137; - else return 138; - } - BlockState StrippedJungleWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedOakLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedOakLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 106; - else if (Axis == Axis::Y) return 107; - else return 108; - } - BlockState StrippedOakLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedOakWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedOakWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 127; - else if (Axis == Axis::Y) return 128; - else return 129; - } - BlockState StrippedOakWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedSpruceLog - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedSpruceLog(const enum Axis Axis) - { - if (Axis == Axis::X) return 91; - else if (Axis == Axis::Y) return 92; - else return 93; - } - BlockState StrippedSpruceLog(); - enum Axis Axis(BlockState Block); - } - namespace StrippedSpruceWood - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedSpruceWood(const enum Axis Axis) - { - if (Axis == Axis::X) return 130; - else if (Axis == Axis::Y) return 131; - else return 132; - } - BlockState StrippedSpruceWood(); - enum Axis Axis(BlockState Block); - } - namespace StrippedWarpedHyphae - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedWarpedHyphae(const enum Axis Axis) - { - if (Axis == Axis::X) return 14967; - else if (Axis == Axis::Y) return 14968; - else return 14969; - } - BlockState StrippedWarpedHyphae(); - enum Axis Axis(BlockState Block); - } - namespace StrippedWarpedStem - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState StrippedWarpedStem(const enum Axis Axis) - { - if (Axis == Axis::X) return 14961; - else if (Axis == Axis::Y) return 14962; - else return 14963; - } - BlockState StrippedWarpedStem(); - enum Axis Axis(BlockState Block); - } - namespace StructureBlock - { - enum class Mode - { - Save, - Load, - Corner, - Data - }; - constexpr BlockState StructureBlock(const enum Mode Mode) - { - if (Mode == Mode::Save) return 15735; - else if (Mode == Mode::Load) return 15736; - else if (Mode == Mode::Corner) return 15737; - else return 15738; - } - BlockState StructureBlock(); - enum Mode Mode(BlockState Block); - } - namespace StructureVoid - { - constexpr BlockState StructureVoid() - { - return 9259; - } - } - namespace SugarCane - { - constexpr BlockState SugarCane(const unsigned char Age) - { - if (Age == 0) return 3948; - else if (Age == 1) return 3949; - else if (Age == 2) return 3950; - else if (Age == 3) return 3951; - else if (Age == 4) return 3952; - else if (Age == 5) return 3953; - else if (Age == 6) return 3954; - else if (Age == 7) return 3955; - else if (Age == 8) return 3956; - else if (Age == 9) return 3957; - else if (Age == 10) return 3958; - else if (Age == 11) return 3959; - else if (Age == 12) return 3960; - else if (Age == 13) return 3961; - else if (Age == 14) return 3962; - else return 3963; - } - BlockState SugarCane(); - unsigned char Age(BlockState Block); - } - namespace Sunflower - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState Sunflower(const enum Half Half) - { - if (Half == Half::Upper) return 7885; - else return 7886; - } - BlockState Sunflower(); - enum Half Half(BlockState Block); - } - namespace SweetBerryBush - { - constexpr BlockState SweetBerryBush(const unsigned char Age) - { - if (Age == 0) return 14954; - else if (Age == 1) return 14955; - else if (Age == 2) return 14956; - else return 14957; - } - BlockState SweetBerryBush(); - unsigned char Age(BlockState Block); - } - namespace TNT - { - constexpr BlockState TNT(const bool Unstable) - { - if (Unstable) return 1430; - else return 1431; - } - BlockState TNT(); - bool Unstable(BlockState Block); - } - namespace TallGrass - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState TallGrass(const enum Half Half) - { - if (Half == Half::Upper) return 7893; - else return 7894; - } - BlockState TallGrass(); - enum Half Half(BlockState Block); - } - namespace TallSeagrass - { - enum class Half - { - Upper, - Lower - }; - constexpr BlockState TallSeagrass(const enum Half Half) - { - if (Half == Half::Upper) return 1346; - else return 1347; - } - BlockState TallSeagrass(); - enum Half Half(BlockState Block); - } - namespace Target - { - constexpr BlockState Target(const unsigned char Power) - { - if (Power == 0) return 15760; - else if (Power == 1) return 15761; - else if (Power == 2) return 15762; - else if (Power == 3) return 15763; - else if (Power == 4) return 15764; - else if (Power == 5) return 15765; - else if (Power == 6) return 15766; - else if (Power == 7) return 15767; - else if (Power == 8) return 15768; - else if (Power == 9) return 15769; - else if (Power == 10) return 15770; - else if (Power == 11) return 15771; - else if (Power == 12) return 15772; - else if (Power == 13) return 15773; - else if (Power == 14) return 15774; - else return 15775; - } - BlockState Target(); - unsigned char Power(BlockState Block); - } - namespace Terracotta - { - constexpr BlockState Terracotta() - { - return 7882; - } - } - namespace Torch - { - constexpr BlockState Torch() - { - return 1435; - } - } - namespace TrappedChest - { - enum class Type - { - Single, - Left, - Right - }; - constexpr BlockState TrappedChest(const eBlockFace Facing, const enum Type Type) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Type == Type::Single) return 6623; - else if (Type == Type::Left) return 6625; - else return 6627; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Type == Type::Single) return 6629; - else if (Type == Type::Left) return 6631; - else return 6633; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Type == Type::Single) return 6635; - else if (Type == Type::Left) return 6637; - else return 6639; - else - if (Type == Type::Single) return 6641; - else if (Type == Type::Left) return 6643; - else return 6645; - } - BlockState TrappedChest(); - eBlockFace Facing(BlockState Block); - enum Type Type(BlockState Block); - } - namespace Tripwire - { - constexpr BlockState Tripwire(const bool Attached, const bool Disarmed, const bool East, const bool North, const bool Powered, const bool South, const bool West) - { - if (Attached) - if (Disarmed) - if (East) - if (North) - if (Powered) - if (South) - if (West) return 5275; - else return 5276; - else - if (West) return 5277; - else return 5278; - else - if (South) - if (West) return 5279; - else return 5280; - else - if (West) return 5281; - else return 5282; - else - if (Powered) - if (South) - if (West) return 5283; - else return 5284; - else - if (West) return 5285; - else return 5286; - else - if (South) - if (West) return 5287; - else return 5288; - else - if (West) return 5289; - else return 5290; - else - if (North) - if (Powered) - if (South) - if (West) return 5291; - else return 5292; - else - if (West) return 5293; - else return 5294; - else - if (South) - if (West) return 5295; - else return 5296; - else - if (West) return 5297; - else return 5298; - else - if (Powered) - if (South) - if (West) return 5299; - else return 5300; - else - if (West) return 5301; - else return 5302; - else - if (South) - if (West) return 5303; - else return 5304; - else - if (West) return 5305; - else return 5306; - else - if (East) - if (North) - if (Powered) - if (South) - if (West) return 5307; - else return 5308; - else - if (West) return 5309; - else return 5310; - else - if (South) - if (West) return 5311; - else return 5312; - else - if (West) return 5313; - else return 5314; - else - if (Powered) - if (South) - if (West) return 5315; - else return 5316; - else - if (West) return 5317; - else return 5318; - else - if (South) - if (West) return 5319; - else return 5320; - else - if (West) return 5321; - else return 5322; - else - if (North) - if (Powered) - if (South) - if (West) return 5323; - else return 5324; - else - if (West) return 5325; - else return 5326; - else - if (South) - if (West) return 5327; - else return 5328; - else - if (West) return 5329; - else return 5330; - else - if (Powered) - if (South) - if (West) return 5331; - else return 5332; - else - if (West) return 5333; - else return 5334; - else - if (South) - if (West) return 5335; - else return 5336; - else - if (West) return 5337; - else return 5338; - else - if (Disarmed) - if (East) - if (North) - if (Powered) - if (South) - if (West) return 5339; - else return 5340; - else - if (West) return 5341; - else return 5342; - else - if (South) - if (West) return 5343; - else return 5344; - else - if (West) return 5345; - else return 5346; - else - if (Powered) - if (South) - if (West) return 5347; - else return 5348; - else - if (West) return 5349; - else return 5350; - else - if (South) - if (West) return 5351; - else return 5352; - else - if (West) return 5353; - else return 5354; - else - if (North) - if (Powered) - if (South) - if (West) return 5355; - else return 5356; - else - if (West) return 5357; - else return 5358; - else - if (South) - if (West) return 5359; - else return 5360; - else - if (West) return 5361; - else return 5362; - else - if (Powered) - if (South) - if (West) return 5363; - else return 5364; - else - if (West) return 5365; - else return 5366; - else - if (South) - if (West) return 5367; - else return 5368; - else - if (West) return 5369; - else return 5370; - else - if (East) - if (North) - if (Powered) - if (South) - if (West) return 5371; - else return 5372; - else - if (West) return 5373; - else return 5374; - else - if (South) - if (West) return 5375; - else return 5376; - else - if (West) return 5377; - else return 5378; - else - if (Powered) - if (South) - if (West) return 5379; - else return 5380; - else - if (West) return 5381; - else return 5382; - else - if (South) - if (West) return 5383; - else return 5384; - else - if (West) return 5385; - else return 5386; - else - if (North) - if (Powered) - if (South) - if (West) return 5387; - else return 5388; - else - if (West) return 5389; - else return 5390; - else - if (South) - if (West) return 5391; - else return 5392; - else - if (West) return 5393; - else return 5394; - else - if (Powered) - if (South) - if (West) return 5395; - else return 5396; - else - if (West) return 5397; - else return 5398; - else - if (South) - if (West) return 5399; - else return 5400; - else - if (West) return 5401; - else return 5402; - } - BlockState Tripwire(); - bool Attached(BlockState Block); - bool Disarmed(BlockState Block); - bool East(BlockState Block); - bool North(BlockState Block); - bool Powered(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace TripwireHook - { - constexpr BlockState TripwireHook(const bool Attached, const eBlockFace Facing, const bool Powered) - { - if (Attached) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 5259; - else return 5260; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 5261; - else return 5262; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 5263; - else return 5264; - else - if (Powered) return 5265; - else return 5266; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 5267; - else return 5268; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 5269; - else return 5270; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 5271; - else return 5272; - else - if (Powered) return 5273; - else return 5274; - } - BlockState TripwireHook(); - bool Attached(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace TubeCoral - { - constexpr BlockState TubeCoral() - { - return 9531; - } - } - namespace TubeCoralBlock - { - constexpr BlockState TubeCoralBlock() - { - return 9515; - } - } - namespace TubeCoralFan - { - constexpr BlockState TubeCoralFan() - { - return 9551; - } - } - namespace TubeCoralWallFan - { - constexpr BlockState TubeCoralWallFan(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9601; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9603; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9605; - else return 9607; - } - BlockState TubeCoralWallFan(); - eBlockFace Facing(BlockState Block); - } - namespace TurtleEgg - { - constexpr BlockState TurtleEgg(const unsigned char Eggs, const unsigned char Hatch) - { - if (Eggs == 1) - if (Hatch == 0) return 9498; - else if (Hatch == 1) return 9499; - else return 9500; - else if (Eggs == 2) - if (Hatch == 0) return 9501; - else if (Hatch == 1) return 9502; - else return 9503; - else if (Eggs == 3) - if (Hatch == 0) return 9504; - else if (Hatch == 1) return 9505; - else return 9506; - else - if (Hatch == 0) return 9507; - else if (Hatch == 1) return 9508; - else return 9509; - } - BlockState TurtleEgg(); - unsigned char Eggs(BlockState Block); - unsigned char Hatch(BlockState Block); - } - namespace TwistingVines - { - constexpr BlockState TwistingVines(const unsigned char Age) - { - if (Age == 0) return 15017; - else if (Age == 1) return 15018; - else if (Age == 2) return 15019; - else if (Age == 3) return 15020; - else if (Age == 4) return 15021; - else if (Age == 5) return 15022; - else if (Age == 6) return 15023; - else if (Age == 7) return 15024; - else if (Age == 8) return 15025; - else if (Age == 9) return 15026; - else if (Age == 10) return 15027; - else if (Age == 11) return 15028; - else if (Age == 12) return 15029; - else if (Age == 13) return 15030; - else if (Age == 14) return 15031; - else if (Age == 15) return 15032; - else if (Age == 16) return 15033; - else if (Age == 17) return 15034; - else if (Age == 18) return 15035; - else if (Age == 19) return 15036; - else if (Age == 20) return 15037; - else if (Age == 21) return 15038; - else if (Age == 22) return 15039; - else if (Age == 23) return 15040; - else if (Age == 24) return 15041; - else return 15042; - } - BlockState TwistingVines(); - unsigned char Age(BlockState Block); - } - namespace TwistingVinesPlant - { - constexpr BlockState TwistingVinesPlant() - { - return 15043; - } - } - namespace Vine - { - constexpr BlockState Vine(const bool East, const bool North, const bool South, const bool Up, const bool West) - { + return 7384; + else if (Shape == Shape::Straight) + return 7386; + else if (Shape == Shape::InnerLeft) + return 7388; + else if (Shape == Shape::InnerRight) + return 7390; + else if (Shape == Shape::OuterLeft) + return 7392; + else + return 7394; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7396; + else if (Shape == Shape::InnerLeft) + return 7398; + else if (Shape == Shape::InnerRight) + return 7400; + else if (Shape == Shape::OuterLeft) + return 7402; + else + return 7404; + else if (Shape == Shape::Straight) + return 7406; + else if (Shape == Shape::InnerLeft) + return 7408; + else if (Shape == Shape::InnerRight) + return 7410; + else if (Shape == Shape::OuterLeft) + return 7412; + else + return 7414; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7416; + else if (Shape == Shape::InnerLeft) + return 7418; + else if (Shape == Shape::InnerRight) + return 7420; + else if (Shape == Shape::OuterLeft) + return 7422; + else + return 7424; + else if (Shape == Shape::Straight) + return 7426; + else if (Shape == Shape::InnerLeft) + return 7428; + else if (Shape == Shape::InnerRight) + return 7430; + else if (Shape == Shape::OuterLeft) + return 7432; + else + return 7434; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7436; + else if (Shape == Shape::InnerLeft) + return 7438; + else if (Shape == Shape::InnerRight) + return 7440; + else if (Shape == Shape::OuterLeft) + return 7442; + else + return 7444; + else if (Shape == Shape::Straight) + return 7446; + else if (Shape == Shape::InnerLeft) + return 7448; + else if (Shape == Shape::InnerRight) + return 7450; + else if (Shape == Shape::OuterLeft) + return 7452; + else + return 7454; +} +BlockState AcaciaStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace AcaciaStairs +namespace AcaciaTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState AcaciaTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4368; + else + return 4370; + else if (Powered) + return 4372; + else + return 4374; + else if (Open) + if (Powered) + return 4376; + else + return 4378; + else if (Powered) + return 4380; + else + return 4382; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4384; + else + return 4386; + else if (Powered) + return 4388; + else + return 4390; + else if (Open) + if (Powered) + return 4392; + else + return 4394; + else if (Powered) + return 4396; + else + return 4398; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4400; + else + return 4402; + else if (Powered) + return 4404; + else + return 4406; + else if (Open) + if (Powered) + return 4408; + else + return 4410; + else if (Powered) + return 4412; + else + return 4414; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4416; + else + return 4418; + else if (Powered) + return 4420; + else + return 4422; + else if (Open) + if (Powered) + return 4424; + else + return 4426; + else if (Powered) + return 4428; + else + return 4430; +} +BlockState AcaciaTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace AcaciaTrapdoor +namespace AcaciaWallSign +{ +constexpr BlockState AcaciaWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3760; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3762; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3764; + else + return 3766; +} +BlockState AcaciaWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace AcaciaWallSign +namespace AcaciaWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState AcaciaWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 121; + else if (Axis == Axis::Y) + return 122; + else + return 123; +} +BlockState AcaciaWood(); +enum Axis Axis(BlockState Block); +} // namespace AcaciaWood +namespace ActivatorRail +{ +enum class Shape +{ + NorthSouth, + EastWest, + AscendingEast, + AscendingWest, + AscendingNorth, + AscendingSouth +}; +constexpr BlockState ActivatorRail(const bool Powered, const enum Shape Shape) +{ + if (Powered) + if (Shape == Shape::NorthSouth) + return 6823; + else if (Shape == Shape::EastWest) + return 6824; + else if (Shape == Shape::AscendingEast) + return 6825; + else if (Shape == Shape::AscendingWest) + return 6826; + else if (Shape == Shape::AscendingNorth) + return 6827; + else + return 6828; + else if (Shape == Shape::NorthSouth) + return 6829; + else if (Shape == Shape::EastWest) + return 6830; + else if (Shape == Shape::AscendingEast) + return 6831; + else if (Shape == Shape::AscendingWest) + return 6832; + else if (Shape == Shape::AscendingNorth) + return 6833; + else + return 6834; +} +BlockState ActivatorRail(); +bool Powered(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace ActivatorRail +namespace Air +{ +constexpr BlockState Air() +{ + return -0; +} +} // namespace Air +namespace Allium +{ +constexpr BlockState Allium() +{ + return 1415; +} +} // namespace Allium +namespace AncientDebris +{ +constexpr BlockState AncientDebris() +{ + return 15827; +} +} // namespace AncientDebris +namespace Andesite +{ +constexpr BlockState Andesite() +{ + return 6; +} +} // namespace Andesite +namespace AndesiteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState AndesiteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10844; + else if (Type == Type::Bottom) + return 10846; + else + return 10848; +} +BlockState AndesiteSlab(); +enum Type Type(BlockState Block); +} // namespace AndesiteSlab +namespace AndesiteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState AndesiteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10470; + else if (Shape == Shape::InnerLeft) + return 10472; + else if (Shape == Shape::InnerRight) + return 10474; + else if (Shape == Shape::OuterLeft) + return 10476; + else + return 10478; + else if (Shape == Shape::Straight) + return 10480; + else if (Shape == Shape::InnerLeft) + return 10482; + else if (Shape == Shape::InnerRight) + return 10484; + else if (Shape == Shape::OuterLeft) + return 10486; + else + return 10488; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10490; + else if (Shape == Shape::InnerLeft) + return 10492; + else if (Shape == Shape::InnerRight) + return 10494; + else if (Shape == Shape::OuterLeft) + return 10496; + else + return 10498; + else if (Shape == Shape::Straight) + return 10500; + else if (Shape == Shape::InnerLeft) + return 10502; + else if (Shape == Shape::InnerRight) + return 10504; + else if (Shape == Shape::OuterLeft) + return 10506; + else + return 10508; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10510; + else if (Shape == Shape::InnerLeft) + return 10512; + else if (Shape == Shape::InnerRight) + return 10514; + else if (Shape == Shape::OuterLeft) + return 10516; + else + return 10518; + else if (Shape == Shape::Straight) + return 10520; + else if (Shape == Shape::InnerLeft) + return 10522; + else if (Shape == Shape::InnerRight) + return 10524; + else if (Shape == Shape::OuterLeft) + return 10526; + else + return 10528; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10530; + else if (Shape == Shape::InnerLeft) + return 10532; + else if (Shape == Shape::InnerRight) + return 10534; + else if (Shape == Shape::OuterLeft) + return 10536; + else + return 10538; + else if (Shape == Shape::Straight) + return 10540; + else if (Shape == Shape::InnerLeft) + return 10542; + else if (Shape == Shape::InnerRight) + return 10544; + else if (Shape == Shape::OuterLeft) + return 10546; + else + return 10548; +} +BlockState AndesiteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace AndesiteStairs +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 BlockState AndesiteWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13138; + else if (West == West::Low) + return 13139; + else + return 13140; + else if (West == West::None) + return 13144; + else if (West == West::Low) + return 13145; + else + return 13146; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13150; + else if (West == West::Low) + return 13151; + else + return 13152; + else if (West == West::None) + return 13156; + else if (West == West::Low) + return 13157; + else + return 13158; + else if (Up) + if (West == West::None) + return 13162; + else if (West == West::Low) + return 13163; + else + return 13164; + else if (West == West::None) + return 13168; + else if (West == West::Low) + return 13169; + else + return 13170; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13174; + else if (West == West::Low) + return 13175; + else + return 13176; + else if (West == West::None) + return 13180; + else if (West == West::Low) + return 13181; + else + return 13182; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13186; + else if (West == West::Low) + return 13187; + else + return 13188; + else if (West == West::None) + return 13192; + else if (West == West::Low) + return 13193; + else + return 13194; + else if (Up) + if (West == West::None) + return 13198; + else if (West == West::Low) + return 13199; + else + return 13200; + else if (West == West::None) + return 13204; + else if (West == West::Low) + return 13205; + else + return 13206; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13210; + else if (West == West::Low) + return 13211; + else + return 13212; + else if (West == West::None) + return 13216; + else if (West == West::Low) + return 13217; + else + return 13218; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13222; + else if (West == West::Low) + return 13223; + else + return 13224; + else if (West == West::None) + return 13228; + else if (West == West::Low) + return 13229; + else + return 13230; + else if (Up) + if (West == West::None) + return 13234; + else if (West == West::Low) + return 13235; + else + return 13236; + else if (West == West::None) + return 13240; + else if (West == West::Low) + return 13241; + else + return 13242; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13246; + else if (West == West::Low) + return 13247; + else + return 13248; + else if (West == West::None) + return 13252; + else if (West == West::Low) + return 13253; + else + return 13254; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13258; + else if (West == West::Low) + return 13259; + else + return 13260; + else if (West == West::None) + return 13264; + else if (West == West::Low) + return 13265; + else + return 13266; + else if (Up) + if (West == West::None) + return 13270; + else if (West == West::Low) + return 13271; + else + return 13272; + else if (West == West::None) + return 13276; + else if (West == West::Low) + return 13277; + else + return 13278; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13282; + else if (West == West::Low) + return 13283; + else + return 13284; + else if (West == West::None) + return 13288; + else if (West == West::Low) + return 13289; + else + return 13290; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13294; + else if (West == West::Low) + return 13295; + else + return 13296; + else if (West == West::None) + return 13300; + else if (West == West::Low) + return 13301; + else + return 13302; + else if (Up) + if (West == West::None) + return 13306; + else if (West == West::Low) + return 13307; + else + return 13308; + else if (West == West::None) + return 13312; + else if (West == West::Low) + return 13313; + else + return 13314; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13318; + else if (West == West::Low) + return 13319; + else + return 13320; + else if (West == West::None) + return 13324; + else if (West == West::Low) + return 13325; + else + return 13326; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13330; + else if (West == West::Low) + return 13331; + else + return 13332; + else if (West == West::None) + return 13336; + else if (West == West::Low) + return 13337; + else + return 13338; + else if (Up) + if (West == West::None) + return 13342; + else if (West == West::Low) + return 13343; + else + return 13344; + else if (West == West::None) + return 13348; + else if (West == West::Low) + return 13349; + else + return 13350; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13354; + else if (West == West::Low) + return 13355; + else + return 13356; + else if (West == West::None) + return 13360; + else if (West == West::Low) + return 13361; + else + return 13362; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13366; + else if (West == West::Low) + return 13367; + else + return 13368; + else if (West == West::None) + return 13372; + else if (West == West::Low) + return 13373; + else + return 13374; + else if (Up) + if (West == West::None) + return 13378; + else if (West == West::Low) + return 13379; + else + return 13380; + else if (West == West::None) + return 13384; + else if (West == West::Low) + return 13385; + else + return 13386; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13390; + else if (West == West::Low) + return 13391; + else + return 13392; + else if (West == West::None) + return 13396; + else if (West == West::Low) + return 13397; + else + return 13398; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13402; + else if (West == West::Low) + return 13403; + else + return 13404; + else if (West == West::None) + return 13408; + else if (West == West::Low) + return 13409; + else + return 13410; + else if (Up) + if (West == West::None) + return 13414; + else if (West == West::Low) + return 13415; + else + return 13416; + else if (West == West::None) + return 13420; + else if (West == West::Low) + return 13421; + else + return 13422; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13426; + else if (West == West::Low) + return 13427; + else + return 13428; + else if (West == West::None) + return 13432; + else if (West == West::Low) + return 13433; + else + return 13434; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13438; + else if (West == West::Low) + return 13439; + else + return 13440; + else if (West == West::None) + return 13444; + else if (West == West::Low) + return 13445; + else + return 13446; + else if (Up) + if (West == West::None) + return 13450; + else if (West == West::Low) + return 13451; + else + return 13452; + else if (West == West::None) + return 13456; + else if (West == West::Low) + return 13457; + else + return 13458; +} +BlockState AndesiteWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace AndesiteWall +namespace Anvil +{ +constexpr BlockState Anvil(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6610; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6611; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6612; + else + return 6613; +} +BlockState Anvil(); +eBlockFace Facing(BlockState Block); +} // namespace Anvil +namespace AttachedMelonStem +{ +constexpr BlockState AttachedMelonStem(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 4768; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 4769; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 4770; + else + return 4771; +} +BlockState AttachedMelonStem(); +eBlockFace Facing(BlockState Block); +} // namespace AttachedMelonStem +namespace AttachedPumpkinStem +{ +constexpr BlockState AttachedPumpkinStem(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 4764; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 4765; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 4766; + else + return 4767; +} +BlockState AttachedPumpkinStem(); +eBlockFace Facing(BlockState Block); +} // namespace AttachedPumpkinStem +namespace AzureBluet +{ +constexpr BlockState AzureBluet() +{ + return 1416; +} +} // namespace AzureBluet +namespace Bamboo +{ +enum class Leaves +{ + None, + Small, + Large +}; +constexpr BlockState Bamboo(const unsigned char Age, const enum Leaves Leaves, const unsigned char Stage) +{ + if (Age == 0) + if (Leaves == Leaves::None) + if (Stage == 0) + return 9652; + else + return 9653; + else if (Leaves == Leaves::Small) + if (Stage == 0) + return 9654; + else + return 9655; + else if (Stage == 0) + return 9656; + else + return 9657; + else if (Leaves == Leaves::None) + if (Stage == 0) + return 9658; + else + return 9659; + else if (Leaves == Leaves::Small) + if (Stage == 0) + return 9660; + else + return 9661; + else if (Stage == 0) + return 9662; + else + return 9663; +} +BlockState Bamboo(); +unsigned char Age(BlockState Block); +enum Leaves Leaves(BlockState Block); +unsigned char Stage(BlockState Block); +} // namespace Bamboo +namespace BambooSapling +{ +constexpr BlockState BambooSapling() +{ + return 9651; +} +} // namespace BambooSapling +namespace Barrel +{ +constexpr BlockState Barrel(const eBlockFace Facing, const bool Open) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Open) + return 14791; + else + return 14792; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Open) + return 14793; + else + return 14794; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Open) + return 14795; + else + return 14796; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Open) + return 14797; + else + return 14798; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Open) + return 14799; + else + return 14800; + else if (Open) + return 14801; + else + return 14802; +} +BlockState Barrel(); +eBlockFace Facing(BlockState Block); +bool Open(BlockState Block); +} // namespace Barrel +namespace Barrier +{ +constexpr BlockState Barrier() +{ + return 7536; +} +} // namespace Barrier +namespace Basalt +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState Basalt(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 4002; + else if (Axis == Axis::Y) + return 4003; + else + return 4004; +} +BlockState Basalt(); +enum Axis Axis(BlockState Block); +} // namespace Basalt +namespace Beacon +{ +constexpr BlockState Beacon() +{ + return 5656; +} +} // namespace Beacon +namespace Bedrock +{ +constexpr BlockState Bedrock() +{ + return 33; +} +} // namespace Bedrock +namespace BeeNest +{ +constexpr BlockState BeeNest(const eBlockFace Facing, const unsigned char HoneyLevel) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (HoneyLevel == 0) + return 15776; + else if (HoneyLevel == 1) + return 15777; + else if (HoneyLevel == 2) + return 15778; + else if (HoneyLevel == 3) + return 15779; + else if (HoneyLevel == 4) + return 15780; + else + return 15781; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (HoneyLevel == 0) + return 15782; + else if (HoneyLevel == 1) + return 15783; + else if (HoneyLevel == 2) + return 15784; + else if (HoneyLevel == 3) + return 15785; + else if (HoneyLevel == 4) + return 15786; + else + return 15787; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (HoneyLevel == 0) + return 15788; + else if (HoneyLevel == 1) + return 15789; + else if (HoneyLevel == 2) + return 15790; + else if (HoneyLevel == 3) + return 15791; + else if (HoneyLevel == 4) + return 15792; + else + return 15793; + else if (HoneyLevel == 0) + return 15794; + else if (HoneyLevel == 1) + return 15795; + else if (HoneyLevel == 2) + return 15796; + else if (HoneyLevel == 3) + return 15797; + else if (HoneyLevel == 4) + return 15798; + else + return 15799; +} +BlockState BeeNest(); +eBlockFace Facing(BlockState Block); +unsigned char HoneyLevel(BlockState Block); +} // namespace BeeNest +namespace Beehive +{ +constexpr BlockState Beehive(const eBlockFace Facing, const unsigned char HoneyLevel) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (HoneyLevel == 0) + return 15800; + else if (HoneyLevel == 1) + return 15801; + else if (HoneyLevel == 2) + return 15802; + else if (HoneyLevel == 3) + return 15803; + else if (HoneyLevel == 4) + return 15804; + else + return 15805; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (HoneyLevel == 0) + return 15806; + else if (HoneyLevel == 1) + return 15807; + else if (HoneyLevel == 2) + return 15808; + else if (HoneyLevel == 3) + return 15809; + else if (HoneyLevel == 4) + return 15810; + else + return 15811; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (HoneyLevel == 0) + return 15812; + else if (HoneyLevel == 1) + return 15813; + else if (HoneyLevel == 2) + return 15814; + else if (HoneyLevel == 3) + return 15815; + else if (HoneyLevel == 4) + return 15816; + else + return 15817; + else if (HoneyLevel == 0) + return 15818; + else if (HoneyLevel == 1) + return 15819; + else if (HoneyLevel == 2) + return 15820; + else if (HoneyLevel == 3) + return 15821; + else if (HoneyLevel == 4) + return 15822; + else + return 15823; +} +BlockState Beehive(); +eBlockFace Facing(BlockState Block); +unsigned char HoneyLevel(BlockState Block); +} // namespace Beehive +namespace Beetroots +{ +constexpr BlockState Beetroots(const unsigned char Age) +{ + if (Age == 0) + return 9219; + else if (Age == 1) + return 9220; + else if (Age == 2) + return 9221; + else + return 9222; +} +BlockState Beetroots(); +unsigned char Age(BlockState Block); +} // namespace Beetroots +namespace Bell +{ +enum class Attachment +{ + Floor, + Ceiling, + SingleWall, + DoubleWall +}; +constexpr BlockState Bell(const enum Attachment Attachment, const eBlockFace Facing, const bool Powered) +{ + if (Attachment == Attachment::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 14854; + else + return 14855; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 14856; + else + return 14857; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 14858; + else + return 14859; + else if (Powered) + return 14860; + else + return 14861; + else if (Attachment == Attachment::Ceiling) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 14862; + else + return 14863; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 14864; + else + return 14865; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 14866; + else + return 14867; + else if (Powered) + return 14868; + else + return 14869; + else if (Attachment == Attachment::SingleWall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 14870; + else + return 14871; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 14872; + else + return 14873; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 14874; + else + return 14875; + else if (Powered) + return 14876; + else + return 14877; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 14878; + else + return 14879; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 14880; + else + return 14881; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 14882; + else + return 14883; + else if (Powered) + return 14884; + else + return 14885; +} +BlockState Bell(); +enum Attachment Attachment(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace Bell +namespace BirchButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState BirchButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6394; + else + return 6395; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6396; + else + return 6397; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6398; + else + return 6399; + else if (Powered) + return 6400; + else + return 6401; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6402; + else + return 6403; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6404; + else + return 6405; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6406; + else + return 6407; + else if (Powered) + return 6408; + else + return 6409; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6410; + else + return 6411; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6412; + else + return 6413; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6414; + else + return 6415; + else if (Powered) + return 6416; + else + return 6417; +} +BlockState BirchButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace BirchButton +namespace BirchDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState BirchDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8802; + else + return 8803; + else if (Powered) + return 8804; + else + return 8805; + else if (Open) + if (Powered) + return 8806; + else + return 8807; + else if (Powered) + return 8808; + else + return 8809; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8810; + else + return 8811; + else if (Powered) + return 8812; + else + return 8813; + else if (Open) + if (Powered) + return 8814; + else + return 8815; + else if (Powered) + return 8816; + else + return 8817; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8818; + else + return 8819; + else if (Powered) + return 8820; + else + return 8821; + else if (Open) + if (Powered) + return 8822; + else + return 8823; + else if (Powered) + return 8824; + else + return 8825; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8826; + else + return 8827; + else if (Powered) + return 8828; + else + return 8829; + else if (Open) + if (Powered) + return 8830; + else + return 8831; + else if (Powered) + return 8832; + else + return 8833; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8834; + else + return 8835; + else if (Powered) + return 8836; + else + return 8837; + else if (Open) + if (Powered) + return 8838; + else + return 8839; + else if (Powered) + return 8840; + else + return 8841; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8842; + else + return 8843; + else if (Powered) + return 8844; + else + return 8845; + else if (Open) + if (Powered) + return 8846; + else + return 8847; + else if (Powered) + return 8848; + else + return 8849; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8850; + else + return 8851; + else if (Powered) + return 8852; + else + return 8853; + else if (Open) + if (Powered) + return 8854; + else + return 8855; + else if (Powered) + return 8856; + else + return 8857; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8858; + else + return 8859; + else if (Powered) + return 8860; + else + return 8861; + else if (Open) + if (Powered) + return 8862; + else + return 8863; + else if (Powered) + return 8864; + else + return 8865; +} +BlockState BirchDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace BirchDoor +namespace BirchFence +{ +constexpr BlockState BirchFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 8612; + else + return 8613; + else if (West) + return 8616; + else + return 8617; + else if (South) + if (West) + return 8620; + else + return 8621; + else if (West) + return 8624; + else + return 8625; + else if (North) + if (South) + if (West) + return 8628; + else + return 8629; + else if (West) + return 8632; + else + return 8633; + else if (South) + if (West) + return 8636; + else + return 8637; + else if (West) + return 8640; + else + return 8641; +} +BlockState BirchFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace BirchFence +namespace BirchFenceGate +{ +constexpr BlockState BirchFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 8450; + else + return 8451; + else if (Powered) + return 8452; + else + return 8453; + else if (Open) + if (Powered) + return 8454; + else + return 8455; + else if (Powered) + return 8456; + else + return 8457; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 8458; + else + return 8459; + else if (Powered) + return 8460; + else + return 8461; + else if (Open) + if (Powered) + return 8462; + else + return 8463; + else if (Powered) + return 8464; + else + return 8465; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 8466; + else + return 8467; + else if (Powered) + return 8468; + else + return 8469; + else if (Open) + if (Powered) + return 8470; + else + return 8471; + else if (Powered) + return 8472; + else + return 8473; + else if (InWall) + if (Open) + if (Powered) + return 8474; + else + return 8475; + else if (Powered) + return 8476; + else + return 8477; + else if (Open) + if (Powered) + return 8478; + else + return 8479; + else if (Powered) + return 8480; + else + return 8481; +} +BlockState BirchFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace BirchFenceGate +namespace BirchLeaves +{ +constexpr BlockState BirchLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 173; + else + return 174; + else if (Distance == 2) + if (Persistent) + return 175; + else + return 176; + else if (Distance == 3) + if (Persistent) + return 177; + else + return 178; + else if (Distance == 4) + if (Persistent) + return 179; + else + return 180; + else if (Distance == 5) + if (Persistent) + return 181; + else + return 182; + else if (Distance == 6) + if (Persistent) + return 183; + else + return 184; + else if (Persistent) + return 185; + else + return 186; +} +BlockState BirchLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace BirchLeaves +namespace BirchLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState BirchLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 79; + else if (Axis == Axis::Y) + return 80; + else + return 81; +} +BlockState BirchLog(); +enum Axis Axis(BlockState Block); +} // namespace BirchLog +namespace BirchPlanks +{ +constexpr BlockState BirchPlanks() +{ + return 17; +} +} // namespace BirchPlanks +namespace BirchPressurePlate +{ +constexpr BlockState BirchPressurePlate(const bool Powered) +{ + if (Powered) + return 3877; + else + return 3878; +} +BlockState BirchPressurePlate(); +bool Powered(BlockState Block); +} // namespace BirchPressurePlate +namespace BirchSapling +{ +constexpr BlockState BirchSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 25; + else + return 26; +} +BlockState BirchSapling(); +unsigned char Stage(BlockState Block); +} // namespace BirchSapling +namespace BirchSign +{ +constexpr BlockState BirchSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3446; + else if (Rotation == 1) + return 3448; + else if (Rotation == 2) + return 3450; + else if (Rotation == 3) + return 3452; + else if (Rotation == 4) + return 3454; + else if (Rotation == 5) + return 3456; + else if (Rotation == 6) + return 3458; + else if (Rotation == 7) + return 3460; + else if (Rotation == 8) + return 3462; + else if (Rotation == 9) + return 3464; + else if (Rotation == 10) + return 3466; + else if (Rotation == 11) + return 3468; + else if (Rotation == 12) + return 3470; + else if (Rotation == 13) + return 3472; + else if (Rotation == 14) + return 3474; + else + return 3476; +} +BlockState BirchSign(); +unsigned char Rotation(BlockState Block); +} // namespace BirchSign +namespace BirchSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState BirchSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8313; + else if (Type == Type::Bottom) + return 8315; + else + return 8317; +} +BlockState BirchSlab(); +enum Type Type(BlockState Block); +} // namespace BirchSlab +namespace BirchStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState BirchStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5485; + else if (Shape == Shape::InnerLeft) + return 5487; + else if (Shape == Shape::InnerRight) + return 5489; + else if (Shape == Shape::OuterLeft) + return 5491; + else + return 5493; + else if (Shape == Shape::Straight) + return 5495; + else if (Shape == Shape::InnerLeft) + return 5497; + else if (Shape == Shape::InnerRight) + return 5499; + else if (Shape == Shape::OuterLeft) + return 5501; + else + return 5503; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5505; + else if (Shape == Shape::InnerLeft) + return 5507; + else if (Shape == Shape::InnerRight) + return 5509; + else if (Shape == Shape::OuterLeft) + return 5511; + else + return 5513; + else if (Shape == Shape::Straight) + return 5515; + else if (Shape == Shape::InnerLeft) + return 5517; + else if (Shape == Shape::InnerRight) + return 5519; + else if (Shape == Shape::OuterLeft) + return 5521; + else + return 5523; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5525; + else if (Shape == Shape::InnerLeft) + return 5527; + else if (Shape == Shape::InnerRight) + return 5529; + else if (Shape == Shape::OuterLeft) + return 5531; + else + return 5533; + else if (Shape == Shape::Straight) + return 5535; + else if (Shape == Shape::InnerLeft) + return 5537; + else if (Shape == Shape::InnerRight) + return 5539; + else if (Shape == Shape::OuterLeft) + return 5541; + else + return 5543; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5545; + else if (Shape == Shape::InnerLeft) + return 5547; + else if (Shape == Shape::InnerRight) + return 5549; + else if (Shape == Shape::OuterLeft) + return 5551; + else + return 5553; + else if (Shape == Shape::Straight) + return 5555; + else if (Shape == Shape::InnerLeft) + return 5557; + else if (Shape == Shape::InnerRight) + return 5559; + else if (Shape == Shape::OuterLeft) + return 5561; + else + return 5563; +} +BlockState BirchStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace BirchStairs +namespace BirchTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState BirchTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4240; + else + return 4242; + else if (Powered) + return 4244; + else + return 4246; + else if (Open) + if (Powered) + return 4248; + else + return 4250; + else if (Powered) + return 4252; + else + return 4254; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4256; + else + return 4258; + else if (Powered) + return 4260; + else + return 4262; + else if (Open) + if (Powered) + return 4264; + else + return 4266; + else if (Powered) + return 4268; + else + return 4270; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4272; + else + return 4274; + else if (Powered) + return 4276; + else + return 4278; + else if (Open) + if (Powered) + return 4280; + else + return 4282; + else if (Powered) + return 4284; + else + return 4286; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4288; + else + return 4290; + else if (Powered) + return 4292; + else + return 4294; + else if (Open) + if (Powered) + return 4296; + else + return 4298; + else if (Powered) + return 4300; + else + return 4302; +} +BlockState BirchTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace BirchTrapdoor +namespace BirchWallSign +{ +constexpr BlockState BirchWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3752; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3754; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3756; + else + return 3758; +} +BlockState BirchWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace BirchWallSign +namespace BirchWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState BirchWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 115; + else if (Axis == Axis::Y) + return 116; + else + return 117; +} +BlockState BirchWood(); +enum Axis Axis(BlockState Block); +} // namespace BirchWood +namespace BlackBanner +{ +constexpr BlockState BlackBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8137; + else if (Rotation == 1) + return 8138; + else if (Rotation == 2) + return 8139; + else if (Rotation == 3) + return 8140; + else if (Rotation == 4) + return 8141; + else if (Rotation == 5) + return 8142; + else if (Rotation == 6) + return 8143; + else if (Rotation == 7) + return 8144; + else if (Rotation == 8) + return 8145; + else if (Rotation == 9) + return 8146; + else if (Rotation == 10) + return 8147; + else if (Rotation == 11) + return 8148; + else if (Rotation == 12) + return 8149; + else if (Rotation == 13) + return 8150; + else if (Rotation == 14) + return 8151; + else + return 8152; +} +BlockState BlackBanner(); +unsigned char Rotation(BlockState Block); +} // namespace BlackBanner +namespace BlackBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState BlackBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1289; + else + return 1290; + else if (Part == Part::Head) + return 1291; + else + return 1292; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1293; + else + return 1294; + else if (Part == Part::Head) + return 1295; + else + return 1296; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1297; + else + return 1298; + else if (Part == Part::Head) + return 1299; + else + return 1300; + else if (Occupied) + if (Part == Part::Head) + return 1301; + else + return 1302; + else if (Part == Part::Head) + return 1303; + else + return 1304; +} +BlockState BlackBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace BlackBed +namespace BlackCarpet +{ +constexpr BlockState BlackCarpet() +{ + return 7881; +} +} // namespace BlackCarpet +namespace BlackConcrete +{ +constexpr BlockState BlackConcrete() +{ + return 9453; +} +} // namespace BlackConcrete +namespace BlackConcretePowder +{ +constexpr BlockState BlackConcretePowder() +{ + return 9469; +} +} // namespace BlackConcretePowder +namespace BlackGlazedTerracotta +{ +constexpr BlockState BlackGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9434; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9435; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9436; + else + return 9437; +} +BlockState BlackGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace BlackGlazedTerracotta +namespace BlackShulkerBox +{ +constexpr BlockState BlackShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9368; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9369; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9370; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9371; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9372; + else + return 9373; +} +BlockState BlackShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace BlackShulkerBox +namespace BlackStainedGlass +{ +constexpr BlockState BlackStainedGlass() +{ + return 4110; +} +} // namespace BlackStainedGlass +namespace BlackStainedGlassPane +{ +constexpr BlockState BlackStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7345; + else + return 7346; + else if (West) + return 7349; + else + return 7350; + else if (South) + if (West) + return 7353; + else + return 7354; + else if (West) + return 7357; + else + return 7358; + else if (North) + if (South) + if (West) + return 7361; + else + return 7362; + else if (West) + return 7365; + else + return 7366; + else if (South) + if (West) + return 7369; + else + return 7370; + else if (West) + return 7373; + else + return 7374; +} +BlockState BlackStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace BlackStainedGlassPane +namespace BlackTerracotta +{ +constexpr BlockState BlackTerracotta() +{ + return 6862; +} +} // namespace BlackTerracotta +namespace BlackWallBanner +{ +constexpr BlockState BlackWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8213; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8214; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8215; + else + return 8216; +} +BlockState BlackWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace BlackWallBanner +namespace BlackWool +{ +constexpr BlockState BlackWool() +{ + return 1399; +} +} // namespace BlackWool +namespace Blackstone +{ +constexpr BlockState Blackstone() +{ + return 15839; +} +} // namespace Blackstone +namespace BlackstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState BlackstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 16245; + else if (Type == Type::Bottom) + return 16247; + else + return 16249; +} +BlockState BlackstoneSlab(); +enum Type Type(BlockState Block); +} // namespace BlackstoneSlab +namespace BlackstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState BlackstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15841; + else if (Shape == Shape::InnerLeft) + return 15843; + else if (Shape == Shape::InnerRight) + return 15845; + else if (Shape == Shape::OuterLeft) + return 15847; + else + return 15849; + else if (Shape == Shape::Straight) + return 15851; + else if (Shape == Shape::InnerLeft) + return 15853; + else if (Shape == Shape::InnerRight) + return 15855; + else if (Shape == Shape::OuterLeft) + return 15857; + else + return 15859; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15861; + else if (Shape == Shape::InnerLeft) + return 15863; + else if (Shape == Shape::InnerRight) + return 15865; + else if (Shape == Shape::OuterLeft) + return 15867; + else + return 15869; + else if (Shape == Shape::Straight) + return 15871; + else if (Shape == Shape::InnerLeft) + return 15873; + else if (Shape == Shape::InnerRight) + return 15875; + else if (Shape == Shape::OuterLeft) + return 15877; + else + return 15879; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15881; + else if (Shape == Shape::InnerLeft) + return 15883; + else if (Shape == Shape::InnerRight) + return 15885; + else if (Shape == Shape::OuterLeft) + return 15887; + else + return 15889; + else if (Shape == Shape::Straight) + return 15891; + else if (Shape == Shape::InnerLeft) + return 15893; + else if (Shape == Shape::InnerRight) + return 15895; + else if (Shape == Shape::OuterLeft) + return 15897; + else + return 15899; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15901; + else if (Shape == Shape::InnerLeft) + return 15903; + else if (Shape == Shape::InnerRight) + return 15905; + else if (Shape == Shape::OuterLeft) + return 15907; + else + return 15909; + else if (Shape == Shape::Straight) + return 15911; + else if (Shape == Shape::InnerLeft) + return 15913; + else if (Shape == Shape::InnerRight) + return 15915; + else if (Shape == Shape::OuterLeft) + return 15917; + else + return 15919; +} +BlockState BlackstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace BlackstoneStairs +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 BlockState BlackstoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 15923; + else if (West == West::Low) + return 15924; + else + return 15925; + else if (West == West::None) + return 15929; + else if (West == West::Low) + return 15930; + else + return 15931; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 15935; + else if (West == West::Low) + return 15936; + else + return 15937; + else if (West == West::None) + return 15941; + else if (West == West::Low) + return 15942; + else + return 15943; + else if (Up) + if (West == West::None) + return 15947; + else if (West == West::Low) + return 15948; + else + return 15949; + else if (West == West::None) + return 15953; + else if (West == West::Low) + return 15954; + else + return 15955; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 15959; + else if (West == West::Low) + return 15960; + else + return 15961; + else if (West == West::None) + return 15965; + else if (West == West::Low) + return 15966; + else + return 15967; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 15971; + else if (West == West::Low) + return 15972; + else + return 15973; + else if (West == West::None) + return 15977; + else if (West == West::Low) + return 15978; + else + return 15979; + else if (Up) + if (West == West::None) + return 15983; + else if (West == West::Low) + return 15984; + else + return 15985; + else if (West == West::None) + return 15989; + else if (West == West::Low) + return 15990; + else + return 15991; + else if (South == South::None) + if (Up) + if (West == West::None) + return 15995; + else if (West == West::Low) + return 15996; + else + return 15997; + else if (West == West::None) + return 16001; + else if (West == West::Low) + return 16002; + else + return 16003; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16007; + else if (West == West::Low) + return 16008; + else + return 16009; + else if (West == West::None) + return 16013; + else if (West == West::Low) + return 16014; + else + return 16015; + else if (Up) + if (West == West::None) + return 16019; + else if (West == West::Low) + return 16020; + else + return 16021; + else if (West == West::None) + return 16025; + else if (West == West::Low) + return 16026; + else + return 16027; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16031; + else if (West == West::Low) + return 16032; + else + return 16033; + else if (West == West::None) + return 16037; + else if (West == West::Low) + return 16038; + else + return 16039; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16043; + else if (West == West::Low) + return 16044; + else + return 16045; + else if (West == West::None) + return 16049; + else if (West == West::Low) + return 16050; + else + return 16051; + else if (Up) + if (West == West::None) + return 16055; + else if (West == West::Low) + return 16056; + else + return 16057; + else if (West == West::None) + return 16061; + else if (West == West::Low) + return 16062; + else + return 16063; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16067; + else if (West == West::Low) + return 16068; + else + return 16069; + else if (West == West::None) + return 16073; + else if (West == West::Low) + return 16074; + else + return 16075; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16079; + else if (West == West::Low) + return 16080; + else + return 16081; + else if (West == West::None) + return 16085; + else if (West == West::Low) + return 16086; + else + return 16087; + else if (Up) + if (West == West::None) + return 16091; + else if (West == West::Low) + return 16092; + else + return 16093; + else if (West == West::None) + return 16097; + else if (West == West::Low) + return 16098; + else + return 16099; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16103; + else if (West == West::Low) + return 16104; + else + return 16105; + else if (West == West::None) + return 16109; + else if (West == West::Low) + return 16110; + else + return 16111; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16115; + else if (West == West::Low) + return 16116; + else + return 16117; + else if (West == West::None) + return 16121; + else if (West == West::Low) + return 16122; + else + return 16123; + else if (Up) + if (West == West::None) + return 16127; + else if (West == West::Low) + return 16128; + else + return 16129; + else if (West == West::None) + return 16133; + else if (West == West::Low) + return 16134; + else + return 16135; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16139; + else if (West == West::Low) + return 16140; + else + return 16141; + else if (West == West::None) + return 16145; + else if (West == West::Low) + return 16146; + else + return 16147; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16151; + else if (West == West::Low) + return 16152; + else + return 16153; + else if (West == West::None) + return 16157; + else if (West == West::Low) + return 16158; + else + return 16159; + else if (Up) + if (West == West::None) + return 16163; + else if (West == West::Low) + return 16164; + else + return 16165; + else if (West == West::None) + return 16169; + else if (West == West::Low) + return 16170; + else + return 16171; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16175; + else if (West == West::Low) + return 16176; + else + return 16177; + else if (West == West::None) + return 16181; + else if (West == West::Low) + return 16182; + else + return 16183; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16187; + else if (West == West::Low) + return 16188; + else + return 16189; + else if (West == West::None) + return 16193; + else if (West == West::Low) + return 16194; + else + return 16195; + else if (Up) + if (West == West::None) + return 16199; + else if (West == West::Low) + return 16200; + else + return 16201; + else if (West == West::None) + return 16205; + else if (West == West::Low) + return 16206; + else + return 16207; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16211; + else if (West == West::Low) + return 16212; + else + return 16213; + else if (West == West::None) + return 16217; + else if (West == West::Low) + return 16218; + else + return 16219; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16223; + else if (West == West::Low) + return 16224; + else + return 16225; + else if (West == West::None) + return 16229; + else if (West == West::Low) + return 16230; + else + return 16231; + else if (Up) + if (West == West::None) + return 16235; + else if (West == West::Low) + return 16236; + else + return 16237; + else if (West == West::None) + return 16241; + else if (West == West::Low) + return 16242; + else + return 16243; +} +BlockState BlackstoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace BlackstoneWall +namespace BlastFurnace +{ +constexpr BlockState BlastFurnace(const eBlockFace Facing, const bool Lit) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + return 14811; + else + return 14812; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + return 14813; + else + return 14814; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + return 14815; + else + return 14816; + else if (Lit) + return 14817; + else + return 14818; +} +BlockState BlastFurnace(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +} // namespace BlastFurnace +namespace BlueBanner +{ +constexpr BlockState BlueBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8073; + else if (Rotation == 1) + return 8074; + else if (Rotation == 2) + return 8075; + else if (Rotation == 3) + return 8076; + else if (Rotation == 4) + return 8077; + else if (Rotation == 5) + return 8078; + else if (Rotation == 6) + return 8079; + else if (Rotation == 7) + return 8080; + else if (Rotation == 8) + return 8081; + else if (Rotation == 9) + return 8082; + else if (Rotation == 10) + return 8083; + else if (Rotation == 11) + return 8084; + else if (Rotation == 12) + return 8085; + else if (Rotation == 13) + return 8086; + else if (Rotation == 14) + return 8087; + else + return 8088; +} +BlockState BlueBanner(); +unsigned char Rotation(BlockState Block); +} // namespace BlueBanner +namespace BlueBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState BlueBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1225; + else + return 1226; + else if (Part == Part::Head) + return 1227; + else + return 1228; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1229; + else + return 1230; + else if (Part == Part::Head) + return 1231; + else + return 1232; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1233; + else + return 1234; + else if (Part == Part::Head) + return 1235; + else + return 1236; + else if (Occupied) + if (Part == Part::Head) + return 1237; + else + return 1238; + else if (Part == Part::Head) + return 1239; + else + return 1240; +} +BlockState BlueBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace BlueBed +namespace BlueCarpet +{ +constexpr BlockState BlueCarpet() +{ + return 7877; +} +} // namespace BlueCarpet +namespace BlueConcrete +{ +constexpr BlockState BlueConcrete() +{ + return 9449; +} +} // namespace BlueConcrete +namespace BlueConcretePowder +{ +constexpr BlockState BlueConcretePowder() +{ + return 9465; +} +} // namespace BlueConcretePowder +namespace BlueGlazedTerracotta +{ +constexpr BlockState BlueGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9418; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9419; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9420; + else + return 9421; +} +BlockState BlueGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace BlueGlazedTerracotta +namespace BlueIce +{ +constexpr BlockState BlueIce() +{ + return 9648; +} +} // namespace BlueIce +namespace BlueOrchid +{ +constexpr BlockState BlueOrchid() +{ + return 1414; +} +} // namespace BlueOrchid +namespace BlueShulkerBox +{ +constexpr BlockState BlueShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9344; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9345; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9346; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9347; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9348; + else + return 9349; +} +BlockState BlueShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace BlueShulkerBox +namespace BlueStainedGlass +{ +constexpr BlockState BlueStainedGlass() +{ + return 4106; +} +} // namespace BlueStainedGlass +namespace BlueStainedGlassPane +{ +constexpr BlockState BlueStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7217; + else + return 7218; + else if (West) + return 7221; + else + return 7222; + else if (South) + if (West) + return 7225; + else + return 7226; + else if (West) + return 7229; + else + return 7230; + else if (North) + if (South) + if (West) + return 7233; + else + return 7234; + else if (West) + return 7237; + else + return 7238; + else if (South) + if (West) + return 7241; + else + return 7242; + else if (West) + return 7245; + else + return 7246; +} +BlockState BlueStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace BlueStainedGlassPane +namespace BlueTerracotta +{ +constexpr BlockState BlueTerracotta() +{ + return 6858; +} +} // namespace BlueTerracotta +namespace BlueWallBanner +{ +constexpr BlockState BlueWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8197; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8198; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8199; + else + return 8200; +} +BlockState BlueWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace BlueWallBanner +namespace BlueWool +{ +constexpr BlockState BlueWool() +{ + return 1395; +} +} // namespace BlueWool +namespace BoneBlock +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState BoneBlock(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 9256; + else if (Axis == Axis::Y) + return 9257; + else + return 9258; +} +BlockState BoneBlock(); +enum Axis Axis(BlockState Block); +} // namespace BoneBlock +namespace Bookshelf +{ +constexpr BlockState Bookshelf() +{ + return 1432; +} +} // namespace Bookshelf +namespace BrainCoral +{ +constexpr BlockState BrainCoral() +{ + return 9533; +} +} // namespace BrainCoral +namespace BrainCoralBlock +{ +constexpr BlockState BrainCoralBlock() +{ + return 9516; +} +} // namespace BrainCoralBlock +namespace BrainCoralFan +{ +constexpr BlockState BrainCoralFan() +{ + return 9553; +} +} // namespace BrainCoralFan +namespace BrainCoralWallFan +{ +constexpr BlockState BrainCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9609; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9611; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9613; + else + return 9615; +} +BlockState BrainCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace BrainCoralWallFan +namespace BrewingStand +{ +constexpr BlockState BrewingStand(const bool HasBottle_0, const bool HasBottle_1, const bool HasBottle_2) +{ + if (HasBottle_0) + if (HasBottle_1) + if (HasBottle_2) + return 5133; + else + return 5134; + else if (HasBottle_2) + return 5135; + else + return 5136; + else if (HasBottle_1) + if (HasBottle_2) + return 5137; + else + return 5138; + else if (HasBottle_2) + return 5139; + else + return 5140; +} +BlockState BrewingStand(); +bool HasBottle_0(BlockState Block); +bool HasBottle_1(BlockState Block); +bool HasBottle_2(BlockState Block); +} // namespace BrewingStand +namespace BrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState BrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8373; + else if (Type == Type::Bottom) + return 8375; + else + return 8377; +} +BlockState BrickSlab(); +enum Type Type(BlockState Block); +} // namespace BrickSlab +namespace BrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState BrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4853; + else if (Shape == Shape::InnerLeft) + return 4855; + else if (Shape == Shape::InnerRight) + return 4857; + else if (Shape == Shape::OuterLeft) + return 4859; + else + return 4861; + else if (Shape == Shape::Straight) + return 4863; + else if (Shape == Shape::InnerLeft) + return 4865; + else if (Shape == Shape::InnerRight) + return 4867; + else if (Shape == Shape::OuterLeft) + return 4869; + else + return 4871; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4873; + else if (Shape == Shape::InnerLeft) + return 4875; + else if (Shape == Shape::InnerRight) + return 4877; + else if (Shape == Shape::OuterLeft) + return 4879; + else + return 4881; + else if (Shape == Shape::Straight) + return 4883; + else if (Shape == Shape::InnerLeft) + return 4885; + else if (Shape == Shape::InnerRight) + return 4887; + else if (Shape == Shape::OuterLeft) + return 4889; + else + return 4891; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4893; + else if (Shape == Shape::InnerLeft) + return 4895; + else if (Shape == Shape::InnerRight) + return 4897; + else if (Shape == Shape::OuterLeft) + return 4899; + else + return 4901; + else if (Shape == Shape::Straight) + return 4903; + else if (Shape == Shape::InnerLeft) + return 4905; + else if (Shape == Shape::InnerRight) + return 4907; + else if (Shape == Shape::OuterLeft) + return 4909; + else + return 4911; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4913; + else if (Shape == Shape::InnerLeft) + return 4915; + else if (Shape == Shape::InnerRight) + return 4917; + else if (Shape == Shape::OuterLeft) + return 4919; + else + return 4921; + else if (Shape == Shape::Straight) + return 4923; + else if (Shape == Shape::InnerLeft) + return 4925; + else if (Shape == Shape::InnerRight) + return 4927; + else if (Shape == Shape::OuterLeft) + return 4929; + else + return 4931; +} +BlockState BrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace BrickStairs +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 BlockState BrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 10870; + else if (West == West::Low) + return 10871; + else + return 10872; + else if (West == West::None) + return 10876; + else if (West == West::Low) + return 10877; + else + return 10878; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 10882; + else if (West == West::Low) + return 10883; + else + return 10884; + else if (West == West::None) + return 10888; + else if (West == West::Low) + return 10889; + else + return 10890; + else if (Up) + if (West == West::None) + return 10894; + else if (West == West::Low) + return 10895; + else + return 10896; + else if (West == West::None) + return 10900; + else if (West == West::Low) + return 10901; + else + return 10902; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 10906; + else if (West == West::Low) + return 10907; + else + return 10908; + else if (West == West::None) + return 10912; + else if (West == West::Low) + return 10913; + else + return 10914; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 10918; + else if (West == West::Low) + return 10919; + else + return 10920; + else if (West == West::None) + return 10924; + else if (West == West::Low) + return 10925; + else + return 10926; + else if (Up) + if (West == West::None) + return 10930; + else if (West == West::Low) + return 10931; + else + return 10932; + else if (West == West::None) + return 10936; + else if (West == West::Low) + return 10937; + else + return 10938; + else if (South == South::None) + if (Up) + if (West == West::None) + return 10942; + else if (West == West::Low) + return 10943; + else + return 10944; + else if (West == West::None) + return 10948; + else if (West == West::Low) + return 10949; + else + return 10950; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 10954; + else if (West == West::Low) + return 10955; + else + return 10956; + else if (West == West::None) + return 10960; + else if (West == West::Low) + return 10961; + else + return 10962; + else if (Up) + if (West == West::None) + return 10966; + else if (West == West::Low) + return 10967; + else + return 10968; + else if (West == West::None) + return 10972; + else if (West == West::Low) + return 10973; + else + return 10974; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 10978; + else if (West == West::Low) + return 10979; + else + return 10980; + else if (West == West::None) + return 10984; + else if (West == West::Low) + return 10985; + else + return 10986; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 10990; + else if (West == West::Low) + return 10991; + else + return 10992; + else if (West == West::None) + return 10996; + else if (West == West::Low) + return 10997; + else + return 10998; + else if (Up) + if (West == West::None) + return 11002; + else if (West == West::Low) + return 11003; + else + return 11004; + else if (West == West::None) + return 11008; + else if (West == West::Low) + return 11009; + else + return 11010; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11014; + else if (West == West::Low) + return 11015; + else + return 11016; + else if (West == West::None) + return 11020; + else if (West == West::Low) + return 11021; + else + return 11022; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11026; + else if (West == West::Low) + return 11027; + else + return 11028; + else if (West == West::None) + return 11032; + else if (West == West::Low) + return 11033; + else + return 11034; + else if (Up) + if (West == West::None) + return 11038; + else if (West == West::Low) + return 11039; + else + return 11040; + else if (West == West::None) + return 11044; + else if (West == West::Low) + return 11045; + else + return 11046; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11050; + else if (West == West::Low) + return 11051; + else + return 11052; + else if (West == West::None) + return 11056; + else if (West == West::Low) + return 11057; + else + return 11058; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11062; + else if (West == West::Low) + return 11063; + else + return 11064; + else if (West == West::None) + return 11068; + else if (West == West::Low) + return 11069; + else + return 11070; + else if (Up) + if (West == West::None) + return 11074; + else if (West == West::Low) + return 11075; + else + return 11076; + else if (West == West::None) + return 11080; + else if (West == West::Low) + return 11081; + else + return 11082; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11086; + else if (West == West::Low) + return 11087; + else + return 11088; + else if (West == West::None) + return 11092; + else if (West == West::Low) + return 11093; + else + return 11094; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11098; + else if (West == West::Low) + return 11099; + else + return 11100; + else if (West == West::None) + return 11104; + else if (West == West::Low) + return 11105; + else + return 11106; + else if (Up) + if (West == West::None) + return 11110; + else if (West == West::Low) + return 11111; + else + return 11112; + else if (West == West::None) + return 11116; + else if (West == West::Low) + return 11117; + else + return 11118; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11122; + else if (West == West::Low) + return 11123; + else + return 11124; + else if (West == West::None) + return 11128; + else if (West == West::Low) + return 11129; + else + return 11130; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11134; + else if (West == West::Low) + return 11135; + else + return 11136; + else if (West == West::None) + return 11140; + else if (West == West::Low) + return 11141; + else + return 11142; + else if (Up) + if (West == West::None) + return 11146; + else if (West == West::Low) + return 11147; + else + return 11148; + else if (West == West::None) + return 11152; + else if (West == West::Low) + return 11153; + else + return 11154; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11158; + else if (West == West::Low) + return 11159; + else + return 11160; + else if (West == West::None) + return 11164; + else if (West == West::Low) + return 11165; + else + return 11166; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11170; + else if (West == West::Low) + return 11171; + else + return 11172; + else if (West == West::None) + return 11176; + else if (West == West::Low) + return 11177; + else + return 11178; + else if (Up) + if (West == West::None) + return 11182; + else if (West == West::Low) + return 11183; + else + return 11184; + else if (West == West::None) + return 11188; + else if (West == West::Low) + return 11189; + else + return 11190; +} +BlockState BrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace BrickWall +namespace Bricks +{ +constexpr BlockState Bricks() +{ + return 1429; +} +} // namespace Bricks +namespace BrownBanner +{ +constexpr BlockState BrownBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8089; + else if (Rotation == 1) + return 8090; + else if (Rotation == 2) + return 8091; + else if (Rotation == 3) + return 8092; + else if (Rotation == 4) + return 8093; + else if (Rotation == 5) + return 8094; + else if (Rotation == 6) + return 8095; + else if (Rotation == 7) + return 8096; + else if (Rotation == 8) + return 8097; + else if (Rotation == 9) + return 8098; + else if (Rotation == 10) + return 8099; + else if (Rotation == 11) + return 8100; + else if (Rotation == 12) + return 8101; + else if (Rotation == 13) + return 8102; + else if (Rotation == 14) + return 8103; + else + return 8104; +} +BlockState BrownBanner(); +unsigned char Rotation(BlockState Block); +} // namespace BrownBanner +namespace BrownBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState BrownBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1241; + else + return 1242; + else if (Part == Part::Head) + return 1243; + else + return 1244; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1245; + else + return 1246; + else if (Part == Part::Head) + return 1247; + else + return 1248; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1249; + else + return 1250; + else if (Part == Part::Head) + return 1251; + else + return 1252; + else if (Occupied) + if (Part == Part::Head) + return 1253; + else + return 1254; + else if (Part == Part::Head) + return 1255; + else + return 1256; +} +BlockState BrownBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace BrownBed +namespace BrownCarpet +{ +constexpr BlockState BrownCarpet() +{ + return 7878; +} +} // namespace BrownCarpet +namespace BrownConcrete +{ +constexpr BlockState BrownConcrete() +{ + return 9450; +} +} // namespace BrownConcrete +namespace BrownConcretePowder +{ +constexpr BlockState BrownConcretePowder() +{ + return 9466; +} +} // namespace BrownConcretePowder +namespace BrownGlazedTerracotta +{ +constexpr BlockState BrownGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9422; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9423; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9424; + else + return 9425; +} +BlockState BrownGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace BrownGlazedTerracotta +namespace BrownMushroom +{ +constexpr BlockState BrownMushroom() +{ + return 1425; +} +} // namespace BrownMushroom +namespace BrownMushroomBlock +{ +constexpr BlockState BrownMushroomBlock( + const bool Down, + const bool East, + const bool North, + const bool South, + const bool Up, + const bool West +) +{ + if (Down) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 4505; + else + return 4506; + else if (West) + return 4507; + else + return 4508; + else if (Up) + if (West) + return 4509; + else + return 4510; + else if (West) + return 4511; + else + return 4512; + else if (South) + if (Up) + if (West) + return 4513; + else + return 4514; + else if (West) + return 4515; + else + return 4516; + else if (Up) + if (West) + return 4517; + else + return 4518; + else if (West) + return 4519; + else + return 4520; + else if (North) + if (South) + if (Up) + if (West) + return 4521; + else + return 4522; + else if (West) + return 4523; + else + return 4524; + else if (Up) + if (West) + return 4525; + else + return 4526; + else if (West) + return 4527; + else + return 4528; + else if (South) + if (Up) + if (West) + return 4529; + else + return 4530; + else if (West) + return 4531; + else + return 4532; + else if (Up) + if (West) + return 4533; + else + return 4534; + else if (West) + return 4535; + else + return 4536; + else if (East) + if (North) + if (South) + if (Up) + if (West) + return 4537; + else + return 4538; + else if (West) + return 4539; + else + return 4540; + else if (Up) + if (West) + return 4541; + else + return 4542; + else if (West) + return 4543; + else + return 4544; + else if (South) + if (Up) + if (West) + return 4545; + else + return 4546; + else if (West) + return 4547; + else + return 4548; + else if (Up) + if (West) + return 4549; + else + return 4550; + else if (West) + return 4551; + else + return 4552; + else if (North) + if (South) + if (Up) + if (West) + return 4553; + else + return 4554; + else if (West) + return 4555; + else + return 4556; + else if (Up) + if (West) + return 4557; + else + return 4558; + else if (West) + return 4559; + else + return 4560; + else if (South) + if (Up) + if (West) + return 4561; + else + return 4562; + else if (West) + return 4563; + else + return 4564; + else if (Up) + if (West) + return 4565; + else + return 4566; + else if (West) + return 4567; + else + return 4568; +} +BlockState BrownMushroomBlock(); +bool Down(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace BrownMushroomBlock +namespace BrownShulkerBox +{ +constexpr BlockState BrownShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9350; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9351; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9352; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9353; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9354; + else + return 9355; +} +BlockState BrownShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace BrownShulkerBox +namespace BrownStainedGlass +{ +constexpr BlockState BrownStainedGlass() +{ + return 4107; +} +} // namespace BrownStainedGlass +namespace BrownStainedGlassPane +{ +constexpr BlockState BrownStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7249; + else + return 7250; + else if (West) + return 7253; + else + return 7254; + else if (South) + if (West) + return 7257; + else + return 7258; + else if (West) + return 7261; + else + return 7262; + else if (North) + if (South) + if (West) + return 7265; + else + return 7266; + else if (West) + return 7269; + else + return 7270; + else if (South) + if (West) + return 7273; + else + return 7274; + else if (West) + return 7277; + else + return 7278; +} +BlockState BrownStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace BrownStainedGlassPane +namespace BrownTerracotta +{ +constexpr BlockState BrownTerracotta() +{ + return 6859; +} +} // namespace BrownTerracotta +namespace BrownWallBanner +{ +constexpr BlockState BrownWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8201; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8202; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8203; + else + return 8204; +} +BlockState BrownWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace BrownWallBanner +namespace BrownWool +{ +constexpr BlockState BrownWool() +{ + return 1396; +} +} // namespace BrownWool +namespace BubbleColumn +{ +constexpr BlockState BubbleColumn(const bool Drag) +{ + if (Drag) + return 9667; + else + return 9668; +} +BlockState BubbleColumn(); +bool Drag(BlockState Block); +} // namespace BubbleColumn +namespace BubbleCoral +{ +constexpr BlockState BubbleCoral() +{ + return 9535; +} +} // namespace BubbleCoral +namespace BubbleCoralBlock +{ +constexpr BlockState BubbleCoralBlock() +{ + return 9517; +} +} // namespace BubbleCoralBlock +namespace BubbleCoralFan +{ +constexpr BlockState BubbleCoralFan() +{ + return 9555; +} +} // namespace BubbleCoralFan +namespace BubbleCoralWallFan +{ +constexpr BlockState BubbleCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9617; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9619; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9621; + else + return 9623; +} +BlockState BubbleCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace BubbleCoralWallFan +namespace Cactus +{ +constexpr BlockState Cactus(const unsigned char Age) +{ + if (Age == 0) + return 3931; + else if (Age == 1) + return 3932; + else if (Age == 2) + return 3933; + else if (Age == 3) + return 3934; + else if (Age == 4) + return 3935; + else if (Age == 5) + return 3936; + else if (Age == 6) + return 3937; + else if (Age == 7) + return 3938; + else if (Age == 8) + return 3939; + else if (Age == 9) + return 3940; + else if (Age == 10) + return 3941; + else if (Age == 11) + return 3942; + else if (Age == 12) + return 3943; + else if (Age == 13) + return 3944; + else if (Age == 14) + return 3945; + else + return 3946; +} +BlockState Cactus(); +unsigned char Age(BlockState Block); +} // namespace Cactus +namespace Cake +{ +constexpr BlockState Cake(const unsigned char Bites) +{ + if (Bites == 0) + return 4024; + else if (Bites == 1) + return 4025; + else if (Bites == 2) + return 4026; + else if (Bites == 3) + return 4027; + else if (Bites == 4) + return 4028; + else if (Bites == 5) + return 4029; + else + return 4030; +} +BlockState Cake(); +unsigned char Bites(BlockState Block); +} // namespace Cake +namespace Campfire +{ +constexpr BlockState Campfire(const eBlockFace Facing, const bool Lit, const bool SignalFire) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + if (SignalFire) + return 14891; + else + return 14893; + else if (SignalFire) + return 14895; + else + return 14897; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + if (SignalFire) + return 14899; + else + return 14901; + else if (SignalFire) + return 14903; + else + return 14905; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + if (SignalFire) + return 14907; + else + return 14909; + else if (SignalFire) + return 14911; + else + return 14913; + else if (Lit) + if (SignalFire) + return 14915; + else + return 14917; + else if (SignalFire) + return 14919; + else + return 14921; +} +BlockState Campfire(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +bool SignalFire(BlockState Block); +} // namespace Campfire +namespace Carrots +{ +constexpr BlockState Carrots(const unsigned char Age) +{ + if (Age == 0) + return 6330; + else if (Age == 1) + return 6331; + else if (Age == 2) + return 6332; + else if (Age == 3) + return 6333; + else if (Age == 4) + return 6334; + else if (Age == 5) + return 6335; + else if (Age == 6) + return 6336; + else + return 6337; +} +BlockState Carrots(); +unsigned char Age(BlockState Block); +} // namespace Carrots +namespace CartographyTable +{ +constexpr BlockState CartographyTable() +{ + return 14819; +} +} // namespace CartographyTable +namespace CarvedPumpkin +{ +constexpr BlockState CarvedPumpkin(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 4016; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 4017; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 4018; + else + return 4019; +} +BlockState CarvedPumpkin(); +eBlockFace Facing(BlockState Block); +} // namespace CarvedPumpkin +namespace Cauldron +{ +constexpr BlockState Cauldron(const unsigned char Level) +{ + if (Level == 0) + return 5141; + else if (Level == 1) + return 5142; + else if (Level == 2) + return 5143; + else + return 5144; +} +BlockState Cauldron(); +unsigned char Level(BlockState Block); +} // namespace Cauldron +namespace CaveAir +{ +constexpr BlockState CaveAir() +{ + return 9666; +} +} // namespace CaveAir +namespace Chain +{ +constexpr BlockState Chain() +{ + return 4730; +} +} // namespace Chain +namespace ChainCommandBlock +{ +constexpr BlockState ChainCommandBlock(const bool Conditional, const eBlockFace Facing) +{ + if (Conditional) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9237; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9238; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9239; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9240; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9241; + else + return 9242; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9243; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9244; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9245; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9246; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9247; + else + return 9248; +} +BlockState ChainCommandBlock(); +bool Conditional(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace ChainCommandBlock +namespace Chest +{ +enum class Type +{ + Single, + Left, + Right +}; +constexpr BlockState Chest(const eBlockFace Facing, const enum Type Type) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Type == Type::Single) + return 2035; + else if (Type == Type::Left) + return 2037; + else + return 2039; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Type == Type::Single) + return 2041; + else if (Type == Type::Left) + return 2043; + else + return 2045; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Type == Type::Single) + return 2047; + else if (Type == Type::Left) + return 2049; + else + return 2051; + else if (Type == Type::Single) + return 2053; + else if (Type == Type::Left) + return 2055; + else + return 2057; +} +BlockState Chest(); +eBlockFace Facing(BlockState Block); +enum Type Type(BlockState Block); +} // namespace Chest +namespace ChippedAnvil +{ +constexpr BlockState ChippedAnvil(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6614; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6615; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6616; + else + return 6617; +} +BlockState ChippedAnvil(); +eBlockFace Facing(BlockState Block); +} // namespace ChippedAnvil +namespace ChiseledNetherBricks +{ +constexpr BlockState ChiseledNetherBricks() +{ + return 17101; +} +} // namespace ChiseledNetherBricks +namespace ChiseledPolishedBlackstone +{ +constexpr BlockState ChiseledPolishedBlackstone() +{ + return 16253; +} +} // namespace ChiseledPolishedBlackstone +namespace ChiseledQuartzBlock +{ +constexpr BlockState ChiseledQuartzBlock() +{ + return 6739; +} +} // namespace ChiseledQuartzBlock +namespace ChiseledRedSandstone +{ +constexpr BlockState ChiseledRedSandstone() +{ + return 8218; +} +} // namespace ChiseledRedSandstone +namespace ChiseledSandstone +{ +constexpr BlockState ChiseledSandstone() +{ + return 247; +} +} // namespace ChiseledSandstone +namespace ChiseledStoneBricks +{ +constexpr BlockState ChiseledStoneBricks() +{ + return 4498; +} +} // namespace ChiseledStoneBricks +namespace ChorusFlower +{ +constexpr BlockState ChorusFlower(const unsigned char Age) +{ + if (Age == 0) + return 9128; + else if (Age == 1) + return 9129; + else if (Age == 2) + return 9130; + else if (Age == 3) + return 9131; + else if (Age == 4) + return 9132; + else + return 9133; +} +BlockState ChorusFlower(); +unsigned char Age(BlockState Block); +} // namespace ChorusFlower +namespace ChorusPlant +{ +constexpr BlockState ChorusPlant( + const bool Down, + const bool East, + const bool North, + const bool South, + const bool Up, + const bool West +) +{ + if (Down) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 9064; + else + return 9065; + else if (West) + return 9066; + else + return 9067; + else if (Up) + if (West) + return 9068; + else + return 9069; + else if (West) + return 9070; + else + return 9071; + else if (South) + if (Up) + if (West) + return 9072; + else + return 9073; + else if (West) + return 9074; + else + return 9075; + else if (Up) + if (West) + return 9076; + else + return 9077; + else if (West) + return 9078; + else + return 9079; + else if (North) + if (South) + if (Up) + if (West) + return 9080; + else + return 9081; + else if (West) + return 9082; + else + return 9083; + else if (Up) + if (West) + return 9084; + else + return 9085; + else if (West) + return 9086; + else + return 9087; + else if (South) + if (Up) + if (West) + return 9088; + else + return 9089; + else if (West) + return 9090; + else + return 9091; + else if (Up) + if (West) + return 9092; + else + return 9093; + else if (West) + return 9094; + else + return 9095; + else if (East) + if (North) + if (South) + if (Up) + if (West) + return 9096; + else + return 9097; + else if (West) + return 9098; + else + return 9099; + else if (Up) + if (West) + return 9100; + else + return 9101; + else if (West) + return 9102; + else + return 9103; + else if (South) + if (Up) + if (West) + return 9104; + else + return 9105; + else if (West) + return 9106; + else + return 9107; + else if (Up) + if (West) + return 9108; + else + return 9109; + else if (West) + return 9110; + else + return 9111; + else if (North) + if (South) + if (Up) + if (West) + return 9112; + else + return 9113; + else if (West) + return 9114; + else + return 9115; + else if (Up) + if (West) + return 9116; + else + return 9117; + else if (West) + return 9118; + else + return 9119; + else if (South) + if (Up) + if (West) + return 9120; + else + return 9121; + else if (West) + return 9122; + else + return 9123; + else if (Up) + if (West) + return 9124; + else + return 9125; + else if (West) + return 9126; + else + return 9127; +} +BlockState ChorusPlant(); +bool Down(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace ChorusPlant +namespace Clay +{ +constexpr BlockState Clay() +{ + return 3947; +} +} // namespace Clay +namespace CoalBlock +{ +constexpr BlockState CoalBlock() +{ + return 7883; +} +} // namespace CoalBlock +namespace CoalOre +{ +constexpr BlockState CoalOre() +{ + return 71; +} +} // namespace CoalOre +namespace CoarseDirt +{ +constexpr BlockState CoarseDirt() +{ + return 11; +} +} // namespace CoarseDirt +namespace Cobblestone +{ +constexpr BlockState Cobblestone() +{ + return 14; +} +} // namespace Cobblestone +namespace CobblestoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState CobblestoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8367; + else if (Type == Type::Bottom) + return 8369; + else + return 8371; +} +BlockState CobblestoneSlab(); +enum Type Type(BlockState Block); +} // namespace CobblestoneSlab +namespace CobblestoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState CobblestoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 3656; + else if (Shape == Shape::InnerLeft) + return 3658; + else if (Shape == Shape::InnerRight) + return 3660; + else if (Shape == Shape::OuterLeft) + return 3662; + else + return 3664; + else if (Shape == Shape::Straight) + return 3666; + else if (Shape == Shape::InnerLeft) + return 3668; + else if (Shape == Shape::InnerRight) + return 3670; + else if (Shape == Shape::OuterLeft) + return 3672; + else + return 3674; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 3676; + else if (Shape == Shape::InnerLeft) + return 3678; + else if (Shape == Shape::InnerRight) + return 3680; + else if (Shape == Shape::OuterLeft) + return 3682; + else + return 3684; + else if (Shape == Shape::Straight) + return 3686; + else if (Shape == Shape::InnerLeft) + return 3688; + else if (Shape == Shape::InnerRight) + return 3690; + else if (Shape == Shape::OuterLeft) + return 3692; + else + return 3694; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 3696; + else if (Shape == Shape::InnerLeft) + return 3698; + else if (Shape == Shape::InnerRight) + return 3700; + else if (Shape == Shape::OuterLeft) + return 3702; + else + return 3704; + else if (Shape == Shape::Straight) + return 3706; + else if (Shape == Shape::InnerLeft) + return 3708; + else if (Shape == Shape::InnerRight) + return 3710; + else if (Shape == Shape::OuterLeft) + return 3712; + else + return 3714; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 3716; + else if (Shape == Shape::InnerLeft) + return 3718; + else if (Shape == Shape::InnerRight) + return 3720; + else if (Shape == Shape::OuterLeft) + return 3722; + else + return 3724; + else if (Shape == Shape::Straight) + return 3726; + else if (Shape == Shape::InnerLeft) + return 3728; + else if (Shape == Shape::InnerRight) + return 3730; + else if (Shape == Shape::OuterLeft) + return 3732; + else + return 3734; +} +BlockState CobblestoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace CobblestoneStairs +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 BlockState CobblestoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 5660; + else if (West == West::Low) + return 5661; + else + return 5662; + else if (West == West::None) + return 5666; + else if (West == West::Low) + return 5667; + else + return 5668; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5672; + else if (West == West::Low) + return 5673; + else + return 5674; + else if (West == West::None) + return 5678; + else if (West == West::Low) + return 5679; + else + return 5680; + else if (Up) + if (West == West::None) + return 5684; + else if (West == West::Low) + return 5685; + else + return 5686; + else if (West == West::None) + return 5690; + else if (West == West::Low) + return 5691; + else + return 5692; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 5696; + else if (West == West::Low) + return 5697; + else + return 5698; + else if (West == West::None) + return 5702; + else if (West == West::Low) + return 5703; + else + return 5704; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5708; + else if (West == West::Low) + return 5709; + else + return 5710; + else if (West == West::None) + return 5714; + else if (West == West::Low) + return 5715; + else + return 5716; + else if (Up) + if (West == West::None) + return 5720; + else if (West == West::Low) + return 5721; + else + return 5722; + else if (West == West::None) + return 5726; + else if (West == West::Low) + return 5727; + else + return 5728; + else if (South == South::None) + if (Up) + if (West == West::None) + return 5732; + else if (West == West::Low) + return 5733; + else + return 5734; + else if (West == West::None) + return 5738; + else if (West == West::Low) + return 5739; + else + return 5740; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5744; + else if (West == West::Low) + return 5745; + else + return 5746; + else if (West == West::None) + return 5750; + else if (West == West::Low) + return 5751; + else + return 5752; + else if (Up) + if (West == West::None) + return 5756; + else if (West == West::Low) + return 5757; + else + return 5758; + else if (West == West::None) + return 5762; + else if (West == West::Low) + return 5763; + else + return 5764; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 5768; + else if (West == West::Low) + return 5769; + else + return 5770; + else if (West == West::None) + return 5774; + else if (West == West::Low) + return 5775; + else + return 5776; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5780; + else if (West == West::Low) + return 5781; + else + return 5782; + else if (West == West::None) + return 5786; + else if (West == West::Low) + return 5787; + else + return 5788; + else if (Up) + if (West == West::None) + return 5792; + else if (West == West::Low) + return 5793; + else + return 5794; + else if (West == West::None) + return 5798; + else if (West == West::Low) + return 5799; + else + return 5800; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 5804; + else if (West == West::Low) + return 5805; + else + return 5806; + else if (West == West::None) + return 5810; + else if (West == West::Low) + return 5811; + else + return 5812; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5816; + else if (West == West::Low) + return 5817; + else + return 5818; + else if (West == West::None) + return 5822; + else if (West == West::Low) + return 5823; + else + return 5824; + else if (Up) + if (West == West::None) + return 5828; + else if (West == West::Low) + return 5829; + else + return 5830; + else if (West == West::None) + return 5834; + else if (West == West::Low) + return 5835; + else + return 5836; + else if (South == South::None) + if (Up) + if (West == West::None) + return 5840; + else if (West == West::Low) + return 5841; + else + return 5842; + else if (West == West::None) + return 5846; + else if (West == West::Low) + return 5847; + else + return 5848; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5852; + else if (West == West::Low) + return 5853; + else + return 5854; + else if (West == West::None) + return 5858; + else if (West == West::Low) + return 5859; + else + return 5860; + else if (Up) + if (West == West::None) + return 5864; + else if (West == West::Low) + return 5865; + else + return 5866; + else if (West == West::None) + return 5870; + else if (West == West::Low) + return 5871; + else + return 5872; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 5876; + else if (West == West::Low) + return 5877; + else + return 5878; + else if (West == West::None) + return 5882; + else if (West == West::Low) + return 5883; + else + return 5884; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5888; + else if (West == West::Low) + return 5889; + else + return 5890; + else if (West == West::None) + return 5894; + else if (West == West::Low) + return 5895; + else + return 5896; + else if (Up) + if (West == West::None) + return 5900; + else if (West == West::Low) + return 5901; + else + return 5902; + else if (West == West::None) + return 5906; + else if (West == West::Low) + return 5907; + else + return 5908; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 5912; + else if (West == West::Low) + return 5913; + else + return 5914; + else if (West == West::None) + return 5918; + else if (West == West::Low) + return 5919; + else + return 5920; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5924; + else if (West == West::Low) + return 5925; + else + return 5926; + else if (West == West::None) + return 5930; + else if (West == West::Low) + return 5931; + else + return 5932; + else if (Up) + if (West == West::None) + return 5936; + else if (West == West::Low) + return 5937; + else + return 5938; + else if (West == West::None) + return 5942; + else if (West == West::Low) + return 5943; + else + return 5944; + else if (South == South::None) + if (Up) + if (West == West::None) + return 5948; + else if (West == West::Low) + return 5949; + else + return 5950; + else if (West == West::None) + return 5954; + else if (West == West::Low) + return 5955; + else + return 5956; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5960; + else if (West == West::Low) + return 5961; + else + return 5962; + else if (West == West::None) + return 5966; + else if (West == West::Low) + return 5967; + else + return 5968; + else if (Up) + if (West == West::None) + return 5972; + else if (West == West::Low) + return 5973; + else + return 5974; + else if (West == West::None) + return 5978; + else if (West == West::Low) + return 5979; + else + return 5980; +} +BlockState CobblestoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace CobblestoneWall +namespace Cobweb +{ +constexpr BlockState Cobweb() +{ + return 1341; +} +} // namespace Cobweb +namespace Cocoa +{ +constexpr BlockState Cocoa(const unsigned char Age, const eBlockFace Facing) +{ + if (Age == 0) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5158; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5159; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5160; + else + return 5161; + else if (Age == 1) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5162; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5163; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5164; + else + return 5165; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5166; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5167; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5168; + else + return 5169; +} +BlockState Cocoa(); +unsigned char Age(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace Cocoa +namespace CommandBlock +{ +constexpr BlockState CommandBlock(const bool Conditional, const eBlockFace Facing) +{ + if (Conditional) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5644; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 5645; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5646; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5647; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 5648; + else + return 5649; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5650; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 5651; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5652; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5653; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 5654; + else + return 5655; +} +BlockState CommandBlock(); +bool Conditional(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace CommandBlock +namespace Comparator +{ +enum class Mode +{ + Compare, + Subtract +}; +constexpr BlockState Comparator(const eBlockFace Facing, const enum Mode Mode, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Mode == Mode::Compare) + if (Powered) + return 6678; + else + return 6679; + else if (Powered) + return 6680; + else + return 6681; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Mode == Mode::Compare) + if (Powered) + return 6682; + else + return 6683; + else if (Powered) + return 6684; + else + return 6685; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Mode == Mode::Compare) + if (Powered) + return 6686; + else + return 6687; + else if (Powered) + return 6688; + else + return 6689; + else if (Mode == Mode::Compare) + if (Powered) + return 6690; + else + return 6691; + else if (Powered) + return 6692; + else + return 6693; +} +BlockState Comparator(); +eBlockFace Facing(BlockState Block); +enum Mode Mode(BlockState Block); +bool Powered(BlockState Block); +} // namespace Comparator +namespace Composter +{ +constexpr BlockState Composter(const unsigned char Level) +{ + if (Level == 0) + return 15751; + else if (Level == 1) + return 15752; + else if (Level == 2) + return 15753; + else if (Level == 3) + return 15754; + else if (Level == 4) + return 15755; + else if (Level == 5) + return 15756; + else if (Level == 6) + return 15757; + else if (Level == 7) + return 15758; + else + return 15759; +} +BlockState Composter(); +unsigned char Level(BlockState Block); +} // namespace Composter +namespace Conduit +{ +constexpr BlockState Conduit() +{ + return 9650; +} +} // namespace Conduit +namespace Cornflower +{ +constexpr BlockState Cornflower() +{ + return 1422; +} +} // namespace Cornflower +namespace CrackedNetherBricks +{ +constexpr BlockState CrackedNetherBricks() +{ + return 17102; +} +} // namespace CrackedNetherBricks +namespace CrackedPolishedBlackstoneBricks +{ +constexpr BlockState CrackedPolishedBlackstoneBricks() +{ + return 16252; +} +} // namespace CrackedPolishedBlackstoneBricks +namespace CrackedStoneBricks +{ +constexpr BlockState CrackedStoneBricks() +{ + return 4497; +} +} // namespace CrackedStoneBricks +namespace CraftingTable +{ +constexpr BlockState CraftingTable() +{ + return 3356; +} +} // namespace CraftingTable +namespace CreeperHead +{ +constexpr BlockState CreeperHead(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6570; + else if (Rotation == 1) + return 6571; + else if (Rotation == 2) + return 6572; + else if (Rotation == 3) + return 6573; + else if (Rotation == 4) + return 6574; + else if (Rotation == 5) + return 6575; + else if (Rotation == 6) + return 6576; + else if (Rotation == 7) + return 6577; + else if (Rotation == 8) + return 6578; + else if (Rotation == 9) + return 6579; + else if (Rotation == 10) + return 6580; + else if (Rotation == 11) + return 6581; + else if (Rotation == 12) + return 6582; + else if (Rotation == 13) + return 6583; + else if (Rotation == 14) + return 6584; + else + return 6585; +} +BlockState CreeperHead(); +unsigned char Rotation(BlockState Block); +} // namespace CreeperHead +namespace CreeperWallHead +{ +constexpr BlockState CreeperWallHead(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6586; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6587; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6588; + else + return 6589; +} +BlockState CreeperWallHead(); +eBlockFace Facing(BlockState Block); +} // namespace CreeperWallHead +namespace CrimsonButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState CrimsonButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15479; + else + return 15480; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15481; + else + return 15482; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15483; + else + return 15484; + else if (Powered) + return 15485; + else + return 15486; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15487; + else + return 15488; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15489; + else + return 15490; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15491; + else + return 15492; + else if (Powered) + return 15493; + else + return 15494; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15495; + else + return 15496; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15497; + else + return 15498; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15499; + else + return 15500; + else if (Powered) + return 15501; + else + return 15502; +} +BlockState CrimsonButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace CrimsonButton +namespace CrimsonDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState CrimsonDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15527; + else + return 15528; + else if (Powered) + return 15529; + else + return 15530; + else if (Open) + if (Powered) + return 15531; + else + return 15532; + else if (Powered) + return 15533; + else + return 15534; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15535; + else + return 15536; + else if (Powered) + return 15537; + else + return 15538; + else if (Open) + if (Powered) + return 15539; + else + return 15540; + else if (Powered) + return 15541; + else + return 15542; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15543; + else + return 15544; + else if (Powered) + return 15545; + else + return 15546; + else if (Open) + if (Powered) + return 15547; + else + return 15548; + else if (Powered) + return 15549; + else + return 15550; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15551; + else + return 15552; + else if (Powered) + return 15553; + else + return 15554; + else if (Open) + if (Powered) + return 15555; + else + return 15556; + else if (Powered) + return 15557; + else + return 15558; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15559; + else + return 15560; + else if (Powered) + return 15561; + else + return 15562; + else if (Open) + if (Powered) + return 15563; + else + return 15564; + else if (Powered) + return 15565; + else + return 15566; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15567; + else + return 15568; + else if (Powered) + return 15569; + else + return 15570; + else if (Open) + if (Powered) + return 15571; + else + return 15572; + else if (Powered) + return 15573; + else + return 15574; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15575; + else + return 15576; + else if (Powered) + return 15577; + else + return 15578; + else if (Open) + if (Powered) + return 15579; + else + return 15580; + else if (Powered) + return 15581; + else + return 15582; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15583; + else + return 15584; + else if (Powered) + return 15585; + else + return 15586; + else if (Open) + if (Powered) + return 15587; + else + return 15588; + else if (Powered) + return 15589; + else + return 15590; +} +BlockState CrimsonDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace CrimsonDoor +namespace CrimsonFence +{ +constexpr BlockState CrimsonFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 15065; + else + return 15066; + else if (West) + return 15069; + else + return 15070; + else if (South) + if (West) + return 15073; + else + return 15074; + else if (West) + return 15077; + else + return 15078; + else if (North) + if (South) + if (West) + return 15081; + else + return 15082; + else if (West) + return 15085; + else + return 15086; + else if (South) + if (West) + return 15089; + else + return 15090; + else if (West) + return 15093; + else + return 15094; +} +BlockState CrimsonFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace CrimsonFence +namespace CrimsonFenceGate +{ +constexpr BlockState CrimsonFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 15255; + else + return 15256; + else if (Powered) + return 15257; + else + return 15258; + else if (Open) + if (Powered) + return 15259; + else + return 15260; + else if (Powered) + return 15261; + else + return 15262; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 15263; + else + return 15264; + else if (Powered) + return 15265; + else + return 15266; + else if (Open) + if (Powered) + return 15267; + else + return 15268; + else if (Powered) + return 15269; + else + return 15270; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 15271; + else + return 15272; + else if (Powered) + return 15273; + else + return 15274; + else if (Open) + if (Powered) + return 15275; + else + return 15276; + else if (Powered) + return 15277; + else + return 15278; + else if (InWall) + if (Open) + if (Powered) + return 15279; + else + return 15280; + else if (Powered) + return 15281; + else + return 15282; + else if (Open) + if (Powered) + return 15283; + else + return 15284; + else if (Powered) + return 15285; + else + return 15286; +} +BlockState CrimsonFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace CrimsonFenceGate +namespace CrimsonFungus +{ +constexpr BlockState CrimsonFungus() +{ + return 14988; +} +} // namespace CrimsonFungus +namespace CrimsonHyphae +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState CrimsonHyphae(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14981; + else if (Axis == Axis::Y) + return 14982; + else + return 14983; +} +BlockState CrimsonHyphae(); +enum Axis Axis(BlockState Block); +} // namespace CrimsonHyphae +namespace CrimsonNylium +{ +constexpr BlockState CrimsonNylium() +{ + return 14987; +} +} // namespace CrimsonNylium +namespace CrimsonPlanks +{ +constexpr BlockState CrimsonPlanks() +{ + return 15045; +} +} // namespace CrimsonPlanks +namespace CrimsonPressurePlate +{ +constexpr BlockState CrimsonPressurePlate(const bool Powered) +{ + if (Powered) + return 15059; + else + return 15060; +} +BlockState CrimsonPressurePlate(); +bool Powered(BlockState Block); +} // namespace CrimsonPressurePlate +namespace CrimsonRoots +{ +constexpr BlockState CrimsonRoots() +{ + return 15044; +} +} // namespace CrimsonRoots +namespace CrimsonSign +{ +constexpr BlockState CrimsonSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 15656; + else if (Rotation == 1) + return 15658; + else if (Rotation == 2) + return 15660; + else if (Rotation == 3) + return 15662; + else if (Rotation == 4) + return 15664; + else if (Rotation == 5) + return 15666; + else if (Rotation == 6) + return 15668; + else if (Rotation == 7) + return 15670; + else if (Rotation == 8) + return 15672; + else if (Rotation == 9) + return 15674; + else if (Rotation == 10) + return 15676; + else if (Rotation == 11) + return 15678; + else if (Rotation == 12) + return 15680; + else if (Rotation == 13) + return 15682; + else if (Rotation == 14) + return 15684; + else + return 15686; +} +BlockState CrimsonSign(); +unsigned char Rotation(BlockState Block); +} // namespace CrimsonSign +namespace CrimsonSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState CrimsonSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 15048; + else if (Type == Type::Bottom) + return 15050; + else + return 15052; +} +BlockState CrimsonSlab(); +enum Type Type(BlockState Block); +} // namespace CrimsonSlab +namespace CrimsonStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState CrimsonStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15320; + else if (Shape == Shape::InnerLeft) + return 15322; + else if (Shape == Shape::InnerRight) + return 15324; + else if (Shape == Shape::OuterLeft) + return 15326; + else + return 15328; + else if (Shape == Shape::Straight) + return 15330; + else if (Shape == Shape::InnerLeft) + return 15332; + else if (Shape == Shape::InnerRight) + return 15334; + else if (Shape == Shape::OuterLeft) + return 15336; + else + return 15338; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15340; + else if (Shape == Shape::InnerLeft) + return 15342; + else if (Shape == Shape::InnerRight) + return 15344; + else if (Shape == Shape::OuterLeft) + return 15346; + else + return 15348; + else if (Shape == Shape::Straight) + return 15350; + else if (Shape == Shape::InnerLeft) + return 15352; + else if (Shape == Shape::InnerRight) + return 15354; + else if (Shape == Shape::OuterLeft) + return 15356; + else + return 15358; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15360; + else if (Shape == Shape::InnerLeft) + return 15362; + else if (Shape == Shape::InnerRight) + return 15364; + else if (Shape == Shape::OuterLeft) + return 15366; + else + return 15368; + else if (Shape == Shape::Straight) + return 15370; + else if (Shape == Shape::InnerLeft) + return 15372; + else if (Shape == Shape::InnerRight) + return 15374; + else if (Shape == Shape::OuterLeft) + return 15376; + else + return 15378; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15380; + else if (Shape == Shape::InnerLeft) + return 15382; + else if (Shape == Shape::InnerRight) + return 15384; + else if (Shape == Shape::OuterLeft) + return 15386; + else + return 15388; + else if (Shape == Shape::Straight) + return 15390; + else if (Shape == Shape::InnerLeft) + return 15392; + else if (Shape == Shape::InnerRight) + return 15394; + else if (Shape == Shape::OuterLeft) + return 15396; + else + return 15398; +} +BlockState CrimsonStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace CrimsonStairs +namespace CrimsonStem +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState CrimsonStem(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14975; + else if (Axis == Axis::Y) + return 14976; + else + return 14977; +} +BlockState CrimsonStem(); +enum Axis Axis(BlockState Block); +} // namespace CrimsonStem +namespace CrimsonTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState CrimsonTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15128; + else + return 15130; + else if (Powered) + return 15132; + else + return 15134; + else if (Open) + if (Powered) + return 15136; + else + return 15138; + else if (Powered) + return 15140; + else + return 15142; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15144; + else + return 15146; + else if (Powered) + return 15148; + else + return 15150; + else if (Open) + if (Powered) + return 15152; + else + return 15154; + else if (Powered) + return 15156; + else + return 15158; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15160; + else + return 15162; + else if (Powered) + return 15164; + else + return 15166; + else if (Open) + if (Powered) + return 15168; + else + return 15170; + else if (Powered) + return 15172; + else + return 15174; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 15176; + else + return 15178; + else if (Powered) + return 15180; + else + return 15182; + else if (Open) + if (Powered) + return 15184; + else + return 15186; + else if (Powered) + return 15188; + else + return 15190; +} +BlockState CrimsonTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace CrimsonTrapdoor +namespace CrimsonWallSign +{ +constexpr BlockState CrimsonWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 15720; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 15722; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 15724; + else + return 15726; +} +BlockState CrimsonWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace CrimsonWallSign +namespace CryingObsidian +{ +constexpr BlockState CryingObsidian() +{ + return 15828; +} +} // namespace CryingObsidian +namespace CutRedSandstone +{ +constexpr BlockState CutRedSandstone() +{ + return 8219; +} +} // namespace CutRedSandstone +namespace CutRedSandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState CutRedSandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8403; + else if (Type == Type::Bottom) + return 8405; + else + return 8407; +} +BlockState CutRedSandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace CutRedSandstoneSlab +namespace CutSandstone +{ +constexpr BlockState CutSandstone() +{ + return 248; +} +} // namespace CutSandstone +namespace CutSandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState CutSandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8355; + else if (Type == Type::Bottom) + return 8357; + else + return 8359; +} +BlockState CutSandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace CutSandstoneSlab +namespace CyanBanner +{ +constexpr BlockState CyanBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8041; + else if (Rotation == 1) + return 8042; + else if (Rotation == 2) + return 8043; + else if (Rotation == 3) + return 8044; + else if (Rotation == 4) + return 8045; + else if (Rotation == 5) + return 8046; + else if (Rotation == 6) + return 8047; + else if (Rotation == 7) + return 8048; + else if (Rotation == 8) + return 8049; + else if (Rotation == 9) + return 8050; + else if (Rotation == 10) + return 8051; + else if (Rotation == 11) + return 8052; + else if (Rotation == 12) + return 8053; + else if (Rotation == 13) + return 8054; + else if (Rotation == 14) + return 8055; + else + return 8056; +} +BlockState CyanBanner(); +unsigned char Rotation(BlockState Block); +} // namespace CyanBanner +namespace CyanBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState CyanBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1193; + else + return 1194; + else if (Part == Part::Head) + return 1195; + else + return 1196; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1197; + else + return 1198; + else if (Part == Part::Head) + return 1199; + else + return 1200; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1201; + else + return 1202; + else if (Part == Part::Head) + return 1203; + else + return 1204; + else if (Occupied) + if (Part == Part::Head) + return 1205; + else + return 1206; + else if (Part == Part::Head) + return 1207; + else + return 1208; +} +BlockState CyanBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace CyanBed +namespace CyanCarpet +{ +constexpr BlockState CyanCarpet() +{ + return 7875; +} +} // namespace CyanCarpet +namespace CyanConcrete +{ +constexpr BlockState CyanConcrete() +{ + return 9447; +} +} // namespace CyanConcrete +namespace CyanConcretePowder +{ +constexpr BlockState CyanConcretePowder() +{ + return 9463; +} +} // namespace CyanConcretePowder +namespace CyanGlazedTerracotta +{ +constexpr BlockState CyanGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9410; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9411; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9412; + else + return 9413; +} +BlockState CyanGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace CyanGlazedTerracotta +namespace CyanShulkerBox +{ +constexpr BlockState CyanShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9332; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9333; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9334; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9335; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9336; + else + return 9337; +} +BlockState CyanShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace CyanShulkerBox +namespace CyanStainedGlass +{ +constexpr BlockState CyanStainedGlass() +{ + return 4104; +} +} // namespace CyanStainedGlass +namespace CyanStainedGlassPane +{ +constexpr BlockState CyanStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7153; + else + return 7154; + else if (West) + return 7157; + else + return 7158; + else if (South) + if (West) + return 7161; + else + return 7162; + else if (West) + return 7165; + else + return 7166; + else if (North) + if (South) + if (West) + return 7169; + else + return 7170; + else if (West) + return 7173; + else + return 7174; + else if (South) + if (West) + return 7177; + else + return 7178; + else if (West) + return 7181; + else + return 7182; +} +BlockState CyanStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace CyanStainedGlassPane +namespace CyanTerracotta +{ +constexpr BlockState CyanTerracotta() +{ + return 6856; +} +} // namespace CyanTerracotta +namespace CyanWallBanner +{ +constexpr BlockState CyanWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8189; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8190; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8191; + else + return 8192; +} +BlockState CyanWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace CyanWallBanner +namespace CyanWool +{ +constexpr BlockState CyanWool() +{ + return 1393; +} +} // namespace CyanWool +namespace DamagedAnvil +{ +constexpr BlockState DamagedAnvil(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6618; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6619; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6620; + else + return 6621; +} +BlockState DamagedAnvil(); +eBlockFace Facing(BlockState Block); +} // namespace DamagedAnvil +namespace Dandelion +{ +constexpr BlockState Dandelion() +{ + return 1412; +} +} // namespace Dandelion +namespace DarkOakButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState DarkOakButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6466; + else + return 6467; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6468; + else + return 6469; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6470; + else + return 6471; + else if (Powered) + return 6472; + else + return 6473; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6474; + else + return 6475; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6476; + else + return 6477; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6478; + else + return 6479; + else if (Powered) + return 6480; + else + return 6481; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6482; + else + return 6483; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6484; + else + return 6485; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6486; + else + return 6487; + else if (Powered) + return 6488; + else + return 6489; +} +BlockState DarkOakButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace DarkOakButton +namespace DarkOakDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState DarkOakDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8994; + else + return 8995; + else if (Powered) + return 8996; + else + return 8997; + else if (Open) + if (Powered) + return 8998; + else + return 8999; + else if (Powered) + return 9000; + else + return 9001; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9002; + else + return 9003; + else if (Powered) + return 9004; + else + return 9005; + else if (Open) + if (Powered) + return 9006; + else + return 9007; + else if (Powered) + return 9008; + else + return 9009; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9010; + else + return 9011; + else if (Powered) + return 9012; + else + return 9013; + else if (Open) + if (Powered) + return 9014; + else + return 9015; + else if (Powered) + return 9016; + else + return 9017; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9018; + else + return 9019; + else if (Powered) + return 9020; + else + return 9021; + else if (Open) + if (Powered) + return 9022; + else + return 9023; + else if (Powered) + return 9024; + else + return 9025; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9026; + else + return 9027; + else if (Powered) + return 9028; + else + return 9029; + else if (Open) + if (Powered) + return 9030; + else + return 9031; + else if (Powered) + return 9032; + else + return 9033; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9034; + else + return 9035; + else if (Powered) + return 9036; + else + return 9037; + else if (Open) + if (Powered) + return 9038; + else + return 9039; + else if (Powered) + return 9040; + else + return 9041; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9042; + else + return 9043; + else if (Powered) + return 9044; + else + return 9045; + else if (Open) + if (Powered) + return 9046; + else + return 9047; + else if (Powered) + return 9048; + else + return 9049; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 9050; + else + return 9051; + else if (Powered) + return 9052; + else + return 9053; + else if (Open) + if (Powered) + return 9054; + else + return 9055; + else if (Powered) + return 9056; + else + return 9057; +} +BlockState DarkOakDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace DarkOakDoor +namespace DarkOakFence +{ +constexpr BlockState DarkOakFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 8708; + else + return 8709; + else if (West) + return 8712; + else + return 8713; + else if (South) + if (West) + return 8716; + else + return 8717; + else if (West) + return 8720; + else + return 8721; + else if (North) + if (South) + if (West) + return 8724; + else + return 8725; + else if (West) + return 8728; + else + return 8729; + else if (South) + if (West) + return 8732; + else + return 8733; + else if (West) + return 8736; + else + return 8737; +} +BlockState DarkOakFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace DarkOakFence +namespace DarkOakFenceGate +{ +constexpr BlockState DarkOakFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 8546; + else + return 8547; + else if (Powered) + return 8548; + else + return 8549; + else if (Open) + if (Powered) + return 8550; + else + return 8551; + else if (Powered) + return 8552; + else + return 8553; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 8554; + else + return 8555; + else if (Powered) + return 8556; + else + return 8557; + else if (Open) + if (Powered) + return 8558; + else + return 8559; + else if (Powered) + return 8560; + else + return 8561; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 8562; + else + return 8563; + else if (Powered) + return 8564; + else + return 8565; + else if (Open) + if (Powered) + return 8566; + else + return 8567; + else if (Powered) + return 8568; + else + return 8569; + else if (InWall) + if (Open) + if (Powered) + return 8570; + else + return 8571; + else if (Powered) + return 8572; + else + return 8573; + else if (Open) + if (Powered) + return 8574; + else + return 8575; + else if (Powered) + return 8576; + else + return 8577; +} +BlockState DarkOakFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace DarkOakFenceGate +namespace DarkOakLeaves +{ +constexpr BlockState DarkOakLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 215; + else + return 216; + else if (Distance == 2) + if (Persistent) + return 217; + else + return 218; + else if (Distance == 3) + if (Persistent) + return 219; + else + return 220; + else if (Distance == 4) + if (Persistent) + return 221; + else + return 222; + else if (Distance == 5) + if (Persistent) + return 223; + else + return 224; + else if (Distance == 6) + if (Persistent) + return 225; + else + return 226; + else if (Persistent) + return 227; + else + return 228; +} +BlockState DarkOakLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace DarkOakLeaves +namespace DarkOakLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState DarkOakLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 88; + else if (Axis == Axis::Y) + return 89; + else + return 90; +} +BlockState DarkOakLog(); +enum Axis Axis(BlockState Block); +} // namespace DarkOakLog +namespace DarkOakPlanks +{ +constexpr BlockState DarkOakPlanks() +{ + return 20; +} +} // namespace DarkOakPlanks +namespace DarkOakPressurePlate +{ +constexpr BlockState DarkOakPressurePlate(const bool Powered) +{ + if (Powered) + return 3883; + else + return 3884; +} +BlockState DarkOakPressurePlate(); +bool Powered(BlockState Block); +} // namespace DarkOakPressurePlate +namespace DarkOakSapling +{ +constexpr BlockState DarkOakSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 31; + else + return 32; +} +BlockState DarkOakSapling(); +unsigned char Stage(BlockState Block); +} // namespace DarkOakSapling +namespace DarkOakSign +{ +constexpr BlockState DarkOakSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3542; + else if (Rotation == 1) + return 3544; + else if (Rotation == 2) + return 3546; + else if (Rotation == 3) + return 3548; + else if (Rotation == 4) + return 3550; + else if (Rotation == 5) + return 3552; + else if (Rotation == 6) + return 3554; + else if (Rotation == 7) + return 3556; + else if (Rotation == 8) + return 3558; + else if (Rotation == 9) + return 3560; + else if (Rotation == 10) + return 3562; + else if (Rotation == 11) + return 3564; + else if (Rotation == 12) + return 3566; + else if (Rotation == 13) + return 3568; + else if (Rotation == 14) + return 3570; + else + return 3572; +} +BlockState DarkOakSign(); +unsigned char Rotation(BlockState Block); +} // namespace DarkOakSign +namespace DarkOakSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState DarkOakSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8331; + else if (Type == Type::Bottom) + return 8333; + else + return 8335; +} +BlockState DarkOakSlab(); +enum Type Type(BlockState Block); +} // namespace DarkOakSlab +namespace DarkOakStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState DarkOakStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7456; + else if (Shape == Shape::InnerLeft) + return 7458; + else if (Shape == Shape::InnerRight) + return 7460; + else if (Shape == Shape::OuterLeft) + return 7462; + else + return 7464; + else if (Shape == Shape::Straight) + return 7466; + else if (Shape == Shape::InnerLeft) + return 7468; + else if (Shape == Shape::InnerRight) + return 7470; + else if (Shape == Shape::OuterLeft) + return 7472; + else + return 7474; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7476; + else if (Shape == Shape::InnerLeft) + return 7478; + else if (Shape == Shape::InnerRight) + return 7480; + else if (Shape == Shape::OuterLeft) + return 7482; + else + return 7484; + else if (Shape == Shape::Straight) + return 7486; + else if (Shape == Shape::InnerLeft) + return 7488; + else if (Shape == Shape::InnerRight) + return 7490; + else if (Shape == Shape::OuterLeft) + return 7492; + else + return 7494; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7496; + else if (Shape == Shape::InnerLeft) + return 7498; + else if (Shape == Shape::InnerRight) + return 7500; + else if (Shape == Shape::OuterLeft) + return 7502; + else + return 7504; + else if (Shape == Shape::Straight) + return 7506; + else if (Shape == Shape::InnerLeft) + return 7508; + else if (Shape == Shape::InnerRight) + return 7510; + else if (Shape == Shape::OuterLeft) + return 7512; + else + return 7514; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7516; + else if (Shape == Shape::InnerLeft) + return 7518; + else if (Shape == Shape::InnerRight) + return 7520; + else if (Shape == Shape::OuterLeft) + return 7522; + else + return 7524; + else if (Shape == Shape::Straight) + return 7526; + else if (Shape == Shape::InnerLeft) + return 7528; + else if (Shape == Shape::InnerRight) + return 7530; + else if (Shape == Shape::OuterLeft) + return 7532; + else + return 7534; +} +BlockState DarkOakStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace DarkOakStairs +namespace DarkOakTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState DarkOakTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4432; + else + return 4434; + else if (Powered) + return 4436; + else + return 4438; + else if (Open) + if (Powered) + return 4440; + else + return 4442; + else if (Powered) + return 4444; + else + return 4446; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4448; + else + return 4450; + else if (Powered) + return 4452; + else + return 4454; + else if (Open) + if (Powered) + return 4456; + else + return 4458; + else if (Powered) + return 4460; + else + return 4462; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4464; + else + return 4466; + else if (Powered) + return 4468; + else + return 4470; + else if (Open) + if (Powered) + return 4472; + else + return 4474; + else if (Powered) + return 4476; + else + return 4478; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4480; + else + return 4482; + else if (Powered) + return 4484; + else + return 4486; + else if (Open) + if (Powered) + return 4488; + else + return 4490; + else if (Powered) + return 4492; + else + return 4494; +} +BlockState DarkOakTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace DarkOakTrapdoor +namespace DarkOakWallSign +{ +constexpr BlockState DarkOakWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3776; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3778; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3780; + else + return 3782; +} +BlockState DarkOakWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace DarkOakWallSign +namespace DarkOakWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState DarkOakWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 124; + else if (Axis == Axis::Y) + return 125; + else + return 126; +} +BlockState DarkOakWood(); +enum Axis Axis(BlockState Block); +} // namespace DarkOakWood +namespace DarkPrismarine +{ +constexpr BlockState DarkPrismarine() +{ + return 7603; +} +} // namespace DarkPrismarine +namespace DarkPrismarineSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState DarkPrismarineSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 7857; + else if (Type == Type::Bottom) + return 7859; + else + return 7861; +} +BlockState DarkPrismarineSlab(); +enum Type Type(BlockState Block); +} // namespace DarkPrismarineSlab +namespace DarkPrismarineStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState DarkPrismarineStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7765; + else if (Shape == Shape::InnerLeft) + return 7767; + else if (Shape == Shape::InnerRight) + return 7769; + else if (Shape == Shape::OuterLeft) + return 7771; + else + return 7773; + else if (Shape == Shape::Straight) + return 7775; + else if (Shape == Shape::InnerLeft) + return 7777; + else if (Shape == Shape::InnerRight) + return 7779; + else if (Shape == Shape::OuterLeft) + return 7781; + else + return 7783; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7785; + else if (Shape == Shape::InnerLeft) + return 7787; + else if (Shape == Shape::InnerRight) + return 7789; + else if (Shape == Shape::OuterLeft) + return 7791; + else + return 7793; + else if (Shape == Shape::Straight) + return 7795; + else if (Shape == Shape::InnerLeft) + return 7797; + else if (Shape == Shape::InnerRight) + return 7799; + else if (Shape == Shape::OuterLeft) + return 7801; + else + return 7803; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7805; + else if (Shape == Shape::InnerLeft) + return 7807; + else if (Shape == Shape::InnerRight) + return 7809; + else if (Shape == Shape::OuterLeft) + return 7811; + else + return 7813; + else if (Shape == Shape::Straight) + return 7815; + else if (Shape == Shape::InnerLeft) + return 7817; + else if (Shape == Shape::InnerRight) + return 7819; + else if (Shape == Shape::OuterLeft) + return 7821; + else + return 7823; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7825; + else if (Shape == Shape::InnerLeft) + return 7827; + else if (Shape == Shape::InnerRight) + return 7829; + else if (Shape == Shape::OuterLeft) + return 7831; + else + return 7833; + else if (Shape == Shape::Straight) + return 7835; + else if (Shape == Shape::InnerLeft) + return 7837; + else if (Shape == Shape::InnerRight) + return 7839; + else if (Shape == Shape::OuterLeft) + return 7841; + else + return 7843; +} +BlockState DarkPrismarineStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace DarkPrismarineStairs +namespace DaylightDetector +{ +constexpr BlockState DaylightDetector(const bool Inverted, const unsigned char Power) +{ + if (Inverted) + if (Power == 0) + return 6694; + else if (Power == 1) + return 6695; + else if (Power == 2) + return 6696; + else if (Power == 3) + return 6697; + else if (Power == 4) + return 6698; + else if (Power == 5) + return 6699; + else if (Power == 6) + return 6700; + else if (Power == 7) + return 6701; + else if (Power == 8) + return 6702; + else if (Power == 9) + return 6703; + else if (Power == 10) + return 6704; + else if (Power == 11) + return 6705; + else if (Power == 12) + return 6706; + else if (Power == 13) + return 6707; + else if (Power == 14) + return 6708; + else + return 6709; + else if (Power == 0) + return 6710; + else if (Power == 1) + return 6711; + else if (Power == 2) + return 6712; + else if (Power == 3) + return 6713; + else if (Power == 4) + return 6714; + else if (Power == 5) + return 6715; + else if (Power == 6) + return 6716; + else if (Power == 7) + return 6717; + else if (Power == 8) + return 6718; + else if (Power == 9) + return 6719; + else if (Power == 10) + return 6720; + else if (Power == 11) + return 6721; + else if (Power == 12) + return 6722; + else if (Power == 13) + return 6723; + else if (Power == 14) + return 6724; + else + return 6725; +} +BlockState DaylightDetector(); +bool Inverted(BlockState Block); +unsigned char Power(BlockState Block); +} // namespace DaylightDetector +namespace DeadBrainCoral +{ +constexpr BlockState DeadBrainCoral() +{ + return 9523; +} +} // namespace DeadBrainCoral +namespace DeadBrainCoralBlock +{ +constexpr BlockState DeadBrainCoralBlock() +{ + return 9511; +} +} // namespace DeadBrainCoralBlock +namespace DeadBrainCoralFan +{ +constexpr BlockState DeadBrainCoralFan() +{ + return 9543; +} +} // namespace DeadBrainCoralFan +namespace DeadBrainCoralWallFan +{ +constexpr BlockState DeadBrainCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9569; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9571; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9573; + else + return 9575; +} +BlockState DeadBrainCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace DeadBrainCoralWallFan +namespace DeadBubbleCoral +{ +constexpr BlockState DeadBubbleCoral() +{ + return 9525; +} +} // namespace DeadBubbleCoral +namespace DeadBubbleCoralBlock +{ +constexpr BlockState DeadBubbleCoralBlock() +{ + return 9512; +} +} // namespace DeadBubbleCoralBlock +namespace DeadBubbleCoralFan +{ +constexpr BlockState DeadBubbleCoralFan() +{ + return 9545; +} +} // namespace DeadBubbleCoralFan +namespace DeadBubbleCoralWallFan +{ +constexpr BlockState DeadBubbleCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9577; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9579; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9581; + else + return 9583; +} +BlockState DeadBubbleCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace DeadBubbleCoralWallFan +namespace DeadBush +{ +constexpr BlockState DeadBush() +{ + return 1344; +} +} // namespace DeadBush +namespace DeadFireCoral +{ +constexpr BlockState DeadFireCoral() +{ + return 9527; +} +} // namespace DeadFireCoral +namespace DeadFireCoralBlock +{ +constexpr BlockState DeadFireCoralBlock() +{ + return 9513; +} +} // namespace DeadFireCoralBlock +namespace DeadFireCoralFan +{ +constexpr BlockState DeadFireCoralFan() +{ + return 9547; +} +} // namespace DeadFireCoralFan +namespace DeadFireCoralWallFan +{ +constexpr BlockState DeadFireCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9585; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9587; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9589; + else + return 9591; +} +BlockState DeadFireCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace DeadFireCoralWallFan +namespace DeadHornCoral +{ +constexpr BlockState DeadHornCoral() +{ + return 9529; +} +} // namespace DeadHornCoral +namespace DeadHornCoralBlock +{ +constexpr BlockState DeadHornCoralBlock() +{ + return 9514; +} +} // namespace DeadHornCoralBlock +namespace DeadHornCoralFan +{ +constexpr BlockState DeadHornCoralFan() +{ + return 9549; +} +} // namespace DeadHornCoralFan +namespace DeadHornCoralWallFan +{ +constexpr BlockState DeadHornCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9593; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9595; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9597; + else + return 9599; +} +BlockState DeadHornCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace DeadHornCoralWallFan +namespace DeadTubeCoral +{ +constexpr BlockState DeadTubeCoral() +{ + return 9521; +} +} // namespace DeadTubeCoral +namespace DeadTubeCoralBlock +{ +constexpr BlockState DeadTubeCoralBlock() +{ + return 9510; +} +} // namespace DeadTubeCoralBlock +namespace DeadTubeCoralFan +{ +constexpr BlockState DeadTubeCoralFan() +{ + return 9541; +} +} // namespace DeadTubeCoralFan +namespace DeadTubeCoralWallFan +{ +constexpr BlockState DeadTubeCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9561; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9563; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9565; + else + return 9567; +} +BlockState DeadTubeCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace DeadTubeCoralWallFan +namespace DetectorRail +{ +enum class Shape +{ + NorthSouth, + EastWest, + AscendingEast, + AscendingWest, + AscendingNorth, + AscendingSouth +}; +constexpr BlockState DetectorRail(const bool Powered, const enum Shape Shape) +{ + if (Powered) + if (Shape == Shape::NorthSouth) + return 1317; + else if (Shape == Shape::EastWest) + return 1318; + else if (Shape == Shape::AscendingEast) + return 1319; + else if (Shape == Shape::AscendingWest) + return 1320; + else if (Shape == Shape::AscendingNorth) + return 1321; + else + return 1322; + else if (Shape == Shape::NorthSouth) + return 1323; + else if (Shape == Shape::EastWest) + return 1324; + else if (Shape == Shape::AscendingEast) + return 1325; + else if (Shape == Shape::AscendingWest) + return 1326; + else if (Shape == Shape::AscendingNorth) + return 1327; + else + return 1328; +} +BlockState DetectorRail(); +bool Powered(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace DetectorRail +namespace DiamondBlock +{ +constexpr BlockState DiamondBlock() +{ + return 3355; +} +} // namespace DiamondBlock +namespace DiamondOre +{ +constexpr BlockState DiamondOre() +{ + return 3354; +} +} // namespace DiamondOre +namespace Diorite +{ +constexpr BlockState Diorite() +{ + return 4; +} +} // namespace Diorite +namespace DioriteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState DioriteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10862; + else if (Type == Type::Bottom) + return 10864; + else + return 10866; +} +BlockState DioriteSlab(); +enum Type Type(BlockState Block); +} // namespace DioriteSlab +namespace DioriteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState DioriteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10710; + else if (Shape == Shape::InnerLeft) + return 10712; + else if (Shape == Shape::InnerRight) + return 10714; + else if (Shape == Shape::OuterLeft) + return 10716; + else + return 10718; + else if (Shape == Shape::Straight) + return 10720; + else if (Shape == Shape::InnerLeft) + return 10722; + else if (Shape == Shape::InnerRight) + return 10724; + else if (Shape == Shape::OuterLeft) + return 10726; + else + return 10728; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10730; + else if (Shape == Shape::InnerLeft) + return 10732; + else if (Shape == Shape::InnerRight) + return 10734; + else if (Shape == Shape::OuterLeft) + return 10736; + else + return 10738; + else if (Shape == Shape::Straight) + return 10740; + else if (Shape == Shape::InnerLeft) + return 10742; + else if (Shape == Shape::InnerRight) + return 10744; + else if (Shape == Shape::OuterLeft) + return 10746; + else + return 10748; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10750; + else if (Shape == Shape::InnerLeft) + return 10752; + else if (Shape == Shape::InnerRight) + return 10754; + else if (Shape == Shape::OuterLeft) + return 10756; + else + return 10758; + else if (Shape == Shape::Straight) + return 10760; + else if (Shape == Shape::InnerLeft) + return 10762; + else if (Shape == Shape::InnerRight) + return 10764; + else if (Shape == Shape::OuterLeft) + return 10766; + else + return 10768; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10770; + else if (Shape == Shape::InnerLeft) + return 10772; + else if (Shape == Shape::InnerRight) + return 10774; + else if (Shape == Shape::OuterLeft) + return 10776; + else + return 10778; + else if (Shape == Shape::Straight) + return 10780; + else if (Shape == Shape::InnerLeft) + return 10782; + else if (Shape == Shape::InnerRight) + return 10784; + else if (Shape == Shape::OuterLeft) + return 10786; + else + return 10788; +} +BlockState DioriteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace DioriteStairs +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 BlockState DioriteWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14434; + else if (West == West::Low) + return 14435; + else + return 14436; + else if (West == West::None) + return 14440; + else if (West == West::Low) + return 14441; + else + return 14442; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14446; + else if (West == West::Low) + return 14447; + else + return 14448; + else if (West == West::None) + return 14452; + else if (West == West::Low) + return 14453; + else + return 14454; + else if (Up) + if (West == West::None) + return 14458; + else if (West == West::Low) + return 14459; + else + return 14460; + else if (West == West::None) + return 14464; + else if (West == West::Low) + return 14465; + else + return 14466; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14470; + else if (West == West::Low) + return 14471; + else + return 14472; + else if (West == West::None) + return 14476; + else if (West == West::Low) + return 14477; + else + return 14478; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14482; + else if (West == West::Low) + return 14483; + else + return 14484; + else if (West == West::None) + return 14488; + else if (West == West::Low) + return 14489; + else + return 14490; + else if (Up) + if (West == West::None) + return 14494; + else if (West == West::Low) + return 14495; + else + return 14496; + else if (West == West::None) + return 14500; + else if (West == West::Low) + return 14501; + else + return 14502; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14506; + else if (West == West::Low) + return 14507; + else + return 14508; + else if (West == West::None) + return 14512; + else if (West == West::Low) + return 14513; + else + return 14514; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14518; + else if (West == West::Low) + return 14519; + else + return 14520; + else if (West == West::None) + return 14524; + else if (West == West::Low) + return 14525; + else + return 14526; + else if (Up) + if (West == West::None) + return 14530; + else if (West == West::Low) + return 14531; + else + return 14532; + else if (West == West::None) + return 14536; + else if (West == West::Low) + return 14537; + else + return 14538; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14542; + else if (West == West::Low) + return 14543; + else + return 14544; + else if (West == West::None) + return 14548; + else if (West == West::Low) + return 14549; + else + return 14550; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14554; + else if (West == West::Low) + return 14555; + else + return 14556; + else if (West == West::None) + return 14560; + else if (West == West::Low) + return 14561; + else + return 14562; + else if (Up) + if (West == West::None) + return 14566; + else if (West == West::Low) + return 14567; + else + return 14568; + else if (West == West::None) + return 14572; + else if (West == West::Low) + return 14573; + else + return 14574; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14578; + else if (West == West::Low) + return 14579; + else + return 14580; + else if (West == West::None) + return 14584; + else if (West == West::Low) + return 14585; + else + return 14586; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14590; + else if (West == West::Low) + return 14591; + else + return 14592; + else if (West == West::None) + return 14596; + else if (West == West::Low) + return 14597; + else + return 14598; + else if (Up) + if (West == West::None) + return 14602; + else if (West == West::Low) + return 14603; + else + return 14604; + else if (West == West::None) + return 14608; + else if (West == West::Low) + return 14609; + else + return 14610; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14614; + else if (West == West::Low) + return 14615; + else + return 14616; + else if (West == West::None) + return 14620; + else if (West == West::Low) + return 14621; + else + return 14622; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14626; + else if (West == West::Low) + return 14627; + else + return 14628; + else if (West == West::None) + return 14632; + else if (West == West::Low) + return 14633; + else + return 14634; + else if (Up) + if (West == West::None) + return 14638; + else if (West == West::Low) + return 14639; + else + return 14640; + else if (West == West::None) + return 14644; + else if (West == West::Low) + return 14645; + else + return 14646; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14650; + else if (West == West::Low) + return 14651; + else + return 14652; + else if (West == West::None) + return 14656; + else if (West == West::Low) + return 14657; + else + return 14658; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14662; + else if (West == West::Low) + return 14663; + else + return 14664; + else if (West == West::None) + return 14668; + else if (West == West::Low) + return 14669; + else + return 14670; + else if (Up) + if (West == West::None) + return 14674; + else if (West == West::Low) + return 14675; + else + return 14676; + else if (West == West::None) + return 14680; + else if (West == West::Low) + return 14681; + else + return 14682; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14686; + else if (West == West::Low) + return 14687; + else + return 14688; + else if (West == West::None) + return 14692; + else if (West == West::Low) + return 14693; + else + return 14694; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14698; + else if (West == West::Low) + return 14699; + else + return 14700; + else if (West == West::None) + return 14704; + else if (West == West::Low) + return 14705; + else + return 14706; + else if (Up) + if (West == West::None) + return 14710; + else if (West == West::Low) + return 14711; + else + return 14712; + else if (West == West::None) + return 14716; + else if (West == West::Low) + return 14717; + else + return 14718; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14722; + else if (West == West::Low) + return 14723; + else + return 14724; + else if (West == West::None) + return 14728; + else if (West == West::Low) + return 14729; + else + return 14730; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14734; + else if (West == West::Low) + return 14735; + else + return 14736; + else if (West == West::None) + return 14740; + else if (West == West::Low) + return 14741; + else + return 14742; + else if (Up) + if (West == West::None) + return 14746; + else if (West == West::Low) + return 14747; + else + return 14748; + else if (West == West::None) + return 14752; + else if (West == West::Low) + return 14753; + else + return 14754; +} +BlockState DioriteWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace DioriteWall +namespace Dirt +{ +constexpr BlockState Dirt() +{ + return 10; +} +} // namespace Dirt +namespace Dispenser +{ +constexpr BlockState Dispenser(const eBlockFace Facing, const bool Triggered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Triggered) + return 234; + else + return 235; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Triggered) + return 236; + else + return 237; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Triggered) + return 238; + else + return 239; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Triggered) + return 240; + else + return 241; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Triggered) + return 242; + else + return 243; + else if (Triggered) + return 244; + else + return 245; +} +BlockState Dispenser(); +eBlockFace Facing(BlockState Block); +bool Triggered(BlockState Block); +} // namespace Dispenser +namespace DragonEgg +{ +constexpr BlockState DragonEgg() +{ + return 5155; +} +} // namespace DragonEgg +namespace DragonHead +{ +constexpr BlockState DragonHead(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6590; + else if (Rotation == 1) + return 6591; + else if (Rotation == 2) + return 6592; + else if (Rotation == 3) + return 6593; + else if (Rotation == 4) + return 6594; + else if (Rotation == 5) + return 6595; + else if (Rotation == 6) + return 6596; + else if (Rotation == 7) + return 6597; + else if (Rotation == 8) + return 6598; + else if (Rotation == 9) + return 6599; + else if (Rotation == 10) + return 6600; + else if (Rotation == 11) + return 6601; + else if (Rotation == 12) + return 6602; + else if (Rotation == 13) + return 6603; + else if (Rotation == 14) + return 6604; + else + return 6605; +} +BlockState DragonHead(); +unsigned char Rotation(BlockState Block); +} // namespace DragonHead +namespace DragonWallHead +{ +constexpr BlockState DragonWallHead(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6606; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6607; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6608; + else + return 6609; +} +BlockState DragonWallHead(); +eBlockFace Facing(BlockState Block); +} // namespace DragonWallHead +namespace DriedKelpBlock +{ +constexpr BlockState DriedKelpBlock() +{ + return 9497; +} +} // namespace DriedKelpBlock +namespace Dropper +{ +constexpr BlockState Dropper(const eBlockFace Facing, const bool Triggered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Triggered) + return 6835; + else + return 6836; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Triggered) + return 6837; + else + return 6838; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Triggered) + return 6839; + else + return 6840; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Triggered) + return 6841; + else + return 6842; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Triggered) + return 6843; + else + return 6844; + else if (Triggered) + return 6845; + else + return 6846; +} +BlockState Dropper(); +eBlockFace Facing(BlockState Block); +bool Triggered(BlockState Block); +} // namespace Dropper +namespace EmeraldBlock +{ +constexpr BlockState EmeraldBlock() +{ + return 5403; +} +} // namespace EmeraldBlock +namespace EmeraldOre +{ +constexpr BlockState EmeraldOre() +{ + return 5250; +} +} // namespace EmeraldOre +namespace EnchantingTable +{ +constexpr BlockState EnchantingTable() +{ + return 5132; +} +} // namespace EnchantingTable +namespace EndGateway +{ +constexpr BlockState EndGateway() +{ + return 9224; +} +} // namespace EndGateway +namespace EndPortal +{ +constexpr BlockState EndPortal() +{ + return 5145; +} +} // namespace EndPortal +namespace EndPortalFrame +{ +constexpr BlockState EndPortalFrame(const bool Eye, const eBlockFace Facing) +{ + if (Eye) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5146; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5147; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5148; + else + return 5149; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5150; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5151; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5152; + else + return 5153; +} +BlockState EndPortalFrame(); +bool Eye(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace EndPortalFrame +namespace EndRod +{ +constexpr BlockState EndRod(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9058; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9059; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9060; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9061; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9062; + else + return 9063; +} +BlockState EndRod(); +eBlockFace Facing(BlockState Block); +} // namespace EndRod +namespace EndStone +{ +constexpr BlockState EndStone() +{ + return 5154; +} +} // namespace EndStone +namespace EndStoneBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState EndStoneBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10820; + else if (Type == Type::Bottom) + return 10822; + else + return 10824; +} +BlockState EndStoneBrickSlab(); +enum Type Type(BlockState Block); +} // namespace EndStoneBrickSlab +namespace EndStoneBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState EndStoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10070; + else if (Shape == Shape::InnerLeft) + return 10072; + else if (Shape == Shape::InnerRight) + return 10074; + else if (Shape == Shape::OuterLeft) + return 10076; + else + return 10078; + else if (Shape == Shape::Straight) + return 10080; + else if (Shape == Shape::InnerLeft) + return 10082; + else if (Shape == Shape::InnerRight) + return 10084; + else if (Shape == Shape::OuterLeft) + return 10086; + else + return 10088; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10090; + else if (Shape == Shape::InnerLeft) + return 10092; + else if (Shape == Shape::InnerRight) + return 10094; + else if (Shape == Shape::OuterLeft) + return 10096; + else + return 10098; + else if (Shape == Shape::Straight) + return 10100; + else if (Shape == Shape::InnerLeft) + return 10102; + else if (Shape == Shape::InnerRight) + return 10104; + else if (Shape == Shape::OuterLeft) + return 10106; + else + return 10108; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10110; + else if (Shape == Shape::InnerLeft) + return 10112; + else if (Shape == Shape::InnerRight) + return 10114; + else if (Shape == Shape::OuterLeft) + return 10116; + else + return 10118; + else if (Shape == Shape::Straight) + return 10120; + else if (Shape == Shape::InnerLeft) + return 10122; + else if (Shape == Shape::InnerRight) + return 10124; + else if (Shape == Shape::OuterLeft) + return 10126; + else + return 10128; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10130; + else if (Shape == Shape::InnerLeft) + return 10132; + else if (Shape == Shape::InnerRight) + return 10134; + else if (Shape == Shape::OuterLeft) + return 10136; + else + return 10138; + else if (Shape == Shape::Straight) + return 10140; + else if (Shape == Shape::InnerLeft) + return 10142; + else if (Shape == Shape::InnerRight) + return 10144; + else if (Shape == Shape::OuterLeft) + return 10146; + else + return 10148; +} +BlockState EndStoneBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace EndStoneBrickStairs +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 BlockState EndStoneBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14110; + else if (West == West::Low) + return 14111; + else + return 14112; + else if (West == West::None) + return 14116; + else if (West == West::Low) + return 14117; + else + return 14118; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14122; + else if (West == West::Low) + return 14123; + else + return 14124; + else if (West == West::None) + return 14128; + else if (West == West::Low) + return 14129; + else + return 14130; + else if (Up) + if (West == West::None) + return 14134; + else if (West == West::Low) + return 14135; + else + return 14136; + else if (West == West::None) + return 14140; + else if (West == West::Low) + return 14141; + else + return 14142; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14146; + else if (West == West::Low) + return 14147; + else + return 14148; + else if (West == West::None) + return 14152; + else if (West == West::Low) + return 14153; + else + return 14154; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14158; + else if (West == West::Low) + return 14159; + else + return 14160; + else if (West == West::None) + return 14164; + else if (West == West::Low) + return 14165; + else + return 14166; + else if (Up) + if (West == West::None) + return 14170; + else if (West == West::Low) + return 14171; + else + return 14172; + else if (West == West::None) + return 14176; + else if (West == West::Low) + return 14177; + else + return 14178; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14182; + else if (West == West::Low) + return 14183; + else + return 14184; + else if (West == West::None) + return 14188; + else if (West == West::Low) + return 14189; + else + return 14190; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14194; + else if (West == West::Low) + return 14195; + else + return 14196; + else if (West == West::None) + return 14200; + else if (West == West::Low) + return 14201; + else + return 14202; + else if (Up) + if (West == West::None) + return 14206; + else if (West == West::Low) + return 14207; + else + return 14208; + else if (West == West::None) + return 14212; + else if (West == West::Low) + return 14213; + else + return 14214; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14218; + else if (West == West::Low) + return 14219; + else + return 14220; + else if (West == West::None) + return 14224; + else if (West == West::Low) + return 14225; + else + return 14226; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14230; + else if (West == West::Low) + return 14231; + else + return 14232; + else if (West == West::None) + return 14236; + else if (West == West::Low) + return 14237; + else + return 14238; + else if (Up) + if (West == West::None) + return 14242; + else if (West == West::Low) + return 14243; + else + return 14244; + else if (West == West::None) + return 14248; + else if (West == West::Low) + return 14249; + else + return 14250; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14254; + else if (West == West::Low) + return 14255; + else + return 14256; + else if (West == West::None) + return 14260; + else if (West == West::Low) + return 14261; + else + return 14262; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14266; + else if (West == West::Low) + return 14267; + else + return 14268; + else if (West == West::None) + return 14272; + else if (West == West::Low) + return 14273; + else + return 14274; + else if (Up) + if (West == West::None) + return 14278; + else if (West == West::Low) + return 14279; + else + return 14280; + else if (West == West::None) + return 14284; + else if (West == West::Low) + return 14285; + else + return 14286; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14290; + else if (West == West::Low) + return 14291; + else + return 14292; + else if (West == West::None) + return 14296; + else if (West == West::Low) + return 14297; + else + return 14298; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14302; + else if (West == West::Low) + return 14303; + else + return 14304; + else if (West == West::None) + return 14308; + else if (West == West::Low) + return 14309; + else + return 14310; + else if (Up) + if (West == West::None) + return 14314; + else if (West == West::Low) + return 14315; + else + return 14316; + else if (West == West::None) + return 14320; + else if (West == West::Low) + return 14321; + else + return 14322; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14326; + else if (West == West::Low) + return 14327; + else + return 14328; + else if (West == West::None) + return 14332; + else if (West == West::Low) + return 14333; + else + return 14334; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14338; + else if (West == West::Low) + return 14339; + else + return 14340; + else if (West == West::None) + return 14344; + else if (West == West::Low) + return 14345; + else + return 14346; + else if (Up) + if (West == West::None) + return 14350; + else if (West == West::Low) + return 14351; + else + return 14352; + else if (West == West::None) + return 14356; + else if (West == West::Low) + return 14357; + else + return 14358; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14362; + else if (West == West::Low) + return 14363; + else + return 14364; + else if (West == West::None) + return 14368; + else if (West == West::Low) + return 14369; + else + return 14370; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14374; + else if (West == West::Low) + return 14375; + else + return 14376; + else if (West == West::None) + return 14380; + else if (West == West::Low) + return 14381; + else + return 14382; + else if (Up) + if (West == West::None) + return 14386; + else if (West == West::Low) + return 14387; + else + return 14388; + else if (West == West::None) + return 14392; + else if (West == West::Low) + return 14393; + else + return 14394; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14398; + else if (West == West::Low) + return 14399; + else + return 14400; + else if (West == West::None) + return 14404; + else if (West == West::Low) + return 14405; + else + return 14406; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14410; + else if (West == West::Low) + return 14411; + else + return 14412; + else if (West == West::None) + return 14416; + else if (West == West::Low) + return 14417; + else + return 14418; + else if (Up) + if (West == West::None) + return 14422; + else if (West == West::Low) + return 14423; + else + return 14424; + else if (West == West::None) + return 14428; + else if (West == West::Low) + return 14429; + else + return 14430; +} +BlockState EndStoneBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace EndStoneBrickWall +namespace EndStoneBricks +{ +constexpr BlockState EndStoneBricks() +{ + return 9218; +} +} // namespace EndStoneBricks +namespace EnderChest +{ +constexpr BlockState EnderChest(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 5252; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 5254; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 5256; + else + return 5258; +} +BlockState EnderChest(); +eBlockFace Facing(BlockState Block); +} // namespace EnderChest +namespace Farmland +{ +constexpr BlockState Farmland(const unsigned char Moisture) +{ + if (Moisture == 0) + return 3365; + else if (Moisture == 1) + return 3366; + else if (Moisture == 2) + return 3367; + else if (Moisture == 3) + return 3368; + else if (Moisture == 4) + return 3369; + else if (Moisture == 5) + return 3370; + else if (Moisture == 6) + return 3371; + else + return 3372; +} +BlockState Farmland(); +unsigned char Moisture(BlockState Block); +} // namespace Farmland +namespace Fern +{ +constexpr BlockState Fern() +{ + return 1343; +} +} // namespace Fern +namespace Fire +{ +constexpr BlockState Fire( + const unsigned char Age, + const bool East, + const bool North, + const bool South, + const bool Up, + const bool West +) +{ + if (Age == 0) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1440; + else + return 1441; + else if (West) + return 1442; + else + return 1443; + else if (Up) + if (West) + return 1444; + else + return 1445; + else if (West) + return 1446; + else + return 1447; + else if (South) + if (Up) + if (West) + return 1448; + else + return 1449; + else if (West) + return 1450; + else + return 1451; + else if (Up) + if (West) + return 1452; + else + return 1453; + else if (West) + return 1454; + else + return 1455; + else if (North) + if (South) + if (Up) + if (West) + return 1456; + else + return 1457; + else if (West) + return 1458; + else + return 1459; + else if (Up) + if (West) + return 1460; + else + return 1461; + else if (West) + return 1462; + else + return 1463; + else if (South) + if (Up) + if (West) + return 1464; + else + return 1465; + else if (West) + return 1466; + else + return 1467; + else if (Up) + if (West) + return 1468; + else + return 1469; + else if (West) + return 1470; + else + return 1471; + else if (Age == 1) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1472; + else + return 1473; + else if (West) + return 1474; + else + return 1475; + else if (Up) + if (West) + return 1476; + else + return 1477; + else if (West) + return 1478; + else + return 1479; + else if (South) + if (Up) + if (West) + return 1480; + else + return 1481; + else if (West) + return 1482; + else + return 1483; + else if (Up) + if (West) + return 1484; + else + return 1485; + else if (West) + return 1486; + else + return 1487; + else if (North) + if (South) + if (Up) + if (West) + return 1488; + else + return 1489; + else if (West) + return 1490; + else + return 1491; + else if (Up) + if (West) + return 1492; + else + return 1493; + else if (West) + return 1494; + else + return 1495; + else if (South) + if (Up) + if (West) + return 1496; + else + return 1497; + else if (West) + return 1498; + else + return 1499; + else if (Up) + if (West) + return 1500; + else + return 1501; + else if (West) + return 1502; + else + return 1503; + else if (Age == 2) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1504; + else + return 1505; + else if (West) + return 1506; + else + return 1507; + else if (Up) + if (West) + return 1508; + else + return 1509; + else if (West) + return 1510; + else + return 1511; + else if (South) + if (Up) + if (West) + return 1512; + else + return 1513; + else if (West) + return 1514; + else + return 1515; + else if (Up) + if (West) + return 1516; + else + return 1517; + else if (West) + return 1518; + else + return 1519; + else if (North) + if (South) + if (Up) + if (West) + return 1520; + else + return 1521; + else if (West) + return 1522; + else + return 1523; + else if (Up) + if (West) + return 1524; + else + return 1525; + else if (West) + return 1526; + else + return 1527; + else if (South) + if (Up) + if (West) + return 1528; + else + return 1529; + else if (West) + return 1530; + else + return 1531; + else if (Up) + if (West) + return 1532; + else + return 1533; + else if (West) + return 1534; + else + return 1535; + else if (Age == 3) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1536; + else + return 1537; + else if (West) + return 1538; + else + return 1539; + else if (Up) + if (West) + return 1540; + else + return 1541; + else if (West) + return 1542; + else + return 1543; + else if (South) + if (Up) + if (West) + return 1544; + else + return 1545; + else if (West) + return 1546; + else + return 1547; + else if (Up) + if (West) + return 1548; + else + return 1549; + else if (West) + return 1550; + else + return 1551; + else if (North) + if (South) + if (Up) + if (West) + return 1552; + else + return 1553; + else if (West) + return 1554; + else + return 1555; + else if (Up) + if (West) + return 1556; + else + return 1557; + else if (West) + return 1558; + else + return 1559; + else if (South) + if (Up) + if (West) + return 1560; + else + return 1561; + else if (West) + return 1562; + else + return 1563; + else if (Up) + if (West) + return 1564; + else + return 1565; + else if (West) + return 1566; + else + return 1567; + else if (Age == 4) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1568; + else + return 1569; + else if (West) + return 1570; + else + return 1571; + else if (Up) + if (West) + return 1572; + else + return 1573; + else if (West) + return 1574; + else + return 1575; + else if (South) + if (Up) + if (West) + return 1576; + else + return 1577; + else if (West) + return 1578; + else + return 1579; + else if (Up) + if (West) + return 1580; + else + return 1581; + else if (West) + return 1582; + else + return 1583; + else if (North) + if (South) + if (Up) + if (West) + return 1584; + else + return 1585; + else if (West) + return 1586; + else + return 1587; + else if (Up) + if (West) + return 1588; + else + return 1589; + else if (West) + return 1590; + else + return 1591; + else if (South) + if (Up) + if (West) + return 1592; + else + return 1593; + else if (West) + return 1594; + else + return 1595; + else if (Up) + if (West) + return 1596; + else + return 1597; + else if (West) + return 1598; + else + return 1599; + else if (Age == 5) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1600; + else + return 1601; + else if (West) + return 1602; + else + return 1603; + else if (Up) + if (West) + return 1604; + else + return 1605; + else if (West) + return 1606; + else + return 1607; + else if (South) + if (Up) + if (West) + return 1608; + else + return 1609; + else if (West) + return 1610; + else + return 1611; + else if (Up) + if (West) + return 1612; + else + return 1613; + else if (West) + return 1614; + else + return 1615; + else if (North) + if (South) + if (Up) + if (West) + return 1616; + else + return 1617; + else if (West) + return 1618; + else + return 1619; + else if (Up) + if (West) + return 1620; + else + return 1621; + else if (West) + return 1622; + else + return 1623; + else if (South) + if (Up) + if (West) + return 1624; + else + return 1625; + else if (West) + return 1626; + else + return 1627; + else if (Up) + if (West) + return 1628; + else + return 1629; + else if (West) + return 1630; + else + return 1631; + else if (Age == 6) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1632; + else + return 1633; + else if (West) + return 1634; + else + return 1635; + else if (Up) + if (West) + return 1636; + else + return 1637; + else if (West) + return 1638; + else + return 1639; + else if (South) + if (Up) + if (West) + return 1640; + else + return 1641; + else if (West) + return 1642; + else + return 1643; + else if (Up) + if (West) + return 1644; + else + return 1645; + else if (West) + return 1646; + else + return 1647; + else if (North) + if (South) + if (Up) + if (West) + return 1648; + else + return 1649; + else if (West) + return 1650; + else + return 1651; + else if (Up) + if (West) + return 1652; + else + return 1653; + else if (West) + return 1654; + else + return 1655; + else if (South) + if (Up) + if (West) + return 1656; + else + return 1657; + else if (West) + return 1658; + else + return 1659; + else if (Up) + if (West) + return 1660; + else + return 1661; + else if (West) + return 1662; + else + return 1663; + else if (Age == 7) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1664; + else + return 1665; + else if (West) + return 1666; + else + return 1667; + else if (Up) + if (West) + return 1668; + else + return 1669; + else if (West) + return 1670; + else + return 1671; + else if (South) + if (Up) + if (West) + return 1672; + else + return 1673; + else if (West) + return 1674; + else + return 1675; + else if (Up) + if (West) + return 1676; + else + return 1677; + else if (West) + return 1678; + else + return 1679; + else if (North) + if (South) + if (Up) + if (West) + return 1680; + else + return 1681; + else if (West) + return 1682; + else + return 1683; + else if (Up) + if (West) + return 1684; + else + return 1685; + else if (West) + return 1686; + else + return 1687; + else if (South) + if (Up) + if (West) + return 1688; + else + return 1689; + else if (West) + return 1690; + else + return 1691; + else if (Up) + if (West) + return 1692; + else + return 1693; + else if (West) + return 1694; + else + return 1695; + else if (Age == 8) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1696; + else + return 1697; + else if (West) + return 1698; + else + return 1699; + else if (Up) + if (West) + return 1700; + else + return 1701; + else if (West) + return 1702; + else + return 1703; + else if (South) + if (Up) + if (West) + return 1704; + else + return 1705; + else if (West) + return 1706; + else + return 1707; + else if (Up) + if (West) + return 1708; + else + return 1709; + else if (West) + return 1710; + else + return 1711; + else if (North) + if (South) + if (Up) + if (West) + return 1712; + else + return 1713; + else if (West) + return 1714; + else + return 1715; + else if (Up) + if (West) + return 1716; + else + return 1717; + else if (West) + return 1718; + else + return 1719; + else if (South) + if (Up) + if (West) + return 1720; + else + return 1721; + else if (West) + return 1722; + else + return 1723; + else if (Up) + if (West) + return 1724; + else + return 1725; + else if (West) + return 1726; + else + return 1727; + else if (Age == 9) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1728; + else + return 1729; + else if (West) + return 1730; + else + return 1731; + else if (Up) + if (West) + return 1732; + else + return 1733; + else if (West) + return 1734; + else + return 1735; + else if (South) + if (Up) + if (West) + return 1736; + else + return 1737; + else if (West) + return 1738; + else + return 1739; + else if (Up) + if (West) + return 1740; + else + return 1741; + else if (West) + return 1742; + else + return 1743; + else if (North) + if (South) + if (Up) + if (West) + return 1744; + else + return 1745; + else if (West) + return 1746; + else + return 1747; + else if (Up) + if (West) + return 1748; + else + return 1749; + else if (West) + return 1750; + else + return 1751; + else if (South) + if (Up) + if (West) + return 1752; + else + return 1753; + else if (West) + return 1754; + else + return 1755; + else if (Up) + if (West) + return 1756; + else + return 1757; + else if (West) + return 1758; + else + return 1759; + else if (Age == 10) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1760; + else + return 1761; + else if (West) + return 1762; + else + return 1763; + else if (Up) + if (West) + return 1764; + else + return 1765; + else if (West) + return 1766; + else + return 1767; + else if (South) + if (Up) + if (West) + return 1768; + else + return 1769; + else if (West) + return 1770; + else + return 1771; + else if (Up) + if (West) + return 1772; + else + return 1773; + else if (West) + return 1774; + else + return 1775; + else if (North) + if (South) + if (Up) + if (West) + return 1776; + else + return 1777; + else if (West) + return 1778; + else + return 1779; + else if (Up) + if (West) + return 1780; + else + return 1781; + else if (West) + return 1782; + else + return 1783; + else if (South) + if (Up) + if (West) + return 1784; + else + return 1785; + else if (West) + return 1786; + else + return 1787; + else if (Up) + if (West) + return 1788; + else + return 1789; + else if (West) + return 1790; + else + return 1791; + else if (Age == 11) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1792; + else + return 1793; + else if (West) + return 1794; + else + return 1795; + else if (Up) + if (West) + return 1796; + else + return 1797; + else if (West) + return 1798; + else + return 1799; + else if (South) + if (Up) + if (West) + return 1800; + else + return 1801; + else if (West) + return 1802; + else + return 1803; + else if (Up) + if (West) + return 1804; + else + return 1805; + else if (West) + return 1806; + else + return 1807; + else if (North) + if (South) + if (Up) + if (West) + return 1808; + else + return 1809; + else if (West) + return 1810; + else + return 1811; + else if (Up) + if (West) + return 1812; + else + return 1813; + else if (West) + return 1814; + else + return 1815; + else if (South) + if (Up) + if (West) + return 1816; + else + return 1817; + else if (West) + return 1818; + else + return 1819; + else if (Up) + if (West) + return 1820; + else + return 1821; + else if (West) + return 1822; + else + return 1823; + else if (Age == 12) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1824; + else + return 1825; + else if (West) + return 1826; + else + return 1827; + else if (Up) + if (West) + return 1828; + else + return 1829; + else if (West) + return 1830; + else + return 1831; + else if (South) + if (Up) + if (West) + return 1832; + else + return 1833; + else if (West) + return 1834; + else + return 1835; + else if (Up) + if (West) + return 1836; + else + return 1837; + else if (West) + return 1838; + else + return 1839; + else if (North) + if (South) + if (Up) + if (West) + return 1840; + else + return 1841; + else if (West) + return 1842; + else + return 1843; + else if (Up) + if (West) + return 1844; + else + return 1845; + else if (West) + return 1846; + else + return 1847; + else if (South) + if (Up) + if (West) + return 1848; + else + return 1849; + else if (West) + return 1850; + else + return 1851; + else if (Up) + if (West) + return 1852; + else + return 1853; + else if (West) + return 1854; + else + return 1855; + else if (Age == 13) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1856; + else + return 1857; + else if (West) + return 1858; + else + return 1859; + else if (Up) + if (West) + return 1860; + else + return 1861; + else if (West) + return 1862; + else + return 1863; + else if (South) + if (Up) + if (West) + return 1864; + else + return 1865; + else if (West) + return 1866; + else + return 1867; + else if (Up) + if (West) + return 1868; + else + return 1869; + else if (West) + return 1870; + else + return 1871; + else if (North) + if (South) + if (Up) + if (West) + return 1872; + else + return 1873; + else if (West) + return 1874; + else + return 1875; + else if (Up) + if (West) + return 1876; + else + return 1877; + else if (West) + return 1878; + else + return 1879; + else if (South) + if (Up) + if (West) + return 1880; + else + return 1881; + else if (West) + return 1882; + else + return 1883; + else if (Up) + if (West) + return 1884; + else + return 1885; + else if (West) + return 1886; + else + return 1887; + else if (Age == 14) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 1888; + else + return 1889; + else if (West) + return 1890; + else + return 1891; + else if (Up) + if (West) + return 1892; + else + return 1893; + else if (West) + return 1894; + else + return 1895; + else if (South) + if (Up) + if (West) + return 1896; + else + return 1897; + else if (West) + return 1898; + else + return 1899; + else if (Up) + if (West) + return 1900; + else + return 1901; + else if (West) + return 1902; + else + return 1903; + else if (North) + if (South) + if (Up) + if (West) + return 1904; + else + return 1905; + else if (West) + return 1906; + else + return 1907; + else if (Up) + if (West) + return 1908; + else + return 1909; + else if (West) + return 1910; + else + return 1911; + else if (South) + if (Up) + if (West) + return 1912; + else + return 1913; + else if (West) + return 1914; + else + return 1915; + else if (Up) + if (West) + return 1916; + else + return 1917; + else if (West) + return 1918; + else + return 1919; + else if (East) + if (North) + if (South) + if (Up) + if (West) + return 1920; + else + return 1921; + else if (West) + return 1922; + else + return 1923; + else if (Up) + if (West) + return 1924; + else + return 1925; + else if (West) + return 1926; + else + return 1927; + else if (South) + if (Up) + if (West) + return 1928; + else + return 1929; + else if (West) + return 1930; + else + return 1931; + else if (Up) + if (West) + return 1932; + else + return 1933; + else if (West) + return 1934; + else + return 1935; + else if (North) + if (South) + if (Up) + if (West) + return 1936; + else + return 1937; + else if (West) + return 1938; + else + return 1939; + else if (Up) + if (West) + return 1940; + else + return 1941; + else if (West) + return 1942; + else + return 1943; + else if (South) + if (Up) + if (West) + return 1944; + else + return 1945; + else if (West) + return 1946; + else + return 1947; + else if (Up) + if (West) + return 1948; + else + return 1949; + else if (West) + return 1950; + else + return 1951; +} +BlockState Fire(); +unsigned char Age(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace Fire +namespace FireCoral +{ +constexpr BlockState FireCoral() +{ + return 9537; +} +} // namespace FireCoral +namespace FireCoralBlock +{ +constexpr BlockState FireCoralBlock() +{ + return 9518; +} +} // namespace FireCoralBlock +namespace FireCoralFan +{ +constexpr BlockState FireCoralFan() +{ + return 9557; +} +} // namespace FireCoralFan +namespace FireCoralWallFan +{ +constexpr BlockState FireCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9625; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9627; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9629; + else + return 9631; +} +BlockState FireCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace FireCoralWallFan +namespace FletchingTable +{ +constexpr BlockState FletchingTable() +{ + return 14820; +} +} // namespace FletchingTable +namespace FlowerPot +{ +constexpr BlockState FlowerPot() +{ + return 6305; +} +} // namespace FlowerPot +namespace FrostedIce +{ +constexpr BlockState FrostedIce(const unsigned char Age) +{ + if (Age == 0) + return 9249; + else if (Age == 1) + return 9250; + else if (Age == 2) + return 9251; + else + return 9252; +} +BlockState FrostedIce(); +unsigned char Age(BlockState Block); +} // namespace FrostedIce +namespace Furnace +{ +constexpr BlockState Furnace(const eBlockFace Facing, const bool Lit) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + return 3373; + else + return 3374; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + return 3375; + else + return 3376; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + return 3377; + else + return 3378; + else if (Lit) + return 3379; + else + return 3380; +} +BlockState Furnace(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +} // namespace Furnace +namespace GildedBlackstone +{ +constexpr BlockState GildedBlackstone() +{ + return 16664; +} +} // namespace GildedBlackstone +namespace Glass +{ +constexpr BlockState Glass() +{ + return 231; +} +} // namespace Glass +namespace GlassPane +{ +constexpr BlockState GlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 4733; + else + return 4734; + else if (West) + return 4737; + else + return 4738; + else if (South) + if (West) + return 4741; + else + return 4742; + else if (West) + return 4745; + else + return 4746; + else if (North) + if (South) + if (West) + return 4749; + else + return 4750; + else if (West) + return 4753; + else + return 4754; + else if (South) + if (West) + return 4757; + else + return 4758; + else if (West) + return 4761; + else + return 4762; +} +BlockState GlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace GlassPane +namespace Glowstone +{ +constexpr BlockState Glowstone() +{ + return 4013; +} +} // namespace Glowstone +namespace GoldBlock +{ +constexpr BlockState GoldBlock() +{ + return 1427; +} +} // namespace GoldBlock +namespace GoldOre +{ +constexpr BlockState GoldOre() +{ + return 69; +} +} // namespace GoldOre +namespace Granite +{ +constexpr BlockState Granite() +{ + return 2; +} +} // namespace Granite +namespace GraniteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState GraniteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10838; + else if (Type == Type::Bottom) + return 10840; + else + return 10842; +} +BlockState GraniteSlab(); +enum Type Type(BlockState Block); +} // namespace GraniteSlab +namespace GraniteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState GraniteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10390; + else if (Shape == Shape::InnerLeft) + return 10392; + else if (Shape == Shape::InnerRight) + return 10394; + else if (Shape == Shape::OuterLeft) + return 10396; + else + return 10398; + else if (Shape == Shape::Straight) + return 10400; + else if (Shape == Shape::InnerLeft) + return 10402; + else if (Shape == Shape::InnerRight) + return 10404; + else if (Shape == Shape::OuterLeft) + return 10406; + else + return 10408; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10410; + else if (Shape == Shape::InnerLeft) + return 10412; + else if (Shape == Shape::InnerRight) + return 10414; + else if (Shape == Shape::OuterLeft) + return 10416; + else + return 10418; + else if (Shape == Shape::Straight) + return 10420; + else if (Shape == Shape::InnerLeft) + return 10422; + else if (Shape == Shape::InnerRight) + return 10424; + else if (Shape == Shape::OuterLeft) + return 10426; + else + return 10428; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10430; + else if (Shape == Shape::InnerLeft) + return 10432; + else if (Shape == Shape::InnerRight) + return 10434; + else if (Shape == Shape::OuterLeft) + return 10436; + else + return 10438; + else if (Shape == Shape::Straight) + return 10440; + else if (Shape == Shape::InnerLeft) + return 10442; + else if (Shape == Shape::InnerRight) + return 10444; + else if (Shape == Shape::OuterLeft) + return 10446; + else + return 10448; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10450; + else if (Shape == Shape::InnerLeft) + return 10452; + else if (Shape == Shape::InnerRight) + return 10454; + else if (Shape == Shape::OuterLeft) + return 10456; + else + return 10458; + else if (Shape == Shape::Straight) + return 10460; + else if (Shape == Shape::InnerLeft) + return 10462; + else if (Shape == Shape::InnerRight) + return 10464; + else if (Shape == Shape::OuterLeft) + return 10466; + else + return 10468; +} +BlockState GraniteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace GraniteStairs +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 BlockState GraniteWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12166; + else if (West == West::Low) + return 12167; + else + return 12168; + else if (West == West::None) + return 12172; + else if (West == West::Low) + return 12173; + else + return 12174; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12178; + else if (West == West::Low) + return 12179; + else + return 12180; + else if (West == West::None) + return 12184; + else if (West == West::Low) + return 12185; + else + return 12186; + else if (Up) + if (West == West::None) + return 12190; + else if (West == West::Low) + return 12191; + else + return 12192; + else if (West == West::None) + return 12196; + else if (West == West::Low) + return 12197; + else + return 12198; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12202; + else if (West == West::Low) + return 12203; + else + return 12204; + else if (West == West::None) + return 12208; + else if (West == West::Low) + return 12209; + else + return 12210; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12214; + else if (West == West::Low) + return 12215; + else + return 12216; + else if (West == West::None) + return 12220; + else if (West == West::Low) + return 12221; + else + return 12222; + else if (Up) + if (West == West::None) + return 12226; + else if (West == West::Low) + return 12227; + else + return 12228; + else if (West == West::None) + return 12232; + else if (West == West::Low) + return 12233; + else + return 12234; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12238; + else if (West == West::Low) + return 12239; + else + return 12240; + else if (West == West::None) + return 12244; + else if (West == West::Low) + return 12245; + else + return 12246; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12250; + else if (West == West::Low) + return 12251; + else + return 12252; + else if (West == West::None) + return 12256; + else if (West == West::Low) + return 12257; + else + return 12258; + else if (Up) + if (West == West::None) + return 12262; + else if (West == West::Low) + return 12263; + else + return 12264; + else if (West == West::None) + return 12268; + else if (West == West::Low) + return 12269; + else + return 12270; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12274; + else if (West == West::Low) + return 12275; + else + return 12276; + else if (West == West::None) + return 12280; + else if (West == West::Low) + return 12281; + else + return 12282; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12286; + else if (West == West::Low) + return 12287; + else + return 12288; + else if (West == West::None) + return 12292; + else if (West == West::Low) + return 12293; + else + return 12294; + else if (Up) + if (West == West::None) + return 12298; + else if (West == West::Low) + return 12299; + else + return 12300; + else if (West == West::None) + return 12304; + else if (West == West::Low) + return 12305; + else + return 12306; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12310; + else if (West == West::Low) + return 12311; + else + return 12312; + else if (West == West::None) + return 12316; + else if (West == West::Low) + return 12317; + else + return 12318; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12322; + else if (West == West::Low) + return 12323; + else + return 12324; + else if (West == West::None) + return 12328; + else if (West == West::Low) + return 12329; + else + return 12330; + else if (Up) + if (West == West::None) + return 12334; + else if (West == West::Low) + return 12335; + else + return 12336; + else if (West == West::None) + return 12340; + else if (West == West::Low) + return 12341; + else + return 12342; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12346; + else if (West == West::Low) + return 12347; + else + return 12348; + else if (West == West::None) + return 12352; + else if (West == West::Low) + return 12353; + else + return 12354; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12358; + else if (West == West::Low) + return 12359; + else + return 12360; + else if (West == West::None) + return 12364; + else if (West == West::Low) + return 12365; + else + return 12366; + else if (Up) + if (West == West::None) + return 12370; + else if (West == West::Low) + return 12371; + else + return 12372; + else if (West == West::None) + return 12376; + else if (West == West::Low) + return 12377; + else + return 12378; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12382; + else if (West == West::Low) + return 12383; + else + return 12384; + else if (West == West::None) + return 12388; + else if (West == West::Low) + return 12389; + else + return 12390; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12394; + else if (West == West::Low) + return 12395; + else + return 12396; + else if (West == West::None) + return 12400; + else if (West == West::Low) + return 12401; + else + return 12402; + else if (Up) + if (West == West::None) + return 12406; + else if (West == West::Low) + return 12407; + else + return 12408; + else if (West == West::None) + return 12412; + else if (West == West::Low) + return 12413; + else + return 12414; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12418; + else if (West == West::Low) + return 12419; + else + return 12420; + else if (West == West::None) + return 12424; + else if (West == West::Low) + return 12425; + else + return 12426; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12430; + else if (West == West::Low) + return 12431; + else + return 12432; + else if (West == West::None) + return 12436; + else if (West == West::Low) + return 12437; + else + return 12438; + else if (Up) + if (West == West::None) + return 12442; + else if (West == West::Low) + return 12443; + else + return 12444; + else if (West == West::None) + return 12448; + else if (West == West::Low) + return 12449; + else + return 12450; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12454; + else if (West == West::Low) + return 12455; + else + return 12456; + else if (West == West::None) + return 12460; + else if (West == West::Low) + return 12461; + else + return 12462; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12466; + else if (West == West::Low) + return 12467; + else + return 12468; + else if (West == West::None) + return 12472; + else if (West == West::Low) + return 12473; + else + return 12474; + else if (Up) + if (West == West::None) + return 12478; + else if (West == West::Low) + return 12479; + else + return 12480; + else if (West == West::None) + return 12484; + else if (West == West::Low) + return 12485; + else + return 12486; +} +BlockState GraniteWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace GraniteWall +namespace Grass +{ +constexpr BlockState Grass() +{ + return 1342; +} +} // namespace Grass +namespace GrassBlock +{ +constexpr BlockState GrassBlock(const bool Snowy) +{ + if (Snowy) + return 8; + else + return 9; +} +BlockState GrassBlock(); +bool Snowy(BlockState Block); +} // namespace GrassBlock +namespace GrassPath +{ +constexpr BlockState GrassPath() +{ + return 9223; +} +} // namespace GrassPath +namespace Gravel +{ +constexpr BlockState Gravel() +{ + return 68; +} +} // namespace Gravel +namespace GrayBanner +{ +constexpr BlockState GrayBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8009; + else if (Rotation == 1) + return 8010; + else if (Rotation == 2) + return 8011; + else if (Rotation == 3) + return 8012; + else if (Rotation == 4) + return 8013; + else if (Rotation == 5) + return 8014; + else if (Rotation == 6) + return 8015; + else if (Rotation == 7) + return 8016; + else if (Rotation == 8) + return 8017; + else if (Rotation == 9) + return 8018; + else if (Rotation == 10) + return 8019; + else if (Rotation == 11) + return 8020; + else if (Rotation == 12) + return 8021; + else if (Rotation == 13) + return 8022; + else if (Rotation == 14) + return 8023; + else + return 8024; +} +BlockState GrayBanner(); +unsigned char Rotation(BlockState Block); +} // namespace GrayBanner +namespace GrayBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState GrayBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1161; + else + return 1162; + else if (Part == Part::Head) + return 1163; + else + return 1164; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1165; + else + return 1166; + else if (Part == Part::Head) + return 1167; + else + return 1168; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1169; + else + return 1170; + else if (Part == Part::Head) + return 1171; + else + return 1172; + else if (Occupied) + if (Part == Part::Head) + return 1173; + else + return 1174; + else if (Part == Part::Head) + return 1175; + else + return 1176; +} +BlockState GrayBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace GrayBed +namespace GrayCarpet +{ +constexpr BlockState GrayCarpet() +{ + return 7873; +} +} // namespace GrayCarpet +namespace GrayConcrete +{ +constexpr BlockState GrayConcrete() +{ + return 9445; +} +} // namespace GrayConcrete +namespace GrayConcretePowder +{ +constexpr BlockState GrayConcretePowder() +{ + return 9461; +} +} // namespace GrayConcretePowder +namespace GrayGlazedTerracotta +{ +constexpr BlockState GrayGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9402; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9403; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9404; + else + return 9405; +} +BlockState GrayGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace GrayGlazedTerracotta +namespace GrayShulkerBox +{ +constexpr BlockState GrayShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9320; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9321; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9322; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9323; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9324; + else + return 9325; +} +BlockState GrayShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace GrayShulkerBox +namespace GrayStainedGlass +{ +constexpr BlockState GrayStainedGlass() +{ + return 4102; +} +} // namespace GrayStainedGlass +namespace GrayStainedGlassPane +{ +constexpr BlockState GrayStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7089; + else + return 7090; + else if (West) + return 7093; + else + return 7094; + else if (South) + if (West) + return 7097; + else + return 7098; + else if (West) + return 7101; + else + return 7102; + else if (North) + if (South) + if (West) + return 7105; + else + return 7106; + else if (West) + return 7109; + else + return 7110; + else if (South) + if (West) + return 7113; + else + return 7114; + else if (West) + return 7117; + else + return 7118; +} +BlockState GrayStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace GrayStainedGlassPane +namespace GrayTerracotta +{ +constexpr BlockState GrayTerracotta() +{ + return 6854; +} +} // namespace GrayTerracotta +namespace GrayWallBanner +{ +constexpr BlockState GrayWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8181; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8182; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8183; + else + return 8184; +} +BlockState GrayWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace GrayWallBanner +namespace GrayWool +{ +constexpr BlockState GrayWool() +{ + return 1391; +} +} // namespace GrayWool +namespace GreenBanner +{ +constexpr BlockState GreenBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8105; + else if (Rotation == 1) + return 8106; + else if (Rotation == 2) + return 8107; + else if (Rotation == 3) + return 8108; + else if (Rotation == 4) + return 8109; + else if (Rotation == 5) + return 8110; + else if (Rotation == 6) + return 8111; + else if (Rotation == 7) + return 8112; + else if (Rotation == 8) + return 8113; + else if (Rotation == 9) + return 8114; + else if (Rotation == 10) + return 8115; + else if (Rotation == 11) + return 8116; + else if (Rotation == 12) + return 8117; + else if (Rotation == 13) + return 8118; + else if (Rotation == 14) + return 8119; + else + return 8120; +} +BlockState GreenBanner(); +unsigned char Rotation(BlockState Block); +} // namespace GreenBanner +namespace GreenBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState GreenBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1257; + else + return 1258; + else if (Part == Part::Head) + return 1259; + else + return 1260; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1261; + else + return 1262; + else if (Part == Part::Head) + return 1263; + else + return 1264; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1265; + else + return 1266; + else if (Part == Part::Head) + return 1267; + else + return 1268; + else if (Occupied) + if (Part == Part::Head) + return 1269; + else + return 1270; + else if (Part == Part::Head) + return 1271; + else + return 1272; +} +BlockState GreenBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace GreenBed +namespace GreenCarpet +{ +constexpr BlockState GreenCarpet() +{ + return 7879; +} +} // namespace GreenCarpet +namespace GreenConcrete +{ +constexpr BlockState GreenConcrete() +{ + return 9451; +} +} // namespace GreenConcrete +namespace GreenConcretePowder +{ +constexpr BlockState GreenConcretePowder() +{ + return 9467; +} +} // namespace GreenConcretePowder +namespace GreenGlazedTerracotta +{ +constexpr BlockState GreenGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9426; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9427; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9428; + else + return 9429; +} +BlockState GreenGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace GreenGlazedTerracotta +namespace GreenShulkerBox +{ +constexpr BlockState GreenShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9356; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9357; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9358; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9359; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9360; + else + return 9361; +} +BlockState GreenShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace GreenShulkerBox +namespace GreenStainedGlass +{ +constexpr BlockState GreenStainedGlass() +{ + return 4108; +} +} // namespace GreenStainedGlass +namespace GreenStainedGlassPane +{ +constexpr BlockState GreenStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7281; + else + return 7282; + else if (West) + return 7285; + else + return 7286; + else if (South) + if (West) + return 7289; + else + return 7290; + else if (West) + return 7293; + else + return 7294; + else if (North) + if (South) + if (West) + return 7297; + else + return 7298; + else if (West) + return 7301; + else + return 7302; + else if (South) + if (West) + return 7305; + else + return 7306; + else if (West) + return 7309; + else + return 7310; +} +BlockState GreenStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace GreenStainedGlassPane +namespace GreenTerracotta +{ +constexpr BlockState GreenTerracotta() +{ + return 6860; +} +} // namespace GreenTerracotta +namespace GreenWallBanner +{ +constexpr BlockState GreenWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8205; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8206; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8207; + else + return 8208; +} +BlockState GreenWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace GreenWallBanner +namespace GreenWool +{ +constexpr BlockState GreenWool() +{ + return 1397; +} +} // namespace GreenWool +namespace Grindstone +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState Grindstone(const enum Face Face, const eBlockFace Facing) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 14821; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 14822; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 14823; + else + return 14824; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 14825; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 14826; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 14827; + else + return 14828; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 14829; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 14830; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 14831; + else + return 14832; +} +BlockState Grindstone(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace Grindstone +namespace HayBale +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState HayBale(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 7863; + else if (Axis == Axis::Y) + return 7864; + else + return 7865; +} +BlockState HayBale(); +enum Axis Axis(BlockState Block); +} // namespace HayBale +namespace HeavyWeightedPressurePlate +{ +constexpr BlockState HeavyWeightedPressurePlate(const unsigned char Power) +{ + if (Power == 0) + return 6662; + else if (Power == 1) + return 6663; + else if (Power == 2) + return 6664; + else if (Power == 3) + return 6665; + else if (Power == 4) + return 6666; + else if (Power == 5) + return 6667; + else if (Power == 6) + return 6668; + else if (Power == 7) + return 6669; + else if (Power == 8) + return 6670; + else if (Power == 9) + return 6671; + else if (Power == 10) + return 6672; + else if (Power == 11) + return 6673; + else if (Power == 12) + return 6674; + else if (Power == 13) + return 6675; + else if (Power == 14) + return 6676; + else + return 6677; +} +BlockState HeavyWeightedPressurePlate(); +unsigned char Power(BlockState Block); +} // namespace HeavyWeightedPressurePlate +namespace HoneyBlock +{ +constexpr BlockState HoneyBlock() +{ + return 15824; +} +} // namespace HoneyBlock +namespace HoneycombBlock +{ +constexpr BlockState HoneycombBlock() +{ + return 15825; +} +} // namespace HoneycombBlock +namespace Hopper +{ +constexpr BlockState Hopper(const bool Enabled, const eBlockFace Facing) +{ + if (Enabled) + if (Facing == eBlockFace::BLOCK_FACE_YM) + return 6728; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6729; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6730; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6731; + else + return 6732; + else if (Facing == eBlockFace::BLOCK_FACE_YM) + return 6733; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6734; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6735; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6736; + else + return 6737; +} +BlockState Hopper(); +bool Enabled(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace Hopper +namespace HornCoral +{ +constexpr BlockState HornCoral() +{ + return 9539; +} +} // namespace HornCoral +namespace HornCoralBlock +{ +constexpr BlockState HornCoralBlock() +{ + return 9519; +} +} // namespace HornCoralBlock +namespace HornCoralFan +{ +constexpr BlockState HornCoralFan() +{ + return 9559; +} +} // namespace HornCoralFan +namespace HornCoralWallFan +{ +constexpr BlockState HornCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9633; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9635; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9637; + else + return 9639; +} +BlockState HornCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace HornCoralWallFan +namespace Ice +{ +constexpr BlockState Ice() +{ + return 3929; +} +} // namespace Ice +namespace InfestedChiseledStoneBricks +{ +constexpr BlockState InfestedChiseledStoneBricks() +{ + return 4504; +} +} // namespace InfestedChiseledStoneBricks +namespace InfestedCobblestone +{ +constexpr BlockState InfestedCobblestone() +{ + return 4500; +} +} // namespace InfestedCobblestone +namespace InfestedCrackedStoneBricks +{ +constexpr BlockState InfestedCrackedStoneBricks() +{ + return 4503; +} +} // namespace InfestedCrackedStoneBricks +namespace InfestedMossyStoneBricks +{ +constexpr BlockState InfestedMossyStoneBricks() +{ + return 4502; +} +} // namespace InfestedMossyStoneBricks +namespace InfestedStone +{ +constexpr BlockState InfestedStone() +{ + return 4499; +} +} // namespace InfestedStone +namespace InfestedStoneBricks +{ +constexpr BlockState InfestedStoneBricks() +{ + return 4501; +} +} // namespace InfestedStoneBricks +namespace IronBars +{ +constexpr BlockState IronBars(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 4699; + else + return 4700; + else if (West) + return 4703; + else + return 4704; + else if (South) + if (West) + return 4707; + else + return 4708; + else if (West) + return 4711; + else + return 4712; + else if (North) + if (South) + if (West) + return 4715; + else + return 4716; + else if (West) + return 4719; + else + return 4720; + else if (South) + if (West) + return 4723; + else + return 4724; + else if (West) + return 4727; + else + return 4728; +} +BlockState IronBars(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace IronBars +namespace IronBlock +{ +constexpr BlockState IronBlock() +{ + return 1428; +} +} // namespace IronBlock +namespace IronDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState IronDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3809; + else + return 3810; + else if (Powered) + return 3811; + else + return 3812; + else if (Open) + if (Powered) + return 3813; + else + return 3814; + else if (Powered) + return 3815; + else + return 3816; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3817; + else + return 3818; + else if (Powered) + return 3819; + else + return 3820; + else if (Open) + if (Powered) + return 3821; + else + return 3822; + else if (Powered) + return 3823; + else + return 3824; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3825; + else + return 3826; + else if (Powered) + return 3827; + else + return 3828; + else if (Open) + if (Powered) + return 3829; + else + return 3830; + else if (Powered) + return 3831; + else + return 3832; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3833; + else + return 3834; + else if (Powered) + return 3835; + else + return 3836; + else if (Open) + if (Powered) + return 3837; + else + return 3838; + else if (Powered) + return 3839; + else + return 3840; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3841; + else + return 3842; + else if (Powered) + return 3843; + else + return 3844; + else if (Open) + if (Powered) + return 3845; + else + return 3846; + else if (Powered) + return 3847; + else + return 3848; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3849; + else + return 3850; + else if (Powered) + return 3851; + else + return 3852; + else if (Open) + if (Powered) + return 3853; + else + return 3854; + else if (Powered) + return 3855; + else + return 3856; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3857; + else + return 3858; + else if (Powered) + return 3859; + else + return 3860; + else if (Open) + if (Powered) + return 3861; + else + return 3862; + else if (Powered) + return 3863; + else + return 3864; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3865; + else + return 3866; + else if (Powered) + return 3867; + else + return 3868; + else if (Open) + if (Powered) + return 3869; + else + return 3870; + else if (Powered) + return 3871; + else + return 3872; +} +BlockState IronDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace IronDoor +namespace IronOre +{ +constexpr BlockState IronOre() +{ + return 70; +} +} // namespace IronOre +namespace IronTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState IronTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 7538; + else + return 7540; + else if (Powered) + return 7542; + else + return 7544; + else if (Open) + if (Powered) + return 7546; + else + return 7548; + else if (Powered) + return 7550; + else + return 7552; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 7554; + else + return 7556; + else if (Powered) + return 7558; + else + return 7560; + else if (Open) + if (Powered) + return 7562; + else + return 7564; + else if (Powered) + return 7566; + else + return 7568; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 7570; + else + return 7572; + else if (Powered) + return 7574; + else + return 7576; + else if (Open) + if (Powered) + return 7578; + else + return 7580; + else if (Powered) + return 7582; + else + return 7584; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 7586; + else + return 7588; + else if (Powered) + return 7590; + else + return 7592; + else if (Open) + if (Powered) + return 7594; + else + return 7596; + else if (Powered) + return 7598; + else + return 7600; +} +BlockState IronTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace IronTrapdoor +namespace JackOLantern +{ +constexpr BlockState JackOLantern(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 4020; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 4021; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 4022; + else + return 4023; +} +BlockState JackOLantern(); +eBlockFace Facing(BlockState Block); +} // namespace JackOLantern +namespace Jigsaw +{ +enum class Orientation +{ + DownEast, + DownNorth, + DownSouth, + DownWest, + UpEast, + UpNorth, + UpSouth, + UpWest, + WestUp, + EastUp, + NorthUp, + SouthUp +}; +constexpr BlockState Jigsaw(const enum Orientation Orientation) +{ + if (Orientation == Orientation::DownEast) + return 15739; + else if (Orientation == Orientation::DownNorth) + return 15740; + else if (Orientation == Orientation::DownSouth) + return 15741; + else if (Orientation == Orientation::DownWest) + return 15742; + else if (Orientation == Orientation::UpEast) + return 15743; + else if (Orientation == Orientation::UpNorth) + return 15744; + else if (Orientation == Orientation::UpSouth) + return 15745; + else if (Orientation == Orientation::UpWest) + return 15746; + else if (Orientation == Orientation::WestUp) + return 15747; + else if (Orientation == Orientation::EastUp) + return 15748; + else if (Orientation == Orientation::NorthUp) + return 15749; + else + return 15750; +} +BlockState Jigsaw(); +enum Orientation Orientation(BlockState Block); +} // namespace Jigsaw +namespace Jukebox +{ +constexpr BlockState Jukebox(const bool HasRecord) +{ + if (HasRecord) + return 3964; + else + return 3965; +} +BlockState Jukebox(); +bool HasRecord(BlockState Block); +} // namespace Jukebox +namespace JungleButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState JungleButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6418; + else + return 6419; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6420; + else + return 6421; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6422; + else + return 6423; + else if (Powered) + return 6424; + else + return 6425; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6426; + else + return 6427; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6428; + else + return 6429; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6430; + else + return 6431; + else if (Powered) + return 6432; + else + return 6433; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6434; + else + return 6435; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6436; + else + return 6437; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6438; + else + return 6439; + else if (Powered) + return 6440; + else + return 6441; +} +BlockState JungleButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace JungleButton +namespace JungleDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState JungleDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8866; + else + return 8867; + else if (Powered) + return 8868; + else + return 8869; + else if (Open) + if (Powered) + return 8870; + else + return 8871; + else if (Powered) + return 8872; + else + return 8873; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8874; + else + return 8875; + else if (Powered) + return 8876; + else + return 8877; + else if (Open) + if (Powered) + return 8878; + else + return 8879; + else if (Powered) + return 8880; + else + return 8881; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8882; + else + return 8883; + else if (Powered) + return 8884; + else + return 8885; + else if (Open) + if (Powered) + return 8886; + else + return 8887; + else if (Powered) + return 8888; + else + return 8889; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8890; + else + return 8891; + else if (Powered) + return 8892; + else + return 8893; + else if (Open) + if (Powered) + return 8894; + else + return 8895; + else if (Powered) + return 8896; + else + return 8897; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8898; + else + return 8899; + else if (Powered) + return 8900; + else + return 8901; + else if (Open) + if (Powered) + return 8902; + else + return 8903; + else if (Powered) + return 8904; + else + return 8905; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8906; + else + return 8907; + else if (Powered) + return 8908; + else + return 8909; + else if (Open) + if (Powered) + return 8910; + else + return 8911; + else if (Powered) + return 8912; + else + return 8913; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8914; + else + return 8915; + else if (Powered) + return 8916; + else + return 8917; + else if (Open) + if (Powered) + return 8918; + else + return 8919; + else if (Powered) + return 8920; + else + return 8921; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8922; + else + return 8923; + else if (Powered) + return 8924; + else + return 8925; + else if (Open) + if (Powered) + return 8926; + else + return 8927; + else if (Powered) + return 8928; + else + return 8929; +} +BlockState JungleDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace JungleDoor +namespace JungleFence +{ +constexpr BlockState JungleFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 8644; + else + return 8645; + else if (West) + return 8648; + else + return 8649; + else if (South) + if (West) + return 8652; + else + return 8653; + else if (West) + return 8656; + else + return 8657; + else if (North) + if (South) + if (West) + return 8660; + else + return 8661; + else if (West) + return 8664; + else + return 8665; + else if (South) + if (West) + return 8668; + else + return 8669; + else if (West) + return 8672; + else + return 8673; +} +BlockState JungleFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace JungleFence +namespace JungleFenceGate +{ +constexpr BlockState JungleFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 8482; + else + return 8483; + else if (Powered) + return 8484; + else + return 8485; + else if (Open) + if (Powered) + return 8486; + else + return 8487; + else if (Powered) + return 8488; + else + return 8489; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 8490; + else + return 8491; + else if (Powered) + return 8492; + else + return 8493; + else if (Open) + if (Powered) + return 8494; + else + return 8495; + else if (Powered) + return 8496; + else + return 8497; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 8498; + else + return 8499; + else if (Powered) + return 8500; + else + return 8501; + else if (Open) + if (Powered) + return 8502; + else + return 8503; + else if (Powered) + return 8504; + else + return 8505; + else if (InWall) + if (Open) + if (Powered) + return 8506; + else + return 8507; + else if (Powered) + return 8508; + else + return 8509; + else if (Open) + if (Powered) + return 8510; + else + return 8511; + else if (Powered) + return 8512; + else + return 8513; +} +BlockState JungleFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace JungleFenceGate +namespace JungleLeaves +{ +constexpr BlockState JungleLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 187; + else + return 188; + else if (Distance == 2) + if (Persistent) + return 189; + else + return 190; + else if (Distance == 3) + if (Persistent) + return 191; + else + return 192; + else if (Distance == 4) + if (Persistent) + return 193; + else + return 194; + else if (Distance == 5) + if (Persistent) + return 195; + else + return 196; + else if (Distance == 6) + if (Persistent) + return 197; + else + return 198; + else if (Persistent) + return 199; + else + return 200; +} +BlockState JungleLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace JungleLeaves +namespace JungleLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState JungleLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 82; + else if (Axis == Axis::Y) + return 83; + else + return 84; +} +BlockState JungleLog(); +enum Axis Axis(BlockState Block); +} // namespace JungleLog +namespace JunglePlanks +{ +constexpr BlockState JunglePlanks() +{ + return 18; +} +} // namespace JunglePlanks +namespace JunglePressurePlate +{ +constexpr BlockState JunglePressurePlate(const bool Powered) +{ + if (Powered) + return 3879; + else + return 3880; +} +BlockState JunglePressurePlate(); +bool Powered(BlockState Block); +} // namespace JunglePressurePlate +namespace JungleSapling +{ +constexpr BlockState JungleSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 27; + else + return 28; +} +BlockState JungleSapling(); +unsigned char Stage(BlockState Block); +} // namespace JungleSapling +namespace JungleSign +{ +constexpr BlockState JungleSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3510; + else if (Rotation == 1) + return 3512; + else if (Rotation == 2) + return 3514; + else if (Rotation == 3) + return 3516; + else if (Rotation == 4) + return 3518; + else if (Rotation == 5) + return 3520; + else if (Rotation == 6) + return 3522; + else if (Rotation == 7) + return 3524; + else if (Rotation == 8) + return 3526; + else if (Rotation == 9) + return 3528; + else if (Rotation == 10) + return 3530; + else if (Rotation == 11) + return 3532; + else if (Rotation == 12) + return 3534; + else if (Rotation == 13) + return 3536; + else if (Rotation == 14) + return 3538; + else + return 3540; +} +BlockState JungleSign(); +unsigned char Rotation(BlockState Block); +} // namespace JungleSign +namespace JungleSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState JungleSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8319; + else if (Type == Type::Bottom) + return 8321; + else + return 8323; +} +BlockState JungleSlab(); +enum Type Type(BlockState Block); +} // namespace JungleSlab +namespace JungleStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState JungleStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5565; + else if (Shape == Shape::InnerLeft) + return 5567; + else if (Shape == Shape::InnerRight) + return 5569; + else if (Shape == Shape::OuterLeft) + return 5571; + else + return 5573; + else if (Shape == Shape::Straight) + return 5575; + else if (Shape == Shape::InnerLeft) + return 5577; + else if (Shape == Shape::InnerRight) + return 5579; + else if (Shape == Shape::OuterLeft) + return 5581; + else + return 5583; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5585; + else if (Shape == Shape::InnerLeft) + return 5587; + else if (Shape == Shape::InnerRight) + return 5589; + else if (Shape == Shape::OuterLeft) + return 5591; + else + return 5593; + else if (Shape == Shape::Straight) + return 5595; + else if (Shape == Shape::InnerLeft) + return 5597; + else if (Shape == Shape::InnerRight) + return 5599; + else if (Shape == Shape::OuterLeft) + return 5601; + else + return 5603; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5605; + else if (Shape == Shape::InnerLeft) + return 5607; + else if (Shape == Shape::InnerRight) + return 5609; + else if (Shape == Shape::OuterLeft) + return 5611; + else + return 5613; + else if (Shape == Shape::Straight) + return 5615; + else if (Shape == Shape::InnerLeft) + return 5617; + else if (Shape == Shape::InnerRight) + return 5619; + else if (Shape == Shape::OuterLeft) + return 5621; + else + return 5623; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5625; + else if (Shape == Shape::InnerLeft) + return 5627; + else if (Shape == Shape::InnerRight) + return 5629; + else if (Shape == Shape::OuterLeft) + return 5631; + else + return 5633; + else if (Shape == Shape::Straight) + return 5635; + else if (Shape == Shape::InnerLeft) + return 5637; + else if (Shape == Shape::InnerRight) + return 5639; + else if (Shape == Shape::OuterLeft) + return 5641; + else + return 5643; +} +BlockState JungleStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace JungleStairs +namespace JungleTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState JungleTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4304; + else + return 4306; + else if (Powered) + return 4308; + else + return 4310; + else if (Open) + if (Powered) + return 4312; + else + return 4314; + else if (Powered) + return 4316; + else + return 4318; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4320; + else + return 4322; + else if (Powered) + return 4324; + else + return 4326; + else if (Open) + if (Powered) + return 4328; + else + return 4330; + else if (Powered) + return 4332; + else + return 4334; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4336; + else + return 4338; + else if (Powered) + return 4340; + else + return 4342; + else if (Open) + if (Powered) + return 4344; + else + return 4346; + else if (Powered) + return 4348; + else + return 4350; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4352; + else + return 4354; + else if (Powered) + return 4356; + else + return 4358; + else if (Open) + if (Powered) + return 4360; + else + return 4362; + else if (Powered) + return 4364; + else + return 4366; +} +BlockState JungleTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace JungleTrapdoor +namespace JungleWallSign +{ +constexpr BlockState JungleWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3768; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3770; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3772; + else + return 3774; +} +BlockState JungleWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace JungleWallSign +namespace JungleWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState JungleWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 118; + else if (Axis == Axis::Y) + return 119; + else + return 120; +} +BlockState JungleWood(); +enum Axis Axis(BlockState Block); +} // namespace JungleWood +namespace Kelp +{ +constexpr BlockState Kelp(const unsigned char Age) +{ + if (Age == 0) + return 9470; + else if (Age == 1) + return 9471; + else if (Age == 2) + return 9472; + else if (Age == 3) + return 9473; + else if (Age == 4) + return 9474; + else if (Age == 5) + return 9475; + else if (Age == 6) + return 9476; + else if (Age == 7) + return 9477; + else if (Age == 8) + return 9478; + else if (Age == 9) + return 9479; + else if (Age == 10) + return 9480; + else if (Age == 11) + return 9481; + else if (Age == 12) + return 9482; + else if (Age == 13) + return 9483; + else if (Age == 14) + return 9484; + else if (Age == 15) + return 9485; + else if (Age == 16) + return 9486; + else if (Age == 17) + return 9487; + else if (Age == 18) + return 9488; + else if (Age == 19) + return 9489; + else if (Age == 20) + return 9490; + else if (Age == 21) + return 9491; + else if (Age == 22) + return 9492; + else if (Age == 23) + return 9493; + else if (Age == 24) + return 9494; + else + return 9495; +} +BlockState Kelp(); +unsigned char Age(BlockState Block); +} // namespace Kelp +namespace KelpPlant +{ +constexpr BlockState KelpPlant() +{ + return 9496; +} +} // namespace KelpPlant +namespace Ladder +{ +constexpr BlockState Ladder(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3638; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3640; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3642; + else + return 3644; +} +BlockState Ladder(); +eBlockFace Facing(BlockState Block); +} // namespace Ladder +namespace Lantern +{ +constexpr BlockState Lantern(const bool Hanging) +{ + if (Hanging) + return 14886; + else + return 14887; +} +BlockState Lantern(); +bool Hanging(BlockState Block); +} // namespace Lantern +namespace LapisBlock +{ +constexpr BlockState LapisBlock() +{ + return 233; +} +} // namespace LapisBlock +namespace LapisOre +{ +constexpr BlockState LapisOre() +{ + return 232; +} +} // namespace LapisOre +namespace LargeFern +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState LargeFern(const enum Half Half) +{ + if (Half == Half::Upper) + return 7895; + else + return 7896; +} +BlockState LargeFern(); +enum Half Half(BlockState Block); +} // namespace LargeFern +namespace Lava +{ +constexpr BlockState Lava(const unsigned char Level) +{ + if (Level == 0) + return 50; + else if (Level == 1) + return 51; + else if (Level == 2) + return 52; + else if (Level == 3) + return 53; + else if (Level == 4) + return 54; + else if (Level == 5) + return 55; + else if (Level == 6) + return 56; + else if (Level == 7) + return 57; + else if (Level == 8) + return 58; + else if (Level == 9) + return 59; + else if (Level == 10) + return 60; + else if (Level == 11) + return 61; + else if (Level == 12) + return 62; + else if (Level == 13) + return 63; + else if (Level == 14) + return 64; + else + return 65; +} +BlockState Lava(); +unsigned char Level(BlockState Block); +} // namespace Lava +namespace Lectern +{ +constexpr BlockState Lectern(const eBlockFace Facing, const bool HasBook, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (HasBook) + if (Powered) + return 14833; + else + return 14834; + else if (Powered) + return 14835; + else + return 14836; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (HasBook) + if (Powered) + return 14837; + else + return 14838; + else if (Powered) + return 14839; + else + return 14840; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (HasBook) + if (Powered) + return 14841; + else + return 14842; + else if (Powered) + return 14843; + else + return 14844; + else if (HasBook) + if (Powered) + return 14845; + else + return 14846; + else if (Powered) + return 14847; + else + return 14848; +} +BlockState Lectern(); +eBlockFace Facing(BlockState Block); +bool HasBook(BlockState Block); +bool Powered(BlockState Block); +} // namespace Lectern +namespace Lever +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState Lever(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3783; + else + return 3784; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3785; + else + return 3786; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3787; + else + return 3788; + else if (Powered) + return 3789; + else + return 3790; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3791; + else + return 3792; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3793; + else + return 3794; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3795; + else + return 3796; + else if (Powered) + return 3797; + else + return 3798; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3799; + else + return 3800; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3801; + else + return 3802; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3803; + else + return 3804; + else if (Powered) + return 3805; + else + return 3806; +} +BlockState Lever(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace Lever +namespace LightBlueBanner +{ +constexpr BlockState LightBlueBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7945; + else if (Rotation == 1) + return 7946; + else if (Rotation == 2) + return 7947; + else if (Rotation == 3) + return 7948; + else if (Rotation == 4) + return 7949; + else if (Rotation == 5) + return 7950; + else if (Rotation == 6) + return 7951; + else if (Rotation == 7) + return 7952; + else if (Rotation == 8) + return 7953; + else if (Rotation == 9) + return 7954; + else if (Rotation == 10) + return 7955; + else if (Rotation == 11) + return 7956; + else if (Rotation == 12) + return 7957; + else if (Rotation == 13) + return 7958; + else if (Rotation == 14) + return 7959; + else + return 7960; +} +BlockState LightBlueBanner(); +unsigned char Rotation(BlockState Block); +} // namespace LightBlueBanner +namespace LightBlueBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState LightBlueBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1097; + else + return 1098; + else if (Part == Part::Head) + return 1099; + else + return 1100; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1101; + else + return 1102; + else if (Part == Part::Head) + return 1103; + else + return 1104; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1105; + else + return 1106; + else if (Part == Part::Head) + return 1107; + else + return 1108; + else if (Occupied) + if (Part == Part::Head) + return 1109; + else + return 1110; + else if (Part == Part::Head) + return 1111; + else + return 1112; +} +BlockState LightBlueBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace LightBlueBed +namespace LightBlueCarpet +{ +constexpr BlockState LightBlueCarpet() +{ + return 7869; +} +} // namespace LightBlueCarpet +namespace LightBlueConcrete +{ +constexpr BlockState LightBlueConcrete() +{ + return 9441; +} +} // namespace LightBlueConcrete +namespace LightBlueConcretePowder +{ +constexpr BlockState LightBlueConcretePowder() +{ + return 9457; +} +} // namespace LightBlueConcretePowder +namespace LightBlueGlazedTerracotta +{ +constexpr BlockState LightBlueGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9386; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9387; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9388; + else + return 9389; +} +BlockState LightBlueGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace LightBlueGlazedTerracotta +namespace LightBlueShulkerBox +{ +constexpr BlockState LightBlueShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9296; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9297; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9298; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9299; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9300; + else + return 9301; +} +BlockState LightBlueShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace LightBlueShulkerBox +namespace LightBlueStainedGlass +{ +constexpr BlockState LightBlueStainedGlass() +{ + return 4098; +} +} // namespace LightBlueStainedGlass +namespace LightBlueStainedGlassPane +{ +constexpr BlockState LightBlueStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 6961; + else + return 6962; + else if (West) + return 6965; + else + return 6966; + else if (South) + if (West) + return 6969; + else + return 6970; + else if (West) + return 6973; + else + return 6974; + else if (North) + if (South) + if (West) + return 6977; + else + return 6978; + else if (West) + return 6981; + else + return 6982; + else if (South) + if (West) + return 6985; + else + return 6986; + else if (West) + return 6989; + else + return 6990; +} +BlockState LightBlueStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace LightBlueStainedGlassPane +namespace LightBlueTerracotta +{ +constexpr BlockState LightBlueTerracotta() +{ + return 6850; +} +} // namespace LightBlueTerracotta +namespace LightBlueWallBanner +{ +constexpr BlockState LightBlueWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8165; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8166; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8167; + else + return 8168; +} +BlockState LightBlueWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace LightBlueWallBanner +namespace LightBlueWool +{ +constexpr BlockState LightBlueWool() +{ + return 1387; +} +} // namespace LightBlueWool +namespace LightGrayBanner +{ +constexpr BlockState LightGrayBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8025; + else if (Rotation == 1) + return 8026; + else if (Rotation == 2) + return 8027; + else if (Rotation == 3) + return 8028; + else if (Rotation == 4) + return 8029; + else if (Rotation == 5) + return 8030; + else if (Rotation == 6) + return 8031; + else if (Rotation == 7) + return 8032; + else if (Rotation == 8) + return 8033; + else if (Rotation == 9) + return 8034; + else if (Rotation == 10) + return 8035; + else if (Rotation == 11) + return 8036; + else if (Rotation == 12) + return 8037; + else if (Rotation == 13) + return 8038; + else if (Rotation == 14) + return 8039; + else + return 8040; +} +BlockState LightGrayBanner(); +unsigned char Rotation(BlockState Block); +} // namespace LightGrayBanner +namespace LightGrayBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState LightGrayBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1177; + else + return 1178; + else if (Part == Part::Head) + return 1179; + else + return 1180; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1181; + else + return 1182; + else if (Part == Part::Head) + return 1183; + else + return 1184; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1185; + else + return 1186; + else if (Part == Part::Head) + return 1187; + else + return 1188; + else if (Occupied) + if (Part == Part::Head) + return 1189; + else + return 1190; + else if (Part == Part::Head) + return 1191; + else + return 1192; +} +BlockState LightGrayBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace LightGrayBed +namespace LightGrayCarpet +{ +constexpr BlockState LightGrayCarpet() +{ + return 7874; +} +} // namespace LightGrayCarpet +namespace LightGrayConcrete +{ +constexpr BlockState LightGrayConcrete() +{ + return 9446; +} +} // namespace LightGrayConcrete +namespace LightGrayConcretePowder +{ +constexpr BlockState LightGrayConcretePowder() +{ + return 9462; +} +} // namespace LightGrayConcretePowder +namespace LightGrayGlazedTerracotta +{ +constexpr BlockState LightGrayGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9406; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9407; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9408; + else + return 9409; +} +BlockState LightGrayGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace LightGrayGlazedTerracotta +namespace LightGrayShulkerBox +{ +constexpr BlockState LightGrayShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9326; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9327; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9328; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9329; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9330; + else + return 9331; +} +BlockState LightGrayShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace LightGrayShulkerBox +namespace LightGrayStainedGlass +{ +constexpr BlockState LightGrayStainedGlass() +{ + return 4103; +} +} // namespace LightGrayStainedGlass +namespace LightGrayStainedGlassPane +{ +constexpr BlockState LightGrayStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7121; + else + return 7122; + else if (West) + return 7125; + else + return 7126; + else if (South) + if (West) + return 7129; + else + return 7130; + else if (West) + return 7133; + else + return 7134; + else if (North) + if (South) + if (West) + return 7137; + else + return 7138; + else if (West) + return 7141; + else + return 7142; + else if (South) + if (West) + return 7145; + else + return 7146; + else if (West) + return 7149; + else + return 7150; +} +BlockState LightGrayStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace LightGrayStainedGlassPane +namespace LightGrayTerracotta +{ +constexpr BlockState LightGrayTerracotta() +{ + return 6855; +} +} // namespace LightGrayTerracotta +namespace LightGrayWallBanner +{ +constexpr BlockState LightGrayWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8185; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8186; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8187; + else + return 8188; +} +BlockState LightGrayWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace LightGrayWallBanner +namespace LightGrayWool +{ +constexpr BlockState LightGrayWool() +{ + return 1392; +} +} // namespace LightGrayWool +namespace LightWeightedPressurePlate +{ +constexpr BlockState LightWeightedPressurePlate(const unsigned char Power) +{ + if (Power == 0) + return 6646; + else if (Power == 1) + return 6647; + else if (Power == 2) + return 6648; + else if (Power == 3) + return 6649; + else if (Power == 4) + return 6650; + else if (Power == 5) + return 6651; + else if (Power == 6) + return 6652; + else if (Power == 7) + return 6653; + else if (Power == 8) + return 6654; + else if (Power == 9) + return 6655; + else if (Power == 10) + return 6656; + else if (Power == 11) + return 6657; + else if (Power == 12) + return 6658; + else if (Power == 13) + return 6659; + else if (Power == 14) + return 6660; + else + return 6661; +} +BlockState LightWeightedPressurePlate(); +unsigned char Power(BlockState Block); +} // namespace LightWeightedPressurePlate +namespace Lilac +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState Lilac(const enum Half Half) +{ + if (Half == Half::Upper) + return 7887; + else + return 7888; +} +BlockState Lilac(); +enum Half Half(BlockState Block); +} // namespace Lilac +namespace LilyOfTheValley +{ +constexpr BlockState LilyOfTheValley() +{ + return 1424; +} +} // namespace LilyOfTheValley +namespace LilyPad +{ +constexpr BlockState LilyPad() +{ + return 5014; +} +} // namespace LilyPad +namespace LimeBanner +{ +constexpr BlockState LimeBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7977; + else if (Rotation == 1) + return 7978; + else if (Rotation == 2) + return 7979; + else if (Rotation == 3) + return 7980; + else if (Rotation == 4) + return 7981; + else if (Rotation == 5) + return 7982; + else if (Rotation == 6) + return 7983; + else if (Rotation == 7) + return 7984; + else if (Rotation == 8) + return 7985; + else if (Rotation == 9) + return 7986; + else if (Rotation == 10) + return 7987; + else if (Rotation == 11) + return 7988; + else if (Rotation == 12) + return 7989; + else if (Rotation == 13) + return 7990; + else if (Rotation == 14) + return 7991; + else + return 7992; +} +BlockState LimeBanner(); +unsigned char Rotation(BlockState Block); +} // namespace LimeBanner +namespace LimeBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState LimeBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1129; + else + return 1130; + else if (Part == Part::Head) + return 1131; + else + return 1132; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1133; + else + return 1134; + else if (Part == Part::Head) + return 1135; + else + return 1136; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1137; + else + return 1138; + else if (Part == Part::Head) + return 1139; + else + return 1140; + else if (Occupied) + if (Part == Part::Head) + return 1141; + else + return 1142; + else if (Part == Part::Head) + return 1143; + else + return 1144; +} +BlockState LimeBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace LimeBed +namespace LimeCarpet +{ +constexpr BlockState LimeCarpet() +{ + return 7871; +} +} // namespace LimeCarpet +namespace LimeConcrete +{ +constexpr BlockState LimeConcrete() +{ + return 9443; +} +} // namespace LimeConcrete +namespace LimeConcretePowder +{ +constexpr BlockState LimeConcretePowder() +{ + return 9459; +} +} // namespace LimeConcretePowder +namespace LimeGlazedTerracotta +{ +constexpr BlockState LimeGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9394; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9395; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9396; + else + return 9397; +} +BlockState LimeGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace LimeGlazedTerracotta +namespace LimeShulkerBox +{ +constexpr BlockState LimeShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9308; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9309; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9310; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9311; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9312; + else + return 9313; +} +BlockState LimeShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace LimeShulkerBox +namespace LimeStainedGlass +{ +constexpr BlockState LimeStainedGlass() +{ + return 4100; +} +} // namespace LimeStainedGlass +namespace LimeStainedGlassPane +{ +constexpr BlockState LimeStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7025; + else + return 7026; + else if (West) + return 7029; + else + return 7030; + else if (South) + if (West) + return 7033; + else + return 7034; + else if (West) + return 7037; + else + return 7038; + else if (North) + if (South) + if (West) + return 7041; + else + return 7042; + else if (West) + return 7045; + else + return 7046; + else if (South) + if (West) + return 7049; + else + return 7050; + else if (West) + return 7053; + else + return 7054; +} +BlockState LimeStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace LimeStainedGlassPane +namespace LimeTerracotta +{ +constexpr BlockState LimeTerracotta() +{ + return 6852; +} +} // namespace LimeTerracotta +namespace LimeWallBanner +{ +constexpr BlockState LimeWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8173; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8174; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8175; + else + return 8176; +} +BlockState LimeWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace LimeWallBanner +namespace LimeWool +{ +constexpr BlockState LimeWool() +{ + return 1389; +} +} // namespace LimeWool +namespace Lodestone +{ +constexpr BlockState Lodestone() +{ + return 15838; +} +} // namespace Lodestone +namespace Loom +{ +constexpr BlockState Loom(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 14787; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 14788; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 14789; + else + return 14790; +} +BlockState Loom(); +eBlockFace Facing(BlockState Block); +} // namespace Loom +namespace MagentaBanner +{ +constexpr BlockState MagentaBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7929; + else if (Rotation == 1) + return 7930; + else if (Rotation == 2) + return 7931; + else if (Rotation == 3) + return 7932; + else if (Rotation == 4) + return 7933; + else if (Rotation == 5) + return 7934; + else if (Rotation == 6) + return 7935; + else if (Rotation == 7) + return 7936; + else if (Rotation == 8) + return 7937; + else if (Rotation == 9) + return 7938; + else if (Rotation == 10) + return 7939; + else if (Rotation == 11) + return 7940; + else if (Rotation == 12) + return 7941; + else if (Rotation == 13) + return 7942; + else if (Rotation == 14) + return 7943; + else + return 7944; +} +BlockState MagentaBanner(); +unsigned char Rotation(BlockState Block); +} // namespace MagentaBanner +namespace MagentaBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState MagentaBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1081; + else + return 1082; + else if (Part == Part::Head) + return 1083; + else + return 1084; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1085; + else + return 1086; + else if (Part == Part::Head) + return 1087; + else + return 1088; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1089; + else + return 1090; + else if (Part == Part::Head) + return 1091; + else + return 1092; + else if (Occupied) + if (Part == Part::Head) + return 1093; + else + return 1094; + else if (Part == Part::Head) + return 1095; + else + return 1096; +} +BlockState MagentaBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace MagentaBed +namespace MagentaCarpet +{ +constexpr BlockState MagentaCarpet() +{ + return 7868; +} +} // namespace MagentaCarpet +namespace MagentaConcrete +{ +constexpr BlockState MagentaConcrete() +{ + return 9440; +} +} // namespace MagentaConcrete +namespace MagentaConcretePowder +{ +constexpr BlockState MagentaConcretePowder() +{ + return 9456; +} +} // namespace MagentaConcretePowder +namespace MagentaGlazedTerracotta +{ +constexpr BlockState MagentaGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9382; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9383; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9384; + else + return 9385; +} +BlockState MagentaGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace MagentaGlazedTerracotta +namespace MagentaShulkerBox +{ +constexpr BlockState MagentaShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9290; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9291; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9292; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9293; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9294; + else + return 9295; +} +BlockState MagentaShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace MagentaShulkerBox +namespace MagentaStainedGlass +{ +constexpr BlockState MagentaStainedGlass() +{ + return 4097; +} +} // namespace MagentaStainedGlass +namespace MagentaStainedGlassPane +{ +constexpr BlockState MagentaStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 6929; + else + return 6930; + else if (West) + return 6933; + else + return 6934; + else if (South) + if (West) + return 6937; + else + return 6938; + else if (West) + return 6941; + else + return 6942; + else if (North) + if (South) + if (West) + return 6945; + else + return 6946; + else if (West) + return 6949; + else + return 6950; + else if (South) + if (West) + return 6953; + else + return 6954; + else if (West) + return 6957; + else + return 6958; +} +BlockState MagentaStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace MagentaStainedGlassPane +namespace MagentaTerracotta +{ +constexpr BlockState MagentaTerracotta() +{ + return 6849; +} +} // namespace MagentaTerracotta +namespace MagentaWallBanner +{ +constexpr BlockState MagentaWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8161; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8162; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8163; + else + return 8164; +} +BlockState MagentaWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace MagentaWallBanner +namespace MagentaWool +{ +constexpr BlockState MagentaWool() +{ + return 1386; +} +} // namespace MagentaWool +namespace MagmaBlock +{ +constexpr BlockState MagmaBlock() +{ + return 9253; +} +} // namespace MagmaBlock +namespace Melon +{ +constexpr BlockState Melon() +{ + return 4763; +} +} // namespace Melon +namespace MelonStem +{ +constexpr BlockState MelonStem(const unsigned char Age) +{ + if (Age == 0) + return 4780; + else if (Age == 1) + return 4781; + else if (Age == 2) + return 4782; + else if (Age == 3) + return 4783; + else if (Age == 4) + return 4784; + else if (Age == 5) + return 4785; + else if (Age == 6) + return 4786; + else + return 4787; +} +BlockState MelonStem(); +unsigned char Age(BlockState Block); +} // namespace MelonStem +namespace MossyCobblestone +{ +constexpr BlockState MossyCobblestone() +{ + return 1433; +} +} // namespace MossyCobblestone +namespace MossyCobblestoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState MossyCobblestoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10814; + else if (Type == Type::Bottom) + return 10816; + else + return 10818; +} +BlockState MossyCobblestoneSlab(); +enum Type Type(BlockState Block); +} // namespace MossyCobblestoneSlab +namespace MossyCobblestoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState MossyCobblestoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9990; + else if (Shape == Shape::InnerLeft) + return 9992; + else if (Shape == Shape::InnerRight) + return 9994; + else if (Shape == Shape::OuterLeft) + return 9996; + else + return 9998; + else if (Shape == Shape::Straight) + return 10000; + else if (Shape == Shape::InnerLeft) + return 10002; + else if (Shape == Shape::InnerRight) + return 10004; + else if (Shape == Shape::OuterLeft) + return 10006; + else + return 10008; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10010; + else if (Shape == Shape::InnerLeft) + return 10012; + else if (Shape == Shape::InnerRight) + return 10014; + else if (Shape == Shape::OuterLeft) + return 10016; + else + return 10018; + else if (Shape == Shape::Straight) + return 10020; + else if (Shape == Shape::InnerLeft) + return 10022; + else if (Shape == Shape::InnerRight) + return 10024; + else if (Shape == Shape::OuterLeft) + return 10026; + else + return 10028; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10030; + else if (Shape == Shape::InnerLeft) + return 10032; + else if (Shape == Shape::InnerRight) + return 10034; + else if (Shape == Shape::OuterLeft) + return 10036; + else + return 10038; + else if (Shape == Shape::Straight) + return 10040; + else if (Shape == Shape::InnerLeft) + return 10042; + else if (Shape == Shape::InnerRight) + return 10044; + else if (Shape == Shape::OuterLeft) + return 10046; + else + return 10048; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10050; + else if (Shape == Shape::InnerLeft) + return 10052; + else if (Shape == Shape::InnerRight) + return 10054; + else if (Shape == Shape::OuterLeft) + return 10056; + else + return 10058; + else if (Shape == Shape::Straight) + return 10060; + else if (Shape == Shape::InnerLeft) + return 10062; + else if (Shape == Shape::InnerRight) + return 10064; + else if (Shape == Shape::OuterLeft) + return 10066; + else + return 10068; +} +BlockState MossyCobblestoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace MossyCobblestoneStairs +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 BlockState MossyCobblestoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 5984; + else if (West == West::Low) + return 5985; + else + return 5986; + else if (West == West::None) + return 5990; + else if (West == West::Low) + return 5991; + else + return 5992; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 5996; + else if (West == West::Low) + return 5997; + else + return 5998; + else if (West == West::None) + return 6002; + else if (West == West::Low) + return 6003; + else + return 6004; + else if (Up) + if (West == West::None) + return 6008; + else if (West == West::Low) + return 6009; + else + return 6010; + else if (West == West::None) + return 6014; + else if (West == West::Low) + return 6015; + else + return 6016; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 6020; + else if (West == West::Low) + return 6021; + else + return 6022; + else if (West == West::None) + return 6026; + else if (West == West::Low) + return 6027; + else + return 6028; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6032; + else if (West == West::Low) + return 6033; + else + return 6034; + else if (West == West::None) + return 6038; + else if (West == West::Low) + return 6039; + else + return 6040; + else if (Up) + if (West == West::None) + return 6044; + else if (West == West::Low) + return 6045; + else + return 6046; + else if (West == West::None) + return 6050; + else if (West == West::Low) + return 6051; + else + return 6052; + else if (South == South::None) + if (Up) + if (West == West::None) + return 6056; + else if (West == West::Low) + return 6057; + else + return 6058; + else if (West == West::None) + return 6062; + else if (West == West::Low) + return 6063; + else + return 6064; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6068; + else if (West == West::Low) + return 6069; + else + return 6070; + else if (West == West::None) + return 6074; + else if (West == West::Low) + return 6075; + else + return 6076; + else if (Up) + if (West == West::None) + return 6080; + else if (West == West::Low) + return 6081; + else + return 6082; + else if (West == West::None) + return 6086; + else if (West == West::Low) + return 6087; + else + return 6088; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 6092; + else if (West == West::Low) + return 6093; + else + return 6094; + else if (West == West::None) + return 6098; + else if (West == West::Low) + return 6099; + else + return 6100; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6104; + else if (West == West::Low) + return 6105; + else + return 6106; + else if (West == West::None) + return 6110; + else if (West == West::Low) + return 6111; + else + return 6112; + else if (Up) + if (West == West::None) + return 6116; + else if (West == West::Low) + return 6117; + else + return 6118; + else if (West == West::None) + return 6122; + else if (West == West::Low) + return 6123; + else + return 6124; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 6128; + else if (West == West::Low) + return 6129; + else + return 6130; + else if (West == West::None) + return 6134; + else if (West == West::Low) + return 6135; + else + return 6136; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6140; + else if (West == West::Low) + return 6141; + else + return 6142; + else if (West == West::None) + return 6146; + else if (West == West::Low) + return 6147; + else + return 6148; + else if (Up) + if (West == West::None) + return 6152; + else if (West == West::Low) + return 6153; + else + return 6154; + else if (West == West::None) + return 6158; + else if (West == West::Low) + return 6159; + else + return 6160; + else if (South == South::None) + if (Up) + if (West == West::None) + return 6164; + else if (West == West::Low) + return 6165; + else + return 6166; + else if (West == West::None) + return 6170; + else if (West == West::Low) + return 6171; + else + return 6172; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6176; + else if (West == West::Low) + return 6177; + else + return 6178; + else if (West == West::None) + return 6182; + else if (West == West::Low) + return 6183; + else + return 6184; + else if (Up) + if (West == West::None) + return 6188; + else if (West == West::Low) + return 6189; + else + return 6190; + else if (West == West::None) + return 6194; + else if (West == West::Low) + return 6195; + else + return 6196; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 6200; + else if (West == West::Low) + return 6201; + else + return 6202; + else if (West == West::None) + return 6206; + else if (West == West::Low) + return 6207; + else + return 6208; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6212; + else if (West == West::Low) + return 6213; + else + return 6214; + else if (West == West::None) + return 6218; + else if (West == West::Low) + return 6219; + else + return 6220; + else if (Up) + if (West == West::None) + return 6224; + else if (West == West::Low) + return 6225; + else + return 6226; + else if (West == West::None) + return 6230; + else if (West == West::Low) + return 6231; + else + return 6232; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 6236; + else if (West == West::Low) + return 6237; + else + return 6238; + else if (West == West::None) + return 6242; + else if (West == West::Low) + return 6243; + else + return 6244; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6248; + else if (West == West::Low) + return 6249; + else + return 6250; + else if (West == West::None) + return 6254; + else if (West == West::Low) + return 6255; + else + return 6256; + else if (Up) + if (West == West::None) + return 6260; + else if (West == West::Low) + return 6261; + else + return 6262; + else if (West == West::None) + return 6266; + else if (West == West::Low) + return 6267; + else + return 6268; + else if (South == South::None) + if (Up) + if (West == West::None) + return 6272; + else if (West == West::Low) + return 6273; + else + return 6274; + else if (West == West::None) + return 6278; + else if (West == West::Low) + return 6279; + else + return 6280; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 6284; + else if (West == West::Low) + return 6285; + else + return 6286; + else if (West == West::None) + return 6290; + else if (West == West::Low) + return 6291; + else + return 6292; + else if (Up) + if (West == West::None) + return 6296; + else if (West == West::Low) + return 6297; + else + return 6298; + else if (West == West::None) + return 6302; + else if (West == West::Low) + return 6303; + else + return 6304; +} +BlockState MossyCobblestoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace MossyCobblestoneWall +namespace MossyStoneBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState MossyStoneBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10802; + else if (Type == Type::Bottom) + return 10804; + else + return 10806; +} +BlockState MossyStoneBrickSlab(); +enum Type Type(BlockState Block); +} // namespace MossyStoneBrickSlab +namespace MossyStoneBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState MossyStoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9830; + else if (Shape == Shape::InnerLeft) + return 9832; + else if (Shape == Shape::InnerRight) + return 9834; + else if (Shape == Shape::OuterLeft) + return 9836; + else + return 9838; + else if (Shape == Shape::Straight) + return 9840; + else if (Shape == Shape::InnerLeft) + return 9842; + else if (Shape == Shape::InnerRight) + return 9844; + else if (Shape == Shape::OuterLeft) + return 9846; + else + return 9848; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9850; + else if (Shape == Shape::InnerLeft) + return 9852; + else if (Shape == Shape::InnerRight) + return 9854; + else if (Shape == Shape::OuterLeft) + return 9856; + else + return 9858; + else if (Shape == Shape::Straight) + return 9860; + else if (Shape == Shape::InnerLeft) + return 9862; + else if (Shape == Shape::InnerRight) + return 9864; + else if (Shape == Shape::OuterLeft) + return 9866; + else + return 9868; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9870; + else if (Shape == Shape::InnerLeft) + return 9872; + else if (Shape == Shape::InnerRight) + return 9874; + else if (Shape == Shape::OuterLeft) + return 9876; + else + return 9878; + else if (Shape == Shape::Straight) + return 9880; + else if (Shape == Shape::InnerLeft) + return 9882; + else if (Shape == Shape::InnerRight) + return 9884; + else if (Shape == Shape::OuterLeft) + return 9886; + else + return 9888; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9890; + else if (Shape == Shape::InnerLeft) + return 9892; + else if (Shape == Shape::InnerRight) + return 9894; + else if (Shape == Shape::OuterLeft) + return 9896; + else + return 9898; + else if (Shape == Shape::Straight) + return 9900; + else if (Shape == Shape::InnerLeft) + return 9902; + else if (Shape == Shape::InnerRight) + return 9904; + else if (Shape == Shape::OuterLeft) + return 9906; + else + return 9908; +} +BlockState MossyStoneBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace MossyStoneBrickStairs +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 BlockState MossyStoneBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11842; + else if (West == West::Low) + return 11843; + else + return 11844; + else if (West == West::None) + return 11848; + else if (West == West::Low) + return 11849; + else + return 11850; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11854; + else if (West == West::Low) + return 11855; + else + return 11856; + else if (West == West::None) + return 11860; + else if (West == West::Low) + return 11861; + else + return 11862; + else if (Up) + if (West == West::None) + return 11866; + else if (West == West::Low) + return 11867; + else + return 11868; + else if (West == West::None) + return 11872; + else if (West == West::Low) + return 11873; + else + return 11874; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11878; + else if (West == West::Low) + return 11879; + else + return 11880; + else if (West == West::None) + return 11884; + else if (West == West::Low) + return 11885; + else + return 11886; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11890; + else if (West == West::Low) + return 11891; + else + return 11892; + else if (West == West::None) + return 11896; + else if (West == West::Low) + return 11897; + else + return 11898; + else if (Up) + if (West == West::None) + return 11902; + else if (West == West::Low) + return 11903; + else + return 11904; + else if (West == West::None) + return 11908; + else if (West == West::Low) + return 11909; + else + return 11910; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11914; + else if (West == West::Low) + return 11915; + else + return 11916; + else if (West == West::None) + return 11920; + else if (West == West::Low) + return 11921; + else + return 11922; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11926; + else if (West == West::Low) + return 11927; + else + return 11928; + else if (West == West::None) + return 11932; + else if (West == West::Low) + return 11933; + else + return 11934; + else if (Up) + if (West == West::None) + return 11938; + else if (West == West::Low) + return 11939; + else + return 11940; + else if (West == West::None) + return 11944; + else if (West == West::Low) + return 11945; + else + return 11946; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11950; + else if (West == West::Low) + return 11951; + else + return 11952; + else if (West == West::None) + return 11956; + else if (West == West::Low) + return 11957; + else + return 11958; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11962; + else if (West == West::Low) + return 11963; + else + return 11964; + else if (West == West::None) + return 11968; + else if (West == West::Low) + return 11969; + else + return 11970; + else if (Up) + if (West == West::None) + return 11974; + else if (West == West::Low) + return 11975; + else + return 11976; + else if (West == West::None) + return 11980; + else if (West == West::Low) + return 11981; + else + return 11982; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11986; + else if (West == West::Low) + return 11987; + else + return 11988; + else if (West == West::None) + return 11992; + else if (West == West::Low) + return 11993; + else + return 11994; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11998; + else if (West == West::Low) + return 11999; + else + return 12000; + else if (West == West::None) + return 12004; + else if (West == West::Low) + return 12005; + else + return 12006; + else if (Up) + if (West == West::None) + return 12010; + else if (West == West::Low) + return 12011; + else + return 12012; + else if (West == West::None) + return 12016; + else if (West == West::Low) + return 12017; + else + return 12018; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12022; + else if (West == West::Low) + return 12023; + else + return 12024; + else if (West == West::None) + return 12028; + else if (West == West::Low) + return 12029; + else + return 12030; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12034; + else if (West == West::Low) + return 12035; + else + return 12036; + else if (West == West::None) + return 12040; + else if (West == West::Low) + return 12041; + else + return 12042; + else if (Up) + if (West == West::None) + return 12046; + else if (West == West::Low) + return 12047; + else + return 12048; + else if (West == West::None) + return 12052; + else if (West == West::Low) + return 12053; + else + return 12054; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12058; + else if (West == West::Low) + return 12059; + else + return 12060; + else if (West == West::None) + return 12064; + else if (West == West::Low) + return 12065; + else + return 12066; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12070; + else if (West == West::Low) + return 12071; + else + return 12072; + else if (West == West::None) + return 12076; + else if (West == West::Low) + return 12077; + else + return 12078; + else if (Up) + if (West == West::None) + return 12082; + else if (West == West::Low) + return 12083; + else + return 12084; + else if (West == West::None) + return 12088; + else if (West == West::Low) + return 12089; + else + return 12090; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12094; + else if (West == West::Low) + return 12095; + else + return 12096; + else if (West == West::None) + return 12100; + else if (West == West::Low) + return 12101; + else + return 12102; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12106; + else if (West == West::Low) + return 12107; + else + return 12108; + else if (West == West::None) + return 12112; + else if (West == West::Low) + return 12113; + else + return 12114; + else if (Up) + if (West == West::None) + return 12118; + else if (West == West::Low) + return 12119; + else + return 12120; + else if (West == West::None) + return 12124; + else if (West == West::Low) + return 12125; + else + return 12126; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12130; + else if (West == West::Low) + return 12131; + else + return 12132; + else if (West == West::None) + return 12136; + else if (West == West::Low) + return 12137; + else + return 12138; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12142; + else if (West == West::Low) + return 12143; + else + return 12144; + else if (West == West::None) + return 12148; + else if (West == West::Low) + return 12149; + else + return 12150; + else if (Up) + if (West == West::None) + return 12154; + else if (West == West::Low) + return 12155; + else + return 12156; + else if (West == West::None) + return 12160; + else if (West == West::Low) + return 12161; + else + return 12162; +} +BlockState MossyStoneBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace MossyStoneBrickWall +namespace MossyStoneBricks +{ +constexpr BlockState MossyStoneBricks() +{ + return 4496; +} +} // namespace MossyStoneBricks +namespace MovingPiston +{ +enum class Type +{ + Normal, + Sticky +}; +constexpr BlockState MovingPiston(const eBlockFace Facing, const enum Type Type) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Type == Type::Normal) + return 1400; + else + return 1401; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Type == Type::Normal) + return 1402; + else + return 1403; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Type == Type::Normal) + return 1404; + else + return 1405; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Type == Type::Normal) + return 1406; + else + return 1407; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Type == Type::Normal) + return 1408; + else + return 1409; + else if (Type == Type::Normal) + return 1410; + else + return 1411; +} +BlockState MovingPiston(); +eBlockFace Facing(BlockState Block); +enum Type Type(BlockState Block); +} // namespace MovingPiston +namespace MushroomStem +{ +constexpr BlockState MushroomStem( + const bool Down, + const bool East, + const bool North, + const bool South, + const bool Up, + const bool West +) +{ + if (Down) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 4633; + else + return 4634; + else if (West) + return 4635; + else + return 4636; + else if (Up) + if (West) + return 4637; + else + return 4638; + else if (West) + return 4639; + else + return 4640; + else if (South) + if (Up) + if (West) + return 4641; + else + return 4642; + else if (West) + return 4643; + else + return 4644; + else if (Up) + if (West) + return 4645; + else + return 4646; + else if (West) + return 4647; + else + return 4648; + else if (North) + if (South) + if (Up) + if (West) + return 4649; + else + return 4650; + else if (West) + return 4651; + else + return 4652; + else if (Up) + if (West) + return 4653; + else + return 4654; + else if (West) + return 4655; + else + return 4656; + else if (South) + if (Up) + if (West) + return 4657; + else + return 4658; + else if (West) + return 4659; + else + return 4660; + else if (Up) + if (West) + return 4661; + else + return 4662; + else if (West) + return 4663; + else + return 4664; + else if (East) + if (North) + if (South) + if (Up) + if (West) + return 4665; + else + return 4666; + else if (West) + return 4667; + else + return 4668; + else if (Up) + if (West) + return 4669; + else + return 4670; + else if (West) + return 4671; + else + return 4672; + else if (South) + if (Up) + if (West) + return 4673; + else + return 4674; + else if (West) + return 4675; + else + return 4676; + else if (Up) + if (West) + return 4677; + else + return 4678; + else if (West) + return 4679; + else + return 4680; + else if (North) + if (South) + if (Up) + if (West) + return 4681; + else + return 4682; + else if (West) + return 4683; + else + return 4684; + else if (Up) + if (West) + return 4685; + else + return 4686; + else if (West) + return 4687; + else + return 4688; + else if (South) + if (Up) + if (West) + return 4689; + else + return 4690; + else if (West) + return 4691; + else + return 4692; + else if (Up) + if (West) + return 4693; + else + return 4694; + else if (West) + return 4695; + else + return 4696; +} +BlockState MushroomStem(); +bool Down(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace MushroomStem +namespace Mycelium +{ +constexpr BlockState Mycelium(const bool Snowy) +{ + if (Snowy) + return 5012; + else + return 5013; +} +BlockState Mycelium(); +bool Snowy(BlockState Block); +} // namespace Mycelium +namespace NetherBrickFence +{ +constexpr BlockState NetherBrickFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 5018; + else + return 5019; + else if (West) + return 5022; + else + return 5023; + else if (South) + if (West) + return 5026; + else + return 5027; + else if (West) + return 5030; + else + return 5031; + else if (North) + if (South) + if (West) + return 5034; + else + return 5035; + else if (West) + return 5038; + else + return 5039; + else if (South) + if (West) + return 5042; + else + return 5043; + else if (West) + return 5046; + else + return 5047; +} +BlockState NetherBrickFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace NetherBrickFence +namespace NetherBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState NetherBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8385; + else if (Type == Type::Bottom) + return 8387; + else + return 8389; +} +BlockState NetherBrickSlab(); +enum Type Type(BlockState Block); +} // namespace NetherBrickSlab +namespace NetherBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState NetherBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5049; + else if (Shape == Shape::InnerLeft) + return 5051; + else if (Shape == Shape::InnerRight) + return 5053; + else if (Shape == Shape::OuterLeft) + return 5055; + else + return 5057; + else if (Shape == Shape::Straight) + return 5059; + else if (Shape == Shape::InnerLeft) + return 5061; + else if (Shape == Shape::InnerRight) + return 5063; + else if (Shape == Shape::OuterLeft) + return 5065; + else + return 5067; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5069; + else if (Shape == Shape::InnerLeft) + return 5071; + else if (Shape == Shape::InnerRight) + return 5073; + else if (Shape == Shape::OuterLeft) + return 5075; + else + return 5077; + else if (Shape == Shape::Straight) + return 5079; + else if (Shape == Shape::InnerLeft) + return 5081; + else if (Shape == Shape::InnerRight) + return 5083; + else if (Shape == Shape::OuterLeft) + return 5085; + else + return 5087; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5089; + else if (Shape == Shape::InnerLeft) + return 5091; + else if (Shape == Shape::InnerRight) + return 5093; + else if (Shape == Shape::OuterLeft) + return 5095; + else + return 5097; + else if (Shape == Shape::Straight) + return 5099; + else if (Shape == Shape::InnerLeft) + return 5101; + else if (Shape == Shape::InnerRight) + return 5103; + else if (Shape == Shape::OuterLeft) + return 5105; + else + return 5107; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5109; + else if (Shape == Shape::InnerLeft) + return 5111; + else if (Shape == Shape::InnerRight) + return 5113; + else if (Shape == Shape::OuterLeft) + return 5115; + else + return 5117; + else if (Shape == Shape::Straight) + return 5119; + else if (Shape == Shape::InnerLeft) + return 5121; + else if (Shape == Shape::InnerRight) + return 5123; + else if (Shape == Shape::OuterLeft) + return 5125; + else + return 5127; +} +BlockState NetherBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace NetherBrickStairs +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 BlockState NetherBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12814; + else if (West == West::Low) + return 12815; + else + return 12816; + else if (West == West::None) + return 12820; + else if (West == West::Low) + return 12821; + else + return 12822; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12826; + else if (West == West::Low) + return 12827; + else + return 12828; + else if (West == West::None) + return 12832; + else if (West == West::Low) + return 12833; + else + return 12834; + else if (Up) + if (West == West::None) + return 12838; + else if (West == West::Low) + return 12839; + else + return 12840; + else if (West == West::None) + return 12844; + else if (West == West::Low) + return 12845; + else + return 12846; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12850; + else if (West == West::Low) + return 12851; + else + return 12852; + else if (West == West::None) + return 12856; + else if (West == West::Low) + return 12857; + else + return 12858; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12862; + else if (West == West::Low) + return 12863; + else + return 12864; + else if (West == West::None) + return 12868; + else if (West == West::Low) + return 12869; + else + return 12870; + else if (Up) + if (West == West::None) + return 12874; + else if (West == West::Low) + return 12875; + else + return 12876; + else if (West == West::None) + return 12880; + else if (West == West::Low) + return 12881; + else + return 12882; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12886; + else if (West == West::Low) + return 12887; + else + return 12888; + else if (West == West::None) + return 12892; + else if (West == West::Low) + return 12893; + else + return 12894; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12898; + else if (West == West::Low) + return 12899; + else + return 12900; + else if (West == West::None) + return 12904; + else if (West == West::Low) + return 12905; + else + return 12906; + else if (Up) + if (West == West::None) + return 12910; + else if (West == West::Low) + return 12911; + else + return 12912; + else if (West == West::None) + return 12916; + else if (West == West::Low) + return 12917; + else + return 12918; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12922; + else if (West == West::Low) + return 12923; + else + return 12924; + else if (West == West::None) + return 12928; + else if (West == West::Low) + return 12929; + else + return 12930; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12934; + else if (West == West::Low) + return 12935; + else + return 12936; + else if (West == West::None) + return 12940; + else if (West == West::Low) + return 12941; + else + return 12942; + else if (Up) + if (West == West::None) + return 12946; + else if (West == West::Low) + return 12947; + else + return 12948; + else if (West == West::None) + return 12952; + else if (West == West::Low) + return 12953; + else + return 12954; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12958; + else if (West == West::Low) + return 12959; + else + return 12960; + else if (West == West::None) + return 12964; + else if (West == West::Low) + return 12965; + else + return 12966; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12970; + else if (West == West::Low) + return 12971; + else + return 12972; + else if (West == West::None) + return 12976; + else if (West == West::Low) + return 12977; + else + return 12978; + else if (Up) + if (West == West::None) + return 12982; + else if (West == West::Low) + return 12983; + else + return 12984; + else if (West == West::None) + return 12988; + else if (West == West::Low) + return 12989; + else + return 12990; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12994; + else if (West == West::Low) + return 12995; + else + return 12996; + else if (West == West::None) + return 13000; + else if (West == West::Low) + return 13001; + else + return 13002; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13006; + else if (West == West::Low) + return 13007; + else + return 13008; + else if (West == West::None) + return 13012; + else if (West == West::Low) + return 13013; + else + return 13014; + else if (Up) + if (West == West::None) + return 13018; + else if (West == West::Low) + return 13019; + else + return 13020; + else if (West == West::None) + return 13024; + else if (West == West::Low) + return 13025; + else + return 13026; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13030; + else if (West == West::Low) + return 13031; + else + return 13032; + else if (West == West::None) + return 13036; + else if (West == West::Low) + return 13037; + else + return 13038; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13042; + else if (West == West::Low) + return 13043; + else + return 13044; + else if (West == West::None) + return 13048; + else if (West == West::Low) + return 13049; + else + return 13050; + else if (Up) + if (West == West::None) + return 13054; + else if (West == West::Low) + return 13055; + else + return 13056; + else if (West == West::None) + return 13060; + else if (West == West::Low) + return 13061; + else + return 13062; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13066; + else if (West == West::Low) + return 13067; + else + return 13068; + else if (West == West::None) + return 13072; + else if (West == West::Low) + return 13073; + else + return 13074; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13078; + else if (West == West::Low) + return 13079; + else + return 13080; + else if (West == West::None) + return 13084; + else if (West == West::Low) + return 13085; + else + return 13086; + else if (Up) + if (West == West::None) + return 13090; + else if (West == West::Low) + return 13091; + else + return 13092; + else if (West == West::None) + return 13096; + else if (West == West::Low) + return 13097; + else + return 13098; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13102; + else if (West == West::Low) + return 13103; + else + return 13104; + else if (West == West::None) + return 13108; + else if (West == West::Low) + return 13109; + else + return 13110; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13114; + else if (West == West::Low) + return 13115; + else + return 13116; + else if (West == West::None) + return 13120; + else if (West == West::Low) + return 13121; + else + return 13122; + else if (Up) + if (West == West::None) + return 13126; + else if (West == West::Low) + return 13127; + else + return 13128; + else if (West == West::None) + return 13132; + else if (West == West::Low) + return 13133; + else + return 13134; +} +BlockState NetherBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace NetherBrickWall +namespace NetherBricks +{ +constexpr BlockState NetherBricks() +{ + return 5015; +} +} // namespace NetherBricks +namespace NetherGoldOre +{ +constexpr BlockState NetherGoldOre() +{ + return 72; +} +} // namespace NetherGoldOre +namespace NetherPortal +{ +enum class Axis +{ + X, + Z +}; +constexpr BlockState NetherPortal(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 4014; + else + return 4015; +} +BlockState NetherPortal(); +enum Axis Axis(BlockState Block); +} // namespace NetherPortal +namespace NetherQuartzOre +{ +constexpr BlockState NetherQuartzOre() +{ + return 6727; +} +} // namespace NetherQuartzOre +namespace NetherSprouts +{ +constexpr BlockState NetherSprouts() +{ + return 14974; +} +} // namespace NetherSprouts +namespace NetherWart +{ +constexpr BlockState NetherWart(const unsigned char Age) +{ + if (Age == 0) + return 5128; + else if (Age == 1) + return 5129; + else if (Age == 2) + return 5130; + else + return 5131; +} +BlockState NetherWart(); +unsigned char Age(BlockState Block); +} // namespace NetherWart +namespace NetherWartBlock +{ +constexpr BlockState NetherWartBlock() +{ + return 9254; +} +} // namespace NetherWartBlock +namespace NetheriteBlock +{ +constexpr BlockState NetheriteBlock() +{ + return 15826; +} +} // namespace NetheriteBlock +namespace Netherrack +{ +constexpr BlockState Netherrack() +{ + return 3999; +} +} // namespace Netherrack +namespace NoteBlock +{ +enum class Instrument +{ + Harp, + Basedrum, + Snare, + Hat, + Bass, + Flute, + Bell, + Guitar, + Chime, + Xylophone, + IronXylophone, + CowBell, + Didgeridoo, + Bit, + Banjo, + Pling +}; +constexpr BlockState NoteBlock(const enum Instrument Instrument, const unsigned char Note, const bool Powered) +{ + if (Instrument == Instrument::Harp) + if (Note == 0) + if (Powered) + return 249; + else + return 250; + else if (Note == 1) + if (Powered) + return 251; + else + return 252; + else if (Note == 2) + if (Powered) + return 253; + else + return 254; + else if (Note == 3) + if (Powered) + return 255; + else + return 256; + else if (Note == 4) + if (Powered) + return 257; + else + return 258; + else if (Note == 5) + if (Powered) + return 259; + else + return 260; + else if (Note == 6) + if (Powered) + return 261; + else + return 262; + else if (Note == 7) + if (Powered) + return 263; + else + return 264; + else if (Note == 8) + if (Powered) + return 265; + else + return 266; + else if (Note == 9) + if (Powered) + return 267; + else + return 268; + else if (Note == 10) + if (Powered) + return 269; + else + return 270; + else if (Note == 11) + if (Powered) + return 271; + else + return 272; + else if (Note == 12) + if (Powered) + return 273; + else + return 274; + else if (Note == 13) + if (Powered) + return 275; + else + return 276; + else if (Note == 14) + if (Powered) + return 277; + else + return 278; + else if (Note == 15) + if (Powered) + return 279; + else + return 280; + else if (Note == 16) + if (Powered) + return 281; + else + return 282; + else if (Note == 17) + if (Powered) + return 283; + else + return 284; + else if (Note == 18) + if (Powered) + return 285; + else + return 286; + else if (Note == 19) + if (Powered) + return 287; + else + return 288; + else if (Note == 20) + if (Powered) + return 289; + else + return 290; + else if (Note == 21) + if (Powered) + return 291; + else + return 292; + else if (Note == 22) + if (Powered) + return 293; + else + return 294; + else if (Note == 23) + if (Powered) + return 295; + else + return 296; + else if (Powered) + return 297; + else + return 298; + else if (Instrument == Instrument::Basedrum) + if (Note == 0) + if (Powered) + return 299; + else + return 300; + else if (Note == 1) + if (Powered) + return 301; + else + return 302; + else if (Note == 2) + if (Powered) + return 303; + else + return 304; + else if (Note == 3) + if (Powered) + return 305; + else + return 306; + else if (Note == 4) + if (Powered) + return 307; + else + return 308; + else if (Note == 5) + if (Powered) + return 309; + else + return 310; + else if (Note == 6) + if (Powered) + return 311; + else + return 312; + else if (Note == 7) + if (Powered) + return 313; + else + return 314; + else if (Note == 8) + if (Powered) + return 315; + else + return 316; + else if (Note == 9) + if (Powered) + return 317; + else + return 318; + else if (Note == 10) + if (Powered) + return 319; + else + return 320; + else if (Note == 11) + if (Powered) + return 321; + else + return 322; + else if (Note == 12) + if (Powered) + return 323; + else + return 324; + else if (Note == 13) + if (Powered) + return 325; + else + return 326; + else if (Note == 14) + if (Powered) + return 327; + else + return 328; + else if (Note == 15) + if (Powered) + return 329; + else + return 330; + else if (Note == 16) + if (Powered) + return 331; + else + return 332; + else if (Note == 17) + if (Powered) + return 333; + else + return 334; + else if (Note == 18) + if (Powered) + return 335; + else + return 336; + else if (Note == 19) + if (Powered) + return 337; + else + return 338; + else if (Note == 20) + if (Powered) + return 339; + else + return 340; + else if (Note == 21) + if (Powered) + return 341; + else + return 342; + else if (Note == 22) + if (Powered) + return 343; + else + return 344; + else if (Note == 23) + if (Powered) + return 345; + else + return 346; + else if (Powered) + return 347; + else + return 348; + else if (Instrument == Instrument::Snare) + if (Note == 0) + if (Powered) + return 349; + else + return 350; + else if (Note == 1) + if (Powered) + return 351; + else + return 352; + else if (Note == 2) + if (Powered) + return 353; + else + return 354; + else if (Note == 3) + if (Powered) + return 355; + else + return 356; + else if (Note == 4) + if (Powered) + return 357; + else + return 358; + else if (Note == 5) + if (Powered) + return 359; + else + return 360; + else if (Note == 6) + if (Powered) + return 361; + else + return 362; + else if (Note == 7) + if (Powered) + return 363; + else + return 364; + else if (Note == 8) + if (Powered) + return 365; + else + return 366; + else if (Note == 9) + if (Powered) + return 367; + else + return 368; + else if (Note == 10) + if (Powered) + return 369; + else + return 370; + else if (Note == 11) + if (Powered) + return 371; + else + return 372; + else if (Note == 12) + if (Powered) + return 373; + else + return 374; + else if (Note == 13) + if (Powered) + return 375; + else + return 376; + else if (Note == 14) + if (Powered) + return 377; + else + return 378; + else if (Note == 15) + if (Powered) + return 379; + else + return 380; + else if (Note == 16) + if (Powered) + return 381; + else + return 382; + else if (Note == 17) + if (Powered) + return 383; + else + return 384; + else if (Note == 18) + if (Powered) + return 385; + else + return 386; + else if (Note == 19) + if (Powered) + return 387; + else + return 388; + else if (Note == 20) + if (Powered) + return 389; + else + return 390; + else if (Note == 21) + if (Powered) + return 391; + else + return 392; + else if (Note == 22) + if (Powered) + return 393; + else + return 394; + else if (Note == 23) + if (Powered) + return 395; + else + return 396; + else if (Powered) + return 397; + else + return 398; + else if (Instrument == Instrument::Hat) + if (Note == 0) + if (Powered) + return 399; + else + return 400; + else if (Note == 1) + if (Powered) + return 401; + else + return 402; + else if (Note == 2) + if (Powered) + return 403; + else + return 404; + else if (Note == 3) + if (Powered) + return 405; + else + return 406; + else if (Note == 4) + if (Powered) + return 407; + else + return 408; + else if (Note == 5) + if (Powered) + return 409; + else + return 410; + else if (Note == 6) + if (Powered) + return 411; + else + return 412; + else if (Note == 7) + if (Powered) + return 413; + else + return 414; + else if (Note == 8) + if (Powered) + return 415; + else + return 416; + else if (Note == 9) + if (Powered) + return 417; + else + return 418; + else if (Note == 10) + if (Powered) + return 419; + else + return 420; + else if (Note == 11) + if (Powered) + return 421; + else + return 422; + else if (Note == 12) + if (Powered) + return 423; + else + return 424; + else if (Note == 13) + if (Powered) + return 425; + else + return 426; + else if (Note == 14) + if (Powered) + return 427; + else + return 428; + else if (Note == 15) + if (Powered) + return 429; + else + return 430; + else if (Note == 16) + if (Powered) + return 431; + else + return 432; + else if (Note == 17) + if (Powered) + return 433; + else + return 434; + else if (Note == 18) + if (Powered) + return 435; + else + return 436; + else if (Note == 19) + if (Powered) + return 437; + else + return 438; + else if (Note == 20) + if (Powered) + return 439; + else + return 440; + else if (Note == 21) + if (Powered) + return 441; + else + return 442; + else if (Note == 22) + if (Powered) + return 443; + else + return 444; + else if (Note == 23) + if (Powered) + return 445; + else + return 446; + else if (Powered) + return 447; + else + return 448; + else if (Instrument == Instrument::Bass) + if (Note == 0) + if (Powered) + return 449; + else + return 450; + else if (Note == 1) + if (Powered) + return 451; + else + return 452; + else if (Note == 2) + if (Powered) + return 453; + else + return 454; + else if (Note == 3) + if (Powered) + return 455; + else + return 456; + else if (Note == 4) + if (Powered) + return 457; + else + return 458; + else if (Note == 5) + if (Powered) + return 459; + else + return 460; + else if (Note == 6) + if (Powered) + return 461; + else + return 462; + else if (Note == 7) + if (Powered) + return 463; + else + return 464; + else if (Note == 8) + if (Powered) + return 465; + else + return 466; + else if (Note == 9) + if (Powered) + return 467; + else + return 468; + else if (Note == 10) + if (Powered) + return 469; + else + return 470; + else if (Note == 11) + if (Powered) + return 471; + else + return 472; + else if (Note == 12) + if (Powered) + return 473; + else + return 474; + else if (Note == 13) + if (Powered) + return 475; + else + return 476; + else if (Note == 14) + if (Powered) + return 477; + else + return 478; + else if (Note == 15) + if (Powered) + return 479; + else + return 480; + else if (Note == 16) + if (Powered) + return 481; + else + return 482; + else if (Note == 17) + if (Powered) + return 483; + else + return 484; + else if (Note == 18) + if (Powered) + return 485; + else + return 486; + else if (Note == 19) + if (Powered) + return 487; + else + return 488; + else if (Note == 20) + if (Powered) + return 489; + else + return 490; + else if (Note == 21) + if (Powered) + return 491; + else + return 492; + else if (Note == 22) + if (Powered) + return 493; + else + return 494; + else if (Note == 23) + if (Powered) + return 495; + else + return 496; + else if (Powered) + return 497; + else + return 498; + else if (Instrument == Instrument::Flute) + if (Note == 0) + if (Powered) + return 499; + else + return 500; + else if (Note == 1) + if (Powered) + return 501; + else + return 502; + else if (Note == 2) + if (Powered) + return 503; + else + return 504; + else if (Note == 3) + if (Powered) + return 505; + else + return 506; + else if (Note == 4) + if (Powered) + return 507; + else + return 508; + else if (Note == 5) + if (Powered) + return 509; + else + return 510; + else if (Note == 6) + if (Powered) + return 511; + else + return 512; + else if (Note == 7) + if (Powered) + return 513; + else + return 514; + else if (Note == 8) + if (Powered) + return 515; + else + return 516; + else if (Note == 9) + if (Powered) + return 517; + else + return 518; + else if (Note == 10) + if (Powered) + return 519; + else + return 520; + else if (Note == 11) + if (Powered) + return 521; + else + return 522; + else if (Note == 12) + if (Powered) + return 523; + else + return 524; + else if (Note == 13) + if (Powered) + return 525; + else + return 526; + else if (Note == 14) + if (Powered) + return 527; + else + return 528; + else if (Note == 15) + if (Powered) + return 529; + else + return 530; + else if (Note == 16) + if (Powered) + return 531; + else + return 532; + else if (Note == 17) + if (Powered) + return 533; + else + return 534; + else if (Note == 18) + if (Powered) + return 535; + else + return 536; + else if (Note == 19) + if (Powered) + return 537; + else + return 538; + else if (Note == 20) + if (Powered) + return 539; + else + return 540; + else if (Note == 21) + if (Powered) + return 541; + else + return 542; + else if (Note == 22) + if (Powered) + return 543; + else + return 544; + else if (Note == 23) + if (Powered) + return 545; + else + return 546; + else if (Powered) + return 547; + else + return 548; + else if (Instrument == Instrument::Bell) + if (Note == 0) + if (Powered) + return 549; + else + return 550; + else if (Note == 1) + if (Powered) + return 551; + else + return 552; + else if (Note == 2) + if (Powered) + return 553; + else + return 554; + else if (Note == 3) + if (Powered) + return 555; + else + return 556; + else if (Note == 4) + if (Powered) + return 557; + else + return 558; + else if (Note == 5) + if (Powered) + return 559; + else + return 560; + else if (Note == 6) + if (Powered) + return 561; + else + return 562; + else if (Note == 7) + if (Powered) + return 563; + else + return 564; + else if (Note == 8) + if (Powered) + return 565; + else + return 566; + else if (Note == 9) + if (Powered) + return 567; + else + return 568; + else if (Note == 10) + if (Powered) + return 569; + else + return 570; + else if (Note == 11) + if (Powered) + return 571; + else + return 572; + else if (Note == 12) + if (Powered) + return 573; + else + return 574; + else if (Note == 13) + if (Powered) + return 575; + else + return 576; + else if (Note == 14) + if (Powered) + return 577; + else + return 578; + else if (Note == 15) + if (Powered) + return 579; + else + return 580; + else if (Note == 16) + if (Powered) + return 581; + else + return 582; + else if (Note == 17) + if (Powered) + return 583; + else + return 584; + else if (Note == 18) + if (Powered) + return 585; + else + return 586; + else if (Note == 19) + if (Powered) + return 587; + else + return 588; + else if (Note == 20) + if (Powered) + return 589; + else + return 590; + else if (Note == 21) + if (Powered) + return 591; + else + return 592; + else if (Note == 22) + if (Powered) + return 593; + else + return 594; + else if (Note == 23) + if (Powered) + return 595; + else + return 596; + else if (Powered) + return 597; + else + return 598; + else if (Instrument == Instrument::Guitar) + if (Note == 0) + if (Powered) + return 599; + else + return 600; + else if (Note == 1) + if (Powered) + return 601; + else + return 602; + else if (Note == 2) + if (Powered) + return 603; + else + return 604; + else if (Note == 3) + if (Powered) + return 605; + else + return 606; + else if (Note == 4) + if (Powered) + return 607; + else + return 608; + else if (Note == 5) + if (Powered) + return 609; + else + return 610; + else if (Note == 6) + if (Powered) + return 611; + else + return 612; + else if (Note == 7) + if (Powered) + return 613; + else + return 614; + else if (Note == 8) + if (Powered) + return 615; + else + return 616; + else if (Note == 9) + if (Powered) + return 617; + else + return 618; + else if (Note == 10) + if (Powered) + return 619; + else + return 620; + else if (Note == 11) + if (Powered) + return 621; + else + return 622; + else if (Note == 12) + if (Powered) + return 623; + else + return 624; + else if (Note == 13) + if (Powered) + return 625; + else + return 626; + else if (Note == 14) + if (Powered) + return 627; + else + return 628; + else if (Note == 15) + if (Powered) + return 629; + else + return 630; + else if (Note == 16) + if (Powered) + return 631; + else + return 632; + else if (Note == 17) + if (Powered) + return 633; + else + return 634; + else if (Note == 18) + if (Powered) + return 635; + else + return 636; + else if (Note == 19) + if (Powered) + return 637; + else + return 638; + else if (Note == 20) + if (Powered) + return 639; + else + return 640; + else if (Note == 21) + if (Powered) + return 641; + else + return 642; + else if (Note == 22) + if (Powered) + return 643; + else + return 644; + else if (Note == 23) + if (Powered) + return 645; + else + return 646; + else if (Powered) + return 647; + else + return 648; + else if (Instrument == Instrument::Chime) + if (Note == 0) + if (Powered) + return 649; + else + return 650; + else if (Note == 1) + if (Powered) + return 651; + else + return 652; + else if (Note == 2) + if (Powered) + return 653; + else + return 654; + else if (Note == 3) + if (Powered) + return 655; + else + return 656; + else if (Note == 4) + if (Powered) + return 657; + else + return 658; + else if (Note == 5) + if (Powered) + return 659; + else + return 660; + else if (Note == 6) + if (Powered) + return 661; + else + return 662; + else if (Note == 7) + if (Powered) + return 663; + else + return 664; + else if (Note == 8) + if (Powered) + return 665; + else + return 666; + else if (Note == 9) + if (Powered) + return 667; + else + return 668; + else if (Note == 10) + if (Powered) + return 669; + else + return 670; + else if (Note == 11) + if (Powered) + return 671; + else + return 672; + else if (Note == 12) + if (Powered) + return 673; + else + return 674; + else if (Note == 13) + if (Powered) + return 675; + else + return 676; + else if (Note == 14) + if (Powered) + return 677; + else + return 678; + else if (Note == 15) + if (Powered) + return 679; + else + return 680; + else if (Note == 16) + if (Powered) + return 681; + else + return 682; + else if (Note == 17) + if (Powered) + return 683; + else + return 684; + else if (Note == 18) + if (Powered) + return 685; + else + return 686; + else if (Note == 19) + if (Powered) + return 687; + else + return 688; + else if (Note == 20) + if (Powered) + return 689; + else + return 690; + else if (Note == 21) + if (Powered) + return 691; + else + return 692; + else if (Note == 22) + if (Powered) + return 693; + else + return 694; + else if (Note == 23) + if (Powered) + return 695; + else + return 696; + else if (Powered) + return 697; + else + return 698; + else if (Instrument == Instrument::Xylophone) + if (Note == 0) + if (Powered) + return 699; + else + return 700; + else if (Note == 1) + if (Powered) + return 701; + else + return 702; + else if (Note == 2) + if (Powered) + return 703; + else + return 704; + else if (Note == 3) + if (Powered) + return 705; + else + return 706; + else if (Note == 4) + if (Powered) + return 707; + else + return 708; + else if (Note == 5) + if (Powered) + return 709; + else + return 710; + else if (Note == 6) + if (Powered) + return 711; + else + return 712; + else if (Note == 7) + if (Powered) + return 713; + else + return 714; + else if (Note == 8) + if (Powered) + return 715; + else + return 716; + else if (Note == 9) + if (Powered) + return 717; + else + return 718; + else if (Note == 10) + if (Powered) + return 719; + else + return 720; + else if (Note == 11) + if (Powered) + return 721; + else + return 722; + else if (Note == 12) + if (Powered) + return 723; + else + return 724; + else if (Note == 13) + if (Powered) + return 725; + else + return 726; + else if (Note == 14) + if (Powered) + return 727; + else + return 728; + else if (Note == 15) + if (Powered) + return 729; + else + return 730; + else if (Note == 16) + if (Powered) + return 731; + else + return 732; + else if (Note == 17) + if (Powered) + return 733; + else + return 734; + else if (Note == 18) + if (Powered) + return 735; + else + return 736; + else if (Note == 19) + if (Powered) + return 737; + else + return 738; + else if (Note == 20) + if (Powered) + return 739; + else + return 740; + else if (Note == 21) + if (Powered) + return 741; + else + return 742; + else if (Note == 22) + if (Powered) + return 743; + else + return 744; + else if (Note == 23) + if (Powered) + return 745; + else + return 746; + else if (Powered) + return 747; + else + return 748; + else if (Instrument == Instrument::IronXylophone) + if (Note == 0) + if (Powered) + return 749; + else + return 750; + else if (Note == 1) + if (Powered) + return 751; + else + return 752; + else if (Note == 2) + if (Powered) + return 753; + else + return 754; + else if (Note == 3) + if (Powered) + return 755; + else + return 756; + else if (Note == 4) + if (Powered) + return 757; + else + return 758; + else if (Note == 5) + if (Powered) + return 759; + else + return 760; + else if (Note == 6) + if (Powered) + return 761; + else + return 762; + else if (Note == 7) + if (Powered) + return 763; + else + return 764; + else if (Note == 8) + if (Powered) + return 765; + else + return 766; + else if (Note == 9) + if (Powered) + return 767; + else + return 768; + else if (Note == 10) + if (Powered) + return 769; + else + return 770; + else if (Note == 11) + if (Powered) + return 771; + else + return 772; + else if (Note == 12) + if (Powered) + return 773; + else + return 774; + else if (Note == 13) + if (Powered) + return 775; + else + return 776; + else if (Note == 14) + if (Powered) + return 777; + else + return 778; + else if (Note == 15) + if (Powered) + return 779; + else + return 780; + else if (Note == 16) + if (Powered) + return 781; + else + return 782; + else if (Note == 17) + if (Powered) + return 783; + else + return 784; + else if (Note == 18) + if (Powered) + return 785; + else + return 786; + else if (Note == 19) + if (Powered) + return 787; + else + return 788; + else if (Note == 20) + if (Powered) + return 789; + else + return 790; + else if (Note == 21) + if (Powered) + return 791; + else + return 792; + else if (Note == 22) + if (Powered) + return 793; + else + return 794; + else if (Note == 23) + if (Powered) + return 795; + else + return 796; + else if (Powered) + return 797; + else + return 798; + else if (Instrument == Instrument::CowBell) + if (Note == 0) + if (Powered) + return 799; + else + return 800; + else if (Note == 1) + if (Powered) + return 801; + else + return 802; + else if (Note == 2) + if (Powered) + return 803; + else + return 804; + else if (Note == 3) + if (Powered) + return 805; + else + return 806; + else if (Note == 4) + if (Powered) + return 807; + else + return 808; + else if (Note == 5) + if (Powered) + return 809; + else + return 810; + else if (Note == 6) + if (Powered) + return 811; + else + return 812; + else if (Note == 7) + if (Powered) + return 813; + else + return 814; + else if (Note == 8) + if (Powered) + return 815; + else + return 816; + else if (Note == 9) + if (Powered) + return 817; + else + return 818; + else if (Note == 10) + if (Powered) + return 819; + else + return 820; + else if (Note == 11) + if (Powered) + return 821; + else + return 822; + else if (Note == 12) + if (Powered) + return 823; + else + return 824; + else if (Note == 13) + if (Powered) + return 825; + else + return 826; + else if (Note == 14) + if (Powered) + return 827; + else + return 828; + else if (Note == 15) + if (Powered) + return 829; + else + return 830; + else if (Note == 16) + if (Powered) + return 831; + else + return 832; + else if (Note == 17) + if (Powered) + return 833; + else + return 834; + else if (Note == 18) + if (Powered) + return 835; + else + return 836; + else if (Note == 19) + if (Powered) + return 837; + else + return 838; + else if (Note == 20) + if (Powered) + return 839; + else + return 840; + else if (Note == 21) + if (Powered) + return 841; + else + return 842; + else if (Note == 22) + if (Powered) + return 843; + else + return 844; + else if (Note == 23) + if (Powered) + return 845; + else + return 846; + else if (Powered) + return 847; + else + return 848; + else if (Instrument == Instrument::Didgeridoo) + if (Note == 0) + if (Powered) + return 849; + else + return 850; + else if (Note == 1) + if (Powered) + return 851; + else + return 852; + else if (Note == 2) + if (Powered) + return 853; + else + return 854; + else if (Note == 3) + if (Powered) + return 855; + else + return 856; + else if (Note == 4) + if (Powered) + return 857; + else + return 858; + else if (Note == 5) + if (Powered) + return 859; + else + return 860; + else if (Note == 6) + if (Powered) + return 861; + else + return 862; + else if (Note == 7) + if (Powered) + return 863; + else + return 864; + else if (Note == 8) + if (Powered) + return 865; + else + return 866; + else if (Note == 9) + if (Powered) + return 867; + else + return 868; + else if (Note == 10) + if (Powered) + return 869; + else + return 870; + else if (Note == 11) + if (Powered) + return 871; + else + return 872; + else if (Note == 12) + if (Powered) + return 873; + else + return 874; + else if (Note == 13) + if (Powered) + return 875; + else + return 876; + else if (Note == 14) + if (Powered) + return 877; + else + return 878; + else if (Note == 15) + if (Powered) + return 879; + else + return 880; + else if (Note == 16) + if (Powered) + return 881; + else + return 882; + else if (Note == 17) + if (Powered) + return 883; + else + return 884; + else if (Note == 18) + if (Powered) + return 885; + else + return 886; + else if (Note == 19) + if (Powered) + return 887; + else + return 888; + else if (Note == 20) + if (Powered) + return 889; + else + return 890; + else if (Note == 21) + if (Powered) + return 891; + else + return 892; + else if (Note == 22) + if (Powered) + return 893; + else + return 894; + else if (Note == 23) + if (Powered) + return 895; + else + return 896; + else if (Powered) + return 897; + else + return 898; + else if (Instrument == Instrument::Bit) + if (Note == 0) + if (Powered) + return 899; + else + return 900; + else if (Note == 1) + if (Powered) + return 901; + else + return 902; + else if (Note == 2) + if (Powered) + return 903; + else + return 904; + else if (Note == 3) + if (Powered) + return 905; + else + return 906; + else if (Note == 4) + if (Powered) + return 907; + else + return 908; + else if (Note == 5) + if (Powered) + return 909; + else + return 910; + else if (Note == 6) + if (Powered) + return 911; + else + return 912; + else if (Note == 7) + if (Powered) + return 913; + else + return 914; + else if (Note == 8) + if (Powered) + return 915; + else + return 916; + else if (Note == 9) + if (Powered) + return 917; + else + return 918; + else if (Note == 10) + if (Powered) + return 919; + else + return 920; + else if (Note == 11) + if (Powered) + return 921; + else + return 922; + else if (Note == 12) + if (Powered) + return 923; + else + return 924; + else if (Note == 13) + if (Powered) + return 925; + else + return 926; + else if (Note == 14) + if (Powered) + return 927; + else + return 928; + else if (Note == 15) + if (Powered) + return 929; + else + return 930; + else if (Note == 16) + if (Powered) + return 931; + else + return 932; + else if (Note == 17) + if (Powered) + return 933; + else + return 934; + else if (Note == 18) + if (Powered) + return 935; + else + return 936; + else if (Note == 19) + if (Powered) + return 937; + else + return 938; + else if (Note == 20) + if (Powered) + return 939; + else + return 940; + else if (Note == 21) + if (Powered) + return 941; + else + return 942; + else if (Note == 22) + if (Powered) + return 943; + else + return 944; + else if (Note == 23) + if (Powered) + return 945; + else + return 946; + else if (Powered) + return 947; + else + return 948; + else if (Instrument == Instrument::Banjo) + if (Note == 0) + if (Powered) + return 949; + else + return 950; + else if (Note == 1) + if (Powered) + return 951; + else + return 952; + else if (Note == 2) + if (Powered) + return 953; + else + return 954; + else if (Note == 3) + if (Powered) + return 955; + else + return 956; + else if (Note == 4) + if (Powered) + return 957; + else + return 958; + else if (Note == 5) + if (Powered) + return 959; + else + return 960; + else if (Note == 6) + if (Powered) + return 961; + else + return 962; + else if (Note == 7) + if (Powered) + return 963; + else + return 964; + else if (Note == 8) + if (Powered) + return 965; + else + return 966; + else if (Note == 9) + if (Powered) + return 967; + else + return 968; + else if (Note == 10) + if (Powered) + return 969; + else + return 970; + else if (Note == 11) + if (Powered) + return 971; + else + return 972; + else if (Note == 12) + if (Powered) + return 973; + else + return 974; + else if (Note == 13) + if (Powered) + return 975; + else + return 976; + else if (Note == 14) + if (Powered) + return 977; + else + return 978; + else if (Note == 15) + if (Powered) + return 979; + else + return 980; + else if (Note == 16) + if (Powered) + return 981; + else + return 982; + else if (Note == 17) + if (Powered) + return 983; + else + return 984; + else if (Note == 18) + if (Powered) + return 985; + else + return 986; + else if (Note == 19) + if (Powered) + return 987; + else + return 988; + else if (Note == 20) + if (Powered) + return 989; + else + return 990; + else if (Note == 21) + if (Powered) + return 991; + else + return 992; + else if (Note == 22) + if (Powered) + return 993; + else + return 994; + else if (Note == 23) + if (Powered) + return 995; + else + return 996; + else if (Powered) + return 997; + else + return 998; + else if (Note == 0) + if (Powered) + return 999; + else + return 1000; + else if (Note == 1) + if (Powered) + return 1001; + else + return 1002; + else if (Note == 2) + if (Powered) + return 1003; + else + return 1004; + else if (Note == 3) + if (Powered) + return 1005; + else + return 1006; + else if (Note == 4) + if (Powered) + return 1007; + else + return 1008; + else if (Note == 5) + if (Powered) + return 1009; + else + return 1010; + else if (Note == 6) + if (Powered) + return 1011; + else + return 1012; + else if (Note == 7) + if (Powered) + return 1013; + else + return 1014; + else if (Note == 8) + if (Powered) + return 1015; + else + return 1016; + else if (Note == 9) + if (Powered) + return 1017; + else + return 1018; + else if (Note == 10) + if (Powered) + return 1019; + else + return 1020; + else if (Note == 11) + if (Powered) + return 1021; + else + return 1022; + else if (Note == 12) + if (Powered) + return 1023; + else + return 1024; + else if (Note == 13) + if (Powered) + return 1025; + else + return 1026; + else if (Note == 14) + if (Powered) + return 1027; + else + return 1028; + else if (Note == 15) + if (Powered) + return 1029; + else + return 1030; + else if (Note == 16) + if (Powered) + return 1031; + else + return 1032; + else if (Note == 17) + if (Powered) + return 1033; + else + return 1034; + else if (Note == 18) + if (Powered) + return 1035; + else + return 1036; + else if (Note == 19) + if (Powered) + return 1037; + else + return 1038; + else if (Note == 20) + if (Powered) + return 1039; + else + return 1040; + else if (Note == 21) + if (Powered) + return 1041; + else + return 1042; + else if (Note == 22) + if (Powered) + return 1043; + else + return 1044; + else if (Note == 23) + if (Powered) + return 1045; + else + return 1046; + else if (Powered) + return 1047; + else + return 1048; +} +BlockState NoteBlock(); +enum Instrument Instrument(BlockState Block); +unsigned char Note(BlockState Block); +bool Powered(BlockState Block); +} // namespace NoteBlock +namespace OakButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState OakButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6346; + else + return 6347; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6348; + else + return 6349; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6350; + else + return 6351; + else if (Powered) + return 6352; + else + return 6353; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6354; + else + return 6355; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6356; + else + return 6357; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6358; + else + return 6359; + else if (Powered) + return 6360; + else + return 6361; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6362; + else + return 6363; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6364; + else + return 6365; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6366; + else + return 6367; + else if (Powered) + return 6368; + else + return 6369; +} +BlockState OakButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace OakButton +namespace OakDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState OakDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3573; + else + return 3574; + else if (Powered) + return 3575; + else + return 3576; + else if (Open) + if (Powered) + return 3577; + else + return 3578; + else if (Powered) + return 3579; + else + return 3580; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3581; + else + return 3582; + else if (Powered) + return 3583; + else + return 3584; + else if (Open) + if (Powered) + return 3585; + else + return 3586; + else if (Powered) + return 3587; + else + return 3588; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3589; + else + return 3590; + else if (Powered) + return 3591; + else + return 3592; + else if (Open) + if (Powered) + return 3593; + else + return 3594; + else if (Powered) + return 3595; + else + return 3596; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3597; + else + return 3598; + else if (Powered) + return 3599; + else + return 3600; + else if (Open) + if (Powered) + return 3601; + else + return 3602; + else if (Powered) + return 3603; + else + return 3604; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3605; + else + return 3606; + else if (Powered) + return 3607; + else + return 3608; + else if (Open) + if (Powered) + return 3609; + else + return 3610; + else if (Powered) + return 3611; + else + return 3612; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3613; + else + return 3614; + else if (Powered) + return 3615; + else + return 3616; + else if (Open) + if (Powered) + return 3617; + else + return 3618; + else if (Powered) + return 3619; + else + return 3620; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3621; + else + return 3622; + else if (Powered) + return 3623; + else + return 3624; + else if (Open) + if (Powered) + return 3625; + else + return 3626; + else if (Powered) + return 3627; + else + return 3628; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 3629; + else + return 3630; + else if (Powered) + return 3631; + else + return 3632; + else if (Open) + if (Powered) + return 3633; + else + return 3634; + else if (Powered) + return 3635; + else + return 3636; +} +BlockState OakDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace OakDoor +namespace OakFence +{ +constexpr BlockState OakFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 3968; + else + return 3969; + else if (West) + return 3972; + else + return 3973; + else if (South) + if (West) + return 3976; + else + return 3977; + else if (West) + return 3980; + else + return 3981; + else if (North) + if (South) + if (West) + return 3984; + else + return 3985; + else if (West) + return 3988; + else + return 3989; + else if (South) + if (West) + return 3992; + else + return 3993; + else if (West) + return 3996; + else + return 3997; +} +BlockState OakFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace OakFence +namespace OakFenceGate +{ +constexpr BlockState OakFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 4820; + else + return 4821; + else if (Powered) + return 4822; + else + return 4823; + else if (Open) + if (Powered) + return 4824; + else + return 4825; + else if (Powered) + return 4826; + else + return 4827; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 4828; + else + return 4829; + else if (Powered) + return 4830; + else + return 4831; + else if (Open) + if (Powered) + return 4832; + else + return 4833; + else if (Powered) + return 4834; + else + return 4835; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 4836; + else + return 4837; + else if (Powered) + return 4838; + else + return 4839; + else if (Open) + if (Powered) + return 4840; + else + return 4841; + else if (Powered) + return 4842; + else + return 4843; + else if (InWall) + if (Open) + if (Powered) + return 4844; + else + return 4845; + else if (Powered) + return 4846; + else + return 4847; + else if (Open) + if (Powered) + return 4848; + else + return 4849; + else if (Powered) + return 4850; + else + return 4851; +} +BlockState OakFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace OakFenceGate +namespace OakLeaves +{ +constexpr BlockState OakLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 145; + else + return 146; + else if (Distance == 2) + if (Persistent) + return 147; + else + return 148; + else if (Distance == 3) + if (Persistent) + return 149; + else + return 150; + else if (Distance == 4) + if (Persistent) + return 151; + else + return 152; + else if (Distance == 5) + if (Persistent) + return 153; + else + return 154; + else if (Distance == 6) + if (Persistent) + return 155; + else + return 156; + else if (Persistent) + return 157; + else + return 158; +} +BlockState OakLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace OakLeaves +namespace OakLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState OakLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 73; + else if (Axis == Axis::Y) + return 74; + else + return 75; +} +BlockState OakLog(); +enum Axis Axis(BlockState Block); +} // namespace OakLog +namespace OakPlanks +{ +constexpr BlockState OakPlanks() +{ + return 15; +} +} // namespace OakPlanks +namespace OakPressurePlate +{ +constexpr BlockState OakPressurePlate(const bool Powered) +{ + if (Powered) + return 3873; + else + return 3874; +} +BlockState OakPressurePlate(); +bool Powered(BlockState Block); +} // namespace OakPressurePlate +namespace OakSapling +{ +constexpr BlockState OakSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 21; + else + return 22; +} +BlockState OakSapling(); +unsigned char Stage(BlockState Block); +} // namespace OakSapling +namespace OakSign +{ +constexpr BlockState OakSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3382; + else if (Rotation == 1) + return 3384; + else if (Rotation == 2) + return 3386; + else if (Rotation == 3) + return 3388; + else if (Rotation == 4) + return 3390; + else if (Rotation == 5) + return 3392; + else if (Rotation == 6) + return 3394; + else if (Rotation == 7) + return 3396; + else if (Rotation == 8) + return 3398; + else if (Rotation == 9) + return 3400; + else if (Rotation == 10) + return 3402; + else if (Rotation == 11) + return 3404; + else if (Rotation == 12) + return 3406; + else if (Rotation == 13) + return 3408; + else if (Rotation == 14) + return 3410; + else + return 3412; +} +BlockState OakSign(); +unsigned char Rotation(BlockState Block); +} // namespace OakSign +namespace OakSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState OakSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8301; + else if (Type == Type::Bottom) + return 8303; + else + return 8305; +} +BlockState OakSlab(); +enum Type Type(BlockState Block); +} // namespace OakSlab +namespace OakStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState OakStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 1955; + else if (Shape == Shape::InnerLeft) + return 1957; + else if (Shape == Shape::InnerRight) + return 1959; + else if (Shape == Shape::OuterLeft) + return 1961; + else + return 1963; + else if (Shape == Shape::Straight) + return 1965; + else if (Shape == Shape::InnerLeft) + return 1967; + else if (Shape == Shape::InnerRight) + return 1969; + else if (Shape == Shape::OuterLeft) + return 1971; + else + return 1973; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 1975; + else if (Shape == Shape::InnerLeft) + return 1977; + else if (Shape == Shape::InnerRight) + return 1979; + else if (Shape == Shape::OuterLeft) + return 1981; + else + return 1983; + else if (Shape == Shape::Straight) + return 1985; + else if (Shape == Shape::InnerLeft) + return 1987; + else if (Shape == Shape::InnerRight) + return 1989; + else if (Shape == Shape::OuterLeft) + return 1991; + else + return 1993; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 1995; + else if (Shape == Shape::InnerLeft) + return 1997; + else if (Shape == Shape::InnerRight) + return 1999; + else if (Shape == Shape::OuterLeft) + return 2001; + else + return 2003; + else if (Shape == Shape::Straight) + return 2005; + else if (Shape == Shape::InnerLeft) + return 2007; + else if (Shape == Shape::InnerRight) + return 2009; + else if (Shape == Shape::OuterLeft) + return 2011; + else + return 2013; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 2015; + else if (Shape == Shape::InnerLeft) + return 2017; + else if (Shape == Shape::InnerRight) + return 2019; + else if (Shape == Shape::OuterLeft) + return 2021; + else + return 2023; + else if (Shape == Shape::Straight) + return 2025; + else if (Shape == Shape::InnerLeft) + return 2027; + else if (Shape == Shape::InnerRight) + return 2029; + else if (Shape == Shape::OuterLeft) + return 2031; + else + return 2033; +} +BlockState OakStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace OakStairs +namespace OakTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState OakTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4112; + else + return 4114; + else if (Powered) + return 4116; + else + return 4118; + else if (Open) + if (Powered) + return 4120; + else + return 4122; + else if (Powered) + return 4124; + else + return 4126; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4128; + else + return 4130; + else if (Powered) + return 4132; + else + return 4134; + else if (Open) + if (Powered) + return 4136; + else + return 4138; + else if (Powered) + return 4140; + else + return 4142; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4144; + else + return 4146; + else if (Powered) + return 4148; + else + return 4150; + else if (Open) + if (Powered) + return 4152; + else + return 4154; + else if (Powered) + return 4156; + else + return 4158; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4160; + else + return 4162; + else if (Powered) + return 4164; + else + return 4166; + else if (Open) + if (Powered) + return 4168; + else + return 4170; + else if (Powered) + return 4172; + else + return 4174; +} +BlockState OakTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace OakTrapdoor +namespace OakWallSign +{ +constexpr BlockState OakWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3736; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3738; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3740; + else + return 3742; +} +BlockState OakWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace OakWallSign +namespace OakWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState OakWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 109; + else if (Axis == Axis::Y) + return 110; + else + return 111; +} +BlockState OakWood(); +enum Axis Axis(BlockState Block); +} // namespace OakWood +namespace Observer +{ +constexpr BlockState Observer(const eBlockFace Facing, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 9260; + else + return 9261; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Powered) + return 9262; + else + return 9263; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 9264; + else + return 9265; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 9266; + else + return 9267; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Powered) + return 9268; + else + return 9269; + else if (Powered) + return 9270; + else + return 9271; +} +BlockState Observer(); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace Observer +namespace Obsidian +{ +constexpr BlockState Obsidian() +{ + return 1434; +} +} // namespace Obsidian +namespace OrangeBanner +{ +constexpr BlockState OrangeBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7913; + else if (Rotation == 1) + return 7914; + else if (Rotation == 2) + return 7915; + else if (Rotation == 3) + return 7916; + else if (Rotation == 4) + return 7917; + else if (Rotation == 5) + return 7918; + else if (Rotation == 6) + return 7919; + else if (Rotation == 7) + return 7920; + else if (Rotation == 8) + return 7921; + else if (Rotation == 9) + return 7922; + else if (Rotation == 10) + return 7923; + else if (Rotation == 11) + return 7924; + else if (Rotation == 12) + return 7925; + else if (Rotation == 13) + return 7926; + else if (Rotation == 14) + return 7927; + else + return 7928; +} +BlockState OrangeBanner(); +unsigned char Rotation(BlockState Block); +} // namespace OrangeBanner +namespace OrangeBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState OrangeBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1065; + else + return 1066; + else if (Part == Part::Head) + return 1067; + else + return 1068; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1069; + else + return 1070; + else if (Part == Part::Head) + return 1071; + else + return 1072; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1073; + else + return 1074; + else if (Part == Part::Head) + return 1075; + else + return 1076; + else if (Occupied) + if (Part == Part::Head) + return 1077; + else + return 1078; + else if (Part == Part::Head) + return 1079; + else + return 1080; +} +BlockState OrangeBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace OrangeBed +namespace OrangeCarpet +{ +constexpr BlockState OrangeCarpet() +{ + return 7867; +} +} // namespace OrangeCarpet +namespace OrangeConcrete +{ +constexpr BlockState OrangeConcrete() +{ + return 9439; +} +} // namespace OrangeConcrete +namespace OrangeConcretePowder +{ +constexpr BlockState OrangeConcretePowder() +{ + return 9455; +} +} // namespace OrangeConcretePowder +namespace OrangeGlazedTerracotta +{ +constexpr BlockState OrangeGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9378; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9379; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9380; + else + return 9381; +} +BlockState OrangeGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace OrangeGlazedTerracotta +namespace OrangeShulkerBox +{ +constexpr BlockState OrangeShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9284; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9285; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9286; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9287; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9288; + else + return 9289; +} +BlockState OrangeShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace OrangeShulkerBox +namespace OrangeStainedGlass +{ +constexpr BlockState OrangeStainedGlass() +{ + return 4096; +} +} // namespace OrangeStainedGlass +namespace OrangeStainedGlassPane +{ +constexpr BlockState OrangeStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 6897; + else + return 6898; + else if (West) + return 6901; + else + return 6902; + else if (South) + if (West) + return 6905; + else + return 6906; + else if (West) + return 6909; + else + return 6910; + else if (North) + if (South) + if (West) + return 6913; + else + return 6914; + else if (West) + return 6917; + else + return 6918; + else if (South) + if (West) + return 6921; + else + return 6922; + else if (West) + return 6925; + else + return 6926; +} +BlockState OrangeStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace OrangeStainedGlassPane +namespace OrangeTerracotta +{ +constexpr BlockState OrangeTerracotta() +{ + return 6848; +} +} // namespace OrangeTerracotta +namespace OrangeTulip +{ +constexpr BlockState OrangeTulip() +{ + return 1418; +} +} // namespace OrangeTulip +namespace OrangeWallBanner +{ +constexpr BlockState OrangeWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8157; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8158; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8159; + else + return 8160; +} +BlockState OrangeWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace OrangeWallBanner +namespace OrangeWool +{ +constexpr BlockState OrangeWool() +{ + return 1385; +} +} // namespace OrangeWool +namespace OxeyeDaisy +{ +constexpr BlockState OxeyeDaisy() +{ + return 1421; +} +} // namespace OxeyeDaisy +namespace PackedIce +{ +constexpr BlockState PackedIce() +{ + return 7884; +} +} // namespace PackedIce +namespace Peony +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState Peony(const enum Half Half) +{ + if (Half == Half::Upper) + return 7891; + else + return 7892; +} +BlockState Peony(); +enum Half Half(BlockState Block); +} // namespace Peony +namespace PetrifiedOakSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PetrifiedOakSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8361; + else if (Type == Type::Bottom) + return 8363; + else + return 8365; +} +BlockState PetrifiedOakSlab(); +enum Type Type(BlockState Block); +} // namespace PetrifiedOakSlab +namespace PinkBanner +{ +constexpr BlockState PinkBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7993; + else if (Rotation == 1) + return 7994; + else if (Rotation == 2) + return 7995; + else if (Rotation == 3) + return 7996; + else if (Rotation == 4) + return 7997; + else if (Rotation == 5) + return 7998; + else if (Rotation == 6) + return 7999; + else if (Rotation == 7) + return 8000; + else if (Rotation == 8) + return 8001; + else if (Rotation == 9) + return 8002; + else if (Rotation == 10) + return 8003; + else if (Rotation == 11) + return 8004; + else if (Rotation == 12) + return 8005; + else if (Rotation == 13) + return 8006; + else if (Rotation == 14) + return 8007; + else + return 8008; +} +BlockState PinkBanner(); +unsigned char Rotation(BlockState Block); +} // namespace PinkBanner +namespace PinkBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState PinkBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1145; + else + return 1146; + else if (Part == Part::Head) + return 1147; + else + return 1148; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1149; + else + return 1150; + else if (Part == Part::Head) + return 1151; + else + return 1152; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1153; + else + return 1154; + else if (Part == Part::Head) + return 1155; + else + return 1156; + else if (Occupied) + if (Part == Part::Head) + return 1157; + else + return 1158; + else if (Part == Part::Head) + return 1159; + else + return 1160; +} +BlockState PinkBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace PinkBed +namespace PinkCarpet +{ +constexpr BlockState PinkCarpet() +{ + return 7872; +} +} // namespace PinkCarpet +namespace PinkConcrete +{ +constexpr BlockState PinkConcrete() +{ + return 9444; +} +} // namespace PinkConcrete +namespace PinkConcretePowder +{ +constexpr BlockState PinkConcretePowder() +{ + return 9460; +} +} // namespace PinkConcretePowder +namespace PinkGlazedTerracotta +{ +constexpr BlockState PinkGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9398; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9399; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9400; + else + return 9401; +} +BlockState PinkGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace PinkGlazedTerracotta +namespace PinkShulkerBox +{ +constexpr BlockState PinkShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9314; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9315; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9316; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9317; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9318; + else + return 9319; +} +BlockState PinkShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace PinkShulkerBox +namespace PinkStainedGlass +{ +constexpr BlockState PinkStainedGlass() +{ + return 4101; +} +} // namespace PinkStainedGlass +namespace PinkStainedGlassPane +{ +constexpr BlockState PinkStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7057; + else + return 7058; + else if (West) + return 7061; + else + return 7062; + else if (South) + if (West) + return 7065; + else + return 7066; + else if (West) + return 7069; + else + return 7070; + else if (North) + if (South) + if (West) + return 7073; + else + return 7074; + else if (West) + return 7077; + else + return 7078; + else if (South) + if (West) + return 7081; + else + return 7082; + else if (West) + return 7085; + else + return 7086; +} +BlockState PinkStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace PinkStainedGlassPane +namespace PinkTerracotta +{ +constexpr BlockState PinkTerracotta() +{ + return 6853; +} +} // namespace PinkTerracotta +namespace PinkTulip +{ +constexpr BlockState PinkTulip() +{ + return 1420; +} +} // namespace PinkTulip +namespace PinkWallBanner +{ +constexpr BlockState PinkWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8177; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8178; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8179; + else + return 8180; +} +BlockState PinkWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace PinkWallBanner +namespace PinkWool +{ +constexpr BlockState PinkWool() +{ + return 1390; +} +} // namespace PinkWool +namespace Piston +{ +constexpr BlockState Piston(const bool Extended, const eBlockFace Facing) +{ + if (Extended) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 1348; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 1349; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 1350; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 1351; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 1352; + else + return 1353; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 1354; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 1355; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 1356; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 1357; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 1358; + else + return 1359; +} +BlockState Piston(); +bool Extended(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace Piston +namespace PistonHead +{ +enum class Type +{ + Normal, + Sticky +}; +constexpr BlockState PistonHead(const eBlockFace Facing, const bool Short, const enum Type Type) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Short) + if (Type == Type::Normal) + return 1360; + else + return 1361; + else if (Type == Type::Normal) + return 1362; + else + return 1363; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + if (Short) + if (Type == Type::Normal) + return 1364; + else + return 1365; + else if (Type == Type::Normal) + return 1366; + else + return 1367; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Short) + if (Type == Type::Normal) + return 1368; + else + return 1369; + else if (Type == Type::Normal) + return 1370; + else + return 1371; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Short) + if (Type == Type::Normal) + return 1372; + else + return 1373; + else if (Type == Type::Normal) + return 1374; + else + return 1375; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + if (Short) + if (Type == Type::Normal) + return 1376; + else + return 1377; + else if (Type == Type::Normal) + return 1378; + else + return 1379; + else if (Short) + if (Type == Type::Normal) + return 1380; + else + return 1381; + else if (Type == Type::Normal) + return 1382; + else + return 1383; +} +BlockState PistonHead(); +eBlockFace Facing(BlockState Block); +bool Short(BlockState Block); +enum Type Type(BlockState Block); +} // namespace PistonHead +namespace PlayerHead +{ +constexpr BlockState PlayerHead(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6550; + else if (Rotation == 1) + return 6551; + else if (Rotation == 2) + return 6552; + else if (Rotation == 3) + return 6553; + else if (Rotation == 4) + return 6554; + else if (Rotation == 5) + return 6555; + else if (Rotation == 6) + return 6556; + else if (Rotation == 7) + return 6557; + else if (Rotation == 8) + return 6558; + else if (Rotation == 9) + return 6559; + else if (Rotation == 10) + return 6560; + else if (Rotation == 11) + return 6561; + else if (Rotation == 12) + return 6562; + else if (Rotation == 13) + return 6563; + else if (Rotation == 14) + return 6564; + else + return 6565; +} +BlockState PlayerHead(); +unsigned char Rotation(BlockState Block); +} // namespace PlayerHead +namespace PlayerWallHead +{ +constexpr BlockState PlayerWallHead(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6566; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6567; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6568; + else + return 6569; +} +BlockState PlayerWallHead(); +eBlockFace Facing(BlockState Block); +} // namespace PlayerWallHead +namespace Podzol +{ +constexpr BlockState Podzol(const bool Snowy) +{ + if (Snowy) + return 12; + else + return 13; +} +BlockState Podzol(); +bool Snowy(BlockState Block); +} // namespace Podzol +namespace PolishedAndesite +{ +constexpr BlockState PolishedAndesite() +{ + return 7; +} +} // namespace PolishedAndesite +namespace PolishedAndesiteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PolishedAndesiteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10856; + else if (Type == Type::Bottom) + return 10858; + else + return 10860; +} +BlockState PolishedAndesiteSlab(); +enum Type Type(BlockState Block); +} // namespace PolishedAndesiteSlab +namespace PolishedAndesiteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PolishedAndesiteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10630; + else if (Shape == Shape::InnerLeft) + return 10632; + else if (Shape == Shape::InnerRight) + return 10634; + else if (Shape == Shape::OuterLeft) + return 10636; + else + return 10638; + else if (Shape == Shape::Straight) + return 10640; + else if (Shape == Shape::InnerLeft) + return 10642; + else if (Shape == Shape::InnerRight) + return 10644; + else if (Shape == Shape::OuterLeft) + return 10646; + else + return 10648; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10650; + else if (Shape == Shape::InnerLeft) + return 10652; + else if (Shape == Shape::InnerRight) + return 10654; + else if (Shape == Shape::OuterLeft) + return 10656; + else + return 10658; + else if (Shape == Shape::Straight) + return 10660; + else if (Shape == Shape::InnerLeft) + return 10662; + else if (Shape == Shape::InnerRight) + return 10664; + else if (Shape == Shape::OuterLeft) + return 10666; + else + return 10668; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10670; + else if (Shape == Shape::InnerLeft) + return 10672; + else if (Shape == Shape::InnerRight) + return 10674; + else if (Shape == Shape::OuterLeft) + return 10676; + else + return 10678; + else if (Shape == Shape::Straight) + return 10680; + else if (Shape == Shape::InnerLeft) + return 10682; + else if (Shape == Shape::InnerRight) + return 10684; + else if (Shape == Shape::OuterLeft) + return 10686; + else + return 10688; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10690; + else if (Shape == Shape::InnerLeft) + return 10692; + else if (Shape == Shape::InnerRight) + return 10694; + else if (Shape == Shape::OuterLeft) + return 10696; + else + return 10698; + else if (Shape == Shape::Straight) + return 10700; + else if (Shape == Shape::InnerLeft) + return 10702; + else if (Shape == Shape::InnerRight) + return 10704; + else if (Shape == Shape::OuterLeft) + return 10706; + else + return 10708; +} +BlockState PolishedAndesiteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PolishedAndesiteStairs +namespace PolishedBasalt +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState PolishedBasalt(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 4005; + else if (Axis == Axis::Y) + return 4006; + else + return 4007; +} +BlockState PolishedBasalt(); +enum Axis Axis(BlockState Block); +} // namespace PolishedBasalt +namespace PolishedBlackstone +{ +constexpr BlockState PolishedBlackstone() +{ + return 16250; +} +} // namespace PolishedBlackstone +namespace PolishedBlackstoneBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PolishedBlackstoneBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 16255; + else if (Type == Type::Bottom) + return 16257; + else + return 16259; +} +BlockState PolishedBlackstoneBrickSlab(); +enum Type Type(BlockState Block); +} // namespace PolishedBlackstoneBrickSlab +namespace PolishedBlackstoneBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PolishedBlackstoneBrickStairs( + const eBlockFace Facing, + const enum Half Half, + const enum Shape Shape +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16261; + else if (Shape == Shape::InnerLeft) + return 16263; + else if (Shape == Shape::InnerRight) + return 16265; + else if (Shape == Shape::OuterLeft) + return 16267; + else + return 16269; + else if (Shape == Shape::Straight) + return 16271; + else if (Shape == Shape::InnerLeft) + return 16273; + else if (Shape == Shape::InnerRight) + return 16275; + else if (Shape == Shape::OuterLeft) + return 16277; + else + return 16279; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16281; + else if (Shape == Shape::InnerLeft) + return 16283; + else if (Shape == Shape::InnerRight) + return 16285; + else if (Shape == Shape::OuterLeft) + return 16287; + else + return 16289; + else if (Shape == Shape::Straight) + return 16291; + else if (Shape == Shape::InnerLeft) + return 16293; + else if (Shape == Shape::InnerRight) + return 16295; + else if (Shape == Shape::OuterLeft) + return 16297; + else + return 16299; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16301; + else if (Shape == Shape::InnerLeft) + return 16303; + else if (Shape == Shape::InnerRight) + return 16305; + else if (Shape == Shape::OuterLeft) + return 16307; + else + return 16309; + else if (Shape == Shape::Straight) + return 16311; + else if (Shape == Shape::InnerLeft) + return 16313; + else if (Shape == Shape::InnerRight) + return 16315; + else if (Shape == Shape::OuterLeft) + return 16317; + else + return 16319; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16321; + else if (Shape == Shape::InnerLeft) + return 16323; + else if (Shape == Shape::InnerRight) + return 16325; + else if (Shape == Shape::OuterLeft) + return 16327; + else + return 16329; + else if (Shape == Shape::Straight) + return 16331; + else if (Shape == Shape::InnerLeft) + return 16333; + else if (Shape == Shape::InnerRight) + return 16335; + else if (Shape == Shape::OuterLeft) + return 16337; + else + return 16339; +} +BlockState PolishedBlackstoneBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PolishedBlackstoneBrickStairs +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 BlockState PolishedBlackstoneBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16343; + else if (West == West::Low) + return 16344; + else + return 16345; + else if (West == West::None) + return 16349; + else if (West == West::Low) + return 16350; + else + return 16351; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16355; + else if (West == West::Low) + return 16356; + else + return 16357; + else if (West == West::None) + return 16361; + else if (West == West::Low) + return 16362; + else + return 16363; + else if (Up) + if (West == West::None) + return 16367; + else if (West == West::Low) + return 16368; + else + return 16369; + else if (West == West::None) + return 16373; + else if (West == West::Low) + return 16374; + else + return 16375; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16379; + else if (West == West::Low) + return 16380; + else + return 16381; + else if (West == West::None) + return 16385; + else if (West == West::Low) + return 16386; + else + return 16387; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16391; + else if (West == West::Low) + return 16392; + else + return 16393; + else if (West == West::None) + return 16397; + else if (West == West::Low) + return 16398; + else + return 16399; + else if (Up) + if (West == West::None) + return 16403; + else if (West == West::Low) + return 16404; + else + return 16405; + else if (West == West::None) + return 16409; + else if (West == West::Low) + return 16410; + else + return 16411; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16415; + else if (West == West::Low) + return 16416; + else + return 16417; + else if (West == West::None) + return 16421; + else if (West == West::Low) + return 16422; + else + return 16423; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16427; + else if (West == West::Low) + return 16428; + else + return 16429; + else if (West == West::None) + return 16433; + else if (West == West::Low) + return 16434; + else + return 16435; + else if (Up) + if (West == West::None) + return 16439; + else if (West == West::Low) + return 16440; + else + return 16441; + else if (West == West::None) + return 16445; + else if (West == West::Low) + return 16446; + else + return 16447; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16451; + else if (West == West::Low) + return 16452; + else + return 16453; + else if (West == West::None) + return 16457; + else if (West == West::Low) + return 16458; + else + return 16459; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16463; + else if (West == West::Low) + return 16464; + else + return 16465; + else if (West == West::None) + return 16469; + else if (West == West::Low) + return 16470; + else + return 16471; + else if (Up) + if (West == West::None) + return 16475; + else if (West == West::Low) + return 16476; + else + return 16477; + else if (West == West::None) + return 16481; + else if (West == West::Low) + return 16482; + else + return 16483; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16487; + else if (West == West::Low) + return 16488; + else + return 16489; + else if (West == West::None) + return 16493; + else if (West == West::Low) + return 16494; + else + return 16495; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16499; + else if (West == West::Low) + return 16500; + else + return 16501; + else if (West == West::None) + return 16505; + else if (West == West::Low) + return 16506; + else + return 16507; + else if (Up) + if (West == West::None) + return 16511; + else if (West == West::Low) + return 16512; + else + return 16513; + else if (West == West::None) + return 16517; + else if (West == West::Low) + return 16518; + else + return 16519; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16523; + else if (West == West::Low) + return 16524; + else + return 16525; + else if (West == West::None) + return 16529; + else if (West == West::Low) + return 16530; + else + return 16531; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16535; + else if (West == West::Low) + return 16536; + else + return 16537; + else if (West == West::None) + return 16541; + else if (West == West::Low) + return 16542; + else + return 16543; + else if (Up) + if (West == West::None) + return 16547; + else if (West == West::Low) + return 16548; + else + return 16549; + else if (West == West::None) + return 16553; + else if (West == West::Low) + return 16554; + else + return 16555; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16559; + else if (West == West::Low) + return 16560; + else + return 16561; + else if (West == West::None) + return 16565; + else if (West == West::Low) + return 16566; + else + return 16567; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16571; + else if (West == West::Low) + return 16572; + else + return 16573; + else if (West == West::None) + return 16577; + else if (West == West::Low) + return 16578; + else + return 16579; + else if (Up) + if (West == West::None) + return 16583; + else if (West == West::Low) + return 16584; + else + return 16585; + else if (West == West::None) + return 16589; + else if (West == West::Low) + return 16590; + else + return 16591; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16595; + else if (West == West::Low) + return 16596; + else + return 16597; + else if (West == West::None) + return 16601; + else if (West == West::Low) + return 16602; + else + return 16603; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16607; + else if (West == West::Low) + return 16608; + else + return 16609; + else if (West == West::None) + return 16613; + else if (West == West::Low) + return 16614; + else + return 16615; + else if (Up) + if (West == West::None) + return 16619; + else if (West == West::Low) + return 16620; + else + return 16621; + else if (West == West::None) + return 16625; + else if (West == West::Low) + return 16626; + else + return 16627; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16631; + else if (West == West::Low) + return 16632; + else + return 16633; + else if (West == West::None) + return 16637; + else if (West == West::Low) + return 16638; + else + return 16639; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16643; + else if (West == West::Low) + return 16644; + else + return 16645; + else if (West == West::None) + return 16649; + else if (West == West::Low) + return 16650; + else + return 16651; + else if (Up) + if (West == West::None) + return 16655; + else if (West == West::Low) + return 16656; + else + return 16657; + else if (West == West::None) + return 16661; + else if (West == West::Low) + return 16662; + else + return 16663; +} +BlockState PolishedBlackstoneBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace PolishedBlackstoneBrickWall +namespace PolishedBlackstoneBricks +{ +constexpr BlockState PolishedBlackstoneBricks() +{ + return 16251; +} +} // namespace PolishedBlackstoneBricks +namespace PolishedBlackstoneButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState PolishedBlackstoneButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 16753; + else + return 16754; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 16755; + else + return 16756; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 16757; + else + return 16758; + else if (Powered) + return 16759; + else + return 16760; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 16761; + else + return 16762; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 16763; + else + return 16764; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 16765; + else + return 16766; + else if (Powered) + return 16767; + else + return 16768; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 16769; + else + return 16770; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 16771; + else + return 16772; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 16773; + else + return 16774; + else if (Powered) + return 16775; + else + return 16776; +} +BlockState PolishedBlackstoneButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace PolishedBlackstoneButton +namespace PolishedBlackstonePressurePlate +{ +constexpr BlockState PolishedBlackstonePressurePlate(const bool Powered) +{ + if (Powered) + return 16751; + else + return 16752; +} +BlockState PolishedBlackstonePressurePlate(); +bool Powered(BlockState Block); +} // namespace PolishedBlackstonePressurePlate +namespace PolishedBlackstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PolishedBlackstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 16746; + else if (Type == Type::Bottom) + return 16748; + else + return 16750; +} +BlockState PolishedBlackstoneSlab(); +enum Type Type(BlockState Block); +} // namespace PolishedBlackstoneSlab +namespace PolishedBlackstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PolishedBlackstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16666; + else if (Shape == Shape::InnerLeft) + return 16668; + else if (Shape == Shape::InnerRight) + return 16670; + else if (Shape == Shape::OuterLeft) + return 16672; + else + return 16674; + else if (Shape == Shape::Straight) + return 16676; + else if (Shape == Shape::InnerLeft) + return 16678; + else if (Shape == Shape::InnerRight) + return 16680; + else if (Shape == Shape::OuterLeft) + return 16682; + else + return 16684; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16686; + else if (Shape == Shape::InnerLeft) + return 16688; + else if (Shape == Shape::InnerRight) + return 16690; + else if (Shape == Shape::OuterLeft) + return 16692; + else + return 16694; + else if (Shape == Shape::Straight) + return 16696; + else if (Shape == Shape::InnerLeft) + return 16698; + else if (Shape == Shape::InnerRight) + return 16700; + else if (Shape == Shape::OuterLeft) + return 16702; + else + return 16704; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16706; + else if (Shape == Shape::InnerLeft) + return 16708; + else if (Shape == Shape::InnerRight) + return 16710; + else if (Shape == Shape::OuterLeft) + return 16712; + else + return 16714; + else if (Shape == Shape::Straight) + return 16716; + else if (Shape == Shape::InnerLeft) + return 16718; + else if (Shape == Shape::InnerRight) + return 16720; + else if (Shape == Shape::OuterLeft) + return 16722; + else + return 16724; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 16726; + else if (Shape == Shape::InnerLeft) + return 16728; + else if (Shape == Shape::InnerRight) + return 16730; + else if (Shape == Shape::OuterLeft) + return 16732; + else + return 16734; + else if (Shape == Shape::Straight) + return 16736; + else if (Shape == Shape::InnerLeft) + return 16738; + else if (Shape == Shape::InnerRight) + return 16740; + else if (Shape == Shape::OuterLeft) + return 16742; + else + return 16744; +} +BlockState PolishedBlackstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PolishedBlackstoneStairs +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 BlockState PolishedBlackstoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16780; + else if (West == West::Low) + return 16781; + else + return 16782; + else if (West == West::None) + return 16786; + else if (West == West::Low) + return 16787; + else + return 16788; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16792; + else if (West == West::Low) + return 16793; + else + return 16794; + else if (West == West::None) + return 16798; + else if (West == West::Low) + return 16799; + else + return 16800; + else if (Up) + if (West == West::None) + return 16804; + else if (West == West::Low) + return 16805; + else + return 16806; + else if (West == West::None) + return 16810; + else if (West == West::Low) + return 16811; + else + return 16812; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16816; + else if (West == West::Low) + return 16817; + else + return 16818; + else if (West == West::None) + return 16822; + else if (West == West::Low) + return 16823; + else + return 16824; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16828; + else if (West == West::Low) + return 16829; + else + return 16830; + else if (West == West::None) + return 16834; + else if (West == West::Low) + return 16835; + else + return 16836; + else if (Up) + if (West == West::None) + return 16840; + else if (West == West::Low) + return 16841; + else + return 16842; + else if (West == West::None) + return 16846; + else if (West == West::Low) + return 16847; + else + return 16848; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16852; + else if (West == West::Low) + return 16853; + else + return 16854; + else if (West == West::None) + return 16858; + else if (West == West::Low) + return 16859; + else + return 16860; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16864; + else if (West == West::Low) + return 16865; + else + return 16866; + else if (West == West::None) + return 16870; + else if (West == West::Low) + return 16871; + else + return 16872; + else if (Up) + if (West == West::None) + return 16876; + else if (West == West::Low) + return 16877; + else + return 16878; + else if (West == West::None) + return 16882; + else if (West == West::Low) + return 16883; + else + return 16884; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16888; + else if (West == West::Low) + return 16889; + else + return 16890; + else if (West == West::None) + return 16894; + else if (West == West::Low) + return 16895; + else + return 16896; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16900; + else if (West == West::Low) + return 16901; + else + return 16902; + else if (West == West::None) + return 16906; + else if (West == West::Low) + return 16907; + else + return 16908; + else if (Up) + if (West == West::None) + return 16912; + else if (West == West::Low) + return 16913; + else + return 16914; + else if (West == West::None) + return 16918; + else if (West == West::Low) + return 16919; + else + return 16920; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 16924; + else if (West == West::Low) + return 16925; + else + return 16926; + else if (West == West::None) + return 16930; + else if (West == West::Low) + return 16931; + else + return 16932; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16936; + else if (West == West::Low) + return 16937; + else + return 16938; + else if (West == West::None) + return 16942; + else if (West == West::Low) + return 16943; + else + return 16944; + else if (Up) + if (West == West::None) + return 16948; + else if (West == West::Low) + return 16949; + else + return 16950; + else if (West == West::None) + return 16954; + else if (West == West::Low) + return 16955; + else + return 16956; + else if (South == South::None) + if (Up) + if (West == West::None) + return 16960; + else if (West == West::Low) + return 16961; + else + return 16962; + else if (West == West::None) + return 16966; + else if (West == West::Low) + return 16967; + else + return 16968; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 16972; + else if (West == West::Low) + return 16973; + else + return 16974; + else if (West == West::None) + return 16978; + else if (West == West::Low) + return 16979; + else + return 16980; + else if (Up) + if (West == West::None) + return 16984; + else if (West == West::Low) + return 16985; + else + return 16986; + else if (West == West::None) + return 16990; + else if (West == West::Low) + return 16991; + else + return 16992; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 16996; + else if (West == West::Low) + return 16997; + else + return 16998; + else if (West == West::None) + return 17002; + else if (West == West::Low) + return 17003; + else + return 17004; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 17008; + else if (West == West::Low) + return 17009; + else + return 17010; + else if (West == West::None) + return 17014; + else if (West == West::Low) + return 17015; + else + return 17016; + else if (Up) + if (West == West::None) + return 17020; + else if (West == West::Low) + return 17021; + else + return 17022; + else if (West == West::None) + return 17026; + else if (West == West::Low) + return 17027; + else + return 17028; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 17032; + else if (West == West::Low) + return 17033; + else + return 17034; + else if (West == West::None) + return 17038; + else if (West == West::Low) + return 17039; + else + return 17040; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 17044; + else if (West == West::Low) + return 17045; + else + return 17046; + else if (West == West::None) + return 17050; + else if (West == West::Low) + return 17051; + else + return 17052; + else if (Up) + if (West == West::None) + return 17056; + else if (West == West::Low) + return 17057; + else + return 17058; + else if (West == West::None) + return 17062; + else if (West == West::Low) + return 17063; + else + return 17064; + else if (South == South::None) + if (Up) + if (West == West::None) + return 17068; + else if (West == West::Low) + return 17069; + else + return 17070; + else if (West == West::None) + return 17074; + else if (West == West::Low) + return 17075; + else + return 17076; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 17080; + else if (West == West::Low) + return 17081; + else + return 17082; + else if (West == West::None) + return 17086; + else if (West == West::Low) + return 17087; + else + return 17088; + else if (Up) + if (West == West::None) + return 17092; + else if (West == West::Low) + return 17093; + else + return 17094; + else if (West == West::None) + return 17098; + else if (West == West::Low) + return 17099; + else + return 17100; +} +BlockState PolishedBlackstoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace PolishedBlackstoneWall +namespace PolishedDiorite +{ +constexpr BlockState PolishedDiorite() +{ + return 5; +} +} // namespace PolishedDiorite +namespace PolishedDioriteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PolishedDioriteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10808; + else if (Type == Type::Bottom) + return 10810; + else + return 10812; +} +BlockState PolishedDioriteSlab(); +enum Type Type(BlockState Block); +} // namespace PolishedDioriteSlab +namespace PolishedDioriteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PolishedDioriteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9910; + else if (Shape == Shape::InnerLeft) + return 9912; + else if (Shape == Shape::InnerRight) + return 9914; + else if (Shape == Shape::OuterLeft) + return 9916; + else + return 9918; + else if (Shape == Shape::Straight) + return 9920; + else if (Shape == Shape::InnerLeft) + return 9922; + else if (Shape == Shape::InnerRight) + return 9924; + else if (Shape == Shape::OuterLeft) + return 9926; + else + return 9928; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9930; + else if (Shape == Shape::InnerLeft) + return 9932; + else if (Shape == Shape::InnerRight) + return 9934; + else if (Shape == Shape::OuterLeft) + return 9936; + else + return 9938; + else if (Shape == Shape::Straight) + return 9940; + else if (Shape == Shape::InnerLeft) + return 9942; + else if (Shape == Shape::InnerRight) + return 9944; + else if (Shape == Shape::OuterLeft) + return 9946; + else + return 9948; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9950; + else if (Shape == Shape::InnerLeft) + return 9952; + else if (Shape == Shape::InnerRight) + return 9954; + else if (Shape == Shape::OuterLeft) + return 9956; + else + return 9958; + else if (Shape == Shape::Straight) + return 9960; + else if (Shape == Shape::InnerLeft) + return 9962; + else if (Shape == Shape::InnerRight) + return 9964; + else if (Shape == Shape::OuterLeft) + return 9966; + else + return 9968; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9970; + else if (Shape == Shape::InnerLeft) + return 9972; + else if (Shape == Shape::InnerRight) + return 9974; + else if (Shape == Shape::OuterLeft) + return 9976; + else + return 9978; + else if (Shape == Shape::Straight) + return 9980; + else if (Shape == Shape::InnerLeft) + return 9982; + else if (Shape == Shape::InnerRight) + return 9984; + else if (Shape == Shape::OuterLeft) + return 9986; + else + return 9988; +} +BlockState PolishedDioriteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PolishedDioriteStairs +namespace PolishedGranite +{ +constexpr BlockState PolishedGranite() +{ + return 3; +} +} // namespace PolishedGranite +namespace PolishedGraniteSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PolishedGraniteSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10790; + else if (Type == Type::Bottom) + return 10792; + else + return 10794; +} +BlockState PolishedGraniteSlab(); +enum Type Type(BlockState Block); +} // namespace PolishedGraniteSlab +namespace PolishedGraniteStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PolishedGraniteStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9670; + else if (Shape == Shape::InnerLeft) + return 9672; + else if (Shape == Shape::InnerRight) + return 9674; + else if (Shape == Shape::OuterLeft) + return 9676; + else + return 9678; + else if (Shape == Shape::Straight) + return 9680; + else if (Shape == Shape::InnerLeft) + return 9682; + else if (Shape == Shape::InnerRight) + return 9684; + else if (Shape == Shape::OuterLeft) + return 9686; + else + return 9688; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9690; + else if (Shape == Shape::InnerLeft) + return 9692; + else if (Shape == Shape::InnerRight) + return 9694; + else if (Shape == Shape::OuterLeft) + return 9696; + else + return 9698; + else if (Shape == Shape::Straight) + return 9700; + else if (Shape == Shape::InnerLeft) + return 9702; + else if (Shape == Shape::InnerRight) + return 9704; + else if (Shape == Shape::OuterLeft) + return 9706; + else + return 9708; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9710; + else if (Shape == Shape::InnerLeft) + return 9712; + else if (Shape == Shape::InnerRight) + return 9714; + else if (Shape == Shape::OuterLeft) + return 9716; + else + return 9718; + else if (Shape == Shape::Straight) + return 9720; + else if (Shape == Shape::InnerLeft) + return 9722; + else if (Shape == Shape::InnerRight) + return 9724; + else if (Shape == Shape::OuterLeft) + return 9726; + else + return 9728; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9730; + else if (Shape == Shape::InnerLeft) + return 9732; + else if (Shape == Shape::InnerRight) + return 9734; + else if (Shape == Shape::OuterLeft) + return 9736; + else + return 9738; + else if (Shape == Shape::Straight) + return 9740; + else if (Shape == Shape::InnerLeft) + return 9742; + else if (Shape == Shape::InnerRight) + return 9744; + else if (Shape == Shape::OuterLeft) + return 9746; + else + return 9748; +} +BlockState PolishedGraniteStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PolishedGraniteStairs +namespace Poppy +{ +constexpr BlockState Poppy() +{ + return 1413; +} +} // namespace Poppy +namespace Potatoes +{ +constexpr BlockState Potatoes(const unsigned char Age) +{ + if (Age == 0) + return 6338; + else if (Age == 1) + return 6339; + else if (Age == 2) + return 6340; + else if (Age == 3) + return 6341; + else if (Age == 4) + return 6342; + else if (Age == 5) + return 6343; + else if (Age == 6) + return 6344; + else + return 6345; +} +BlockState Potatoes(); +unsigned char Age(BlockState Block); +} // namespace Potatoes +namespace PottedAcaciaSapling +{ +constexpr BlockState PottedAcaciaSapling() +{ + return 6310; +} +} // namespace PottedAcaciaSapling +namespace PottedAllium +{ +constexpr BlockState PottedAllium() +{ + return 6316; +} +} // namespace PottedAllium +namespace PottedAzureBluet +{ +constexpr BlockState PottedAzureBluet() +{ + return 6317; +} +} // namespace PottedAzureBluet +namespace PottedBamboo +{ +constexpr BlockState PottedBamboo() +{ + return 9664; +} +} // namespace PottedBamboo +namespace PottedBirchSapling +{ +constexpr BlockState PottedBirchSapling() +{ + return 6308; +} +} // namespace PottedBirchSapling +namespace PottedBlueOrchid +{ +constexpr BlockState PottedBlueOrchid() +{ + return 6315; +} +} // namespace PottedBlueOrchid +namespace PottedBrownMushroom +{ +constexpr BlockState PottedBrownMushroom() +{ + return 6327; +} +} // namespace PottedBrownMushroom +namespace PottedCactus +{ +constexpr BlockState PottedCactus() +{ + return 6329; +} +} // namespace PottedCactus +namespace PottedCornflower +{ +constexpr BlockState PottedCornflower() +{ + return 6323; +} +} // namespace PottedCornflower +namespace PottedCrimsonFungus +{ +constexpr BlockState PottedCrimsonFungus() +{ + return 15834; +} +} // namespace PottedCrimsonFungus +namespace PottedCrimsonRoots +{ +constexpr BlockState PottedCrimsonRoots() +{ + return 15836; +} +} // namespace PottedCrimsonRoots +namespace PottedDandelion +{ +constexpr BlockState PottedDandelion() +{ + return 6313; +} +} // namespace PottedDandelion +namespace PottedDarkOakSapling +{ +constexpr BlockState PottedDarkOakSapling() +{ + return 6311; +} +} // namespace PottedDarkOakSapling +namespace PottedDeadBush +{ +constexpr BlockState PottedDeadBush() +{ + return 6328; +} +} // namespace PottedDeadBush +namespace PottedFern +{ +constexpr BlockState PottedFern() +{ + return 6312; +} +} // namespace PottedFern +namespace PottedJungleSapling +{ +constexpr BlockState PottedJungleSapling() +{ + return 6309; +} +} // namespace PottedJungleSapling +namespace PottedLilyOfTheValley +{ +constexpr BlockState PottedLilyOfTheValley() +{ + return 6324; +} +} // namespace PottedLilyOfTheValley +namespace PottedOakSapling +{ +constexpr BlockState PottedOakSapling() +{ + return 6306; +} +} // namespace PottedOakSapling +namespace PottedOrangeTulip +{ +constexpr BlockState PottedOrangeTulip() +{ + return 6319; +} +} // namespace PottedOrangeTulip +namespace PottedOxeyeDaisy +{ +constexpr BlockState PottedOxeyeDaisy() +{ + return 6322; +} +} // namespace PottedOxeyeDaisy +namespace PottedPinkTulip +{ +constexpr BlockState PottedPinkTulip() +{ + return 6321; +} +} // namespace PottedPinkTulip +namespace PottedPoppy +{ +constexpr BlockState PottedPoppy() +{ + return 6314; +} +} // namespace PottedPoppy +namespace PottedRedMushroom +{ +constexpr BlockState PottedRedMushroom() +{ + return 6326; +} +} // namespace PottedRedMushroom +namespace PottedRedTulip +{ +constexpr BlockState PottedRedTulip() +{ + return 6318; +} +} // namespace PottedRedTulip +namespace PottedSpruceSapling +{ +constexpr BlockState PottedSpruceSapling() +{ + return 6307; +} +} // namespace PottedSpruceSapling +namespace PottedWarpedFungus +{ +constexpr BlockState PottedWarpedFungus() +{ + return 15835; +} +} // namespace PottedWarpedFungus +namespace PottedWarpedRoots +{ +constexpr BlockState PottedWarpedRoots() +{ + return 15837; +} +} // namespace PottedWarpedRoots +namespace PottedWhiteTulip +{ +constexpr BlockState PottedWhiteTulip() +{ + return 6320; +} +} // namespace PottedWhiteTulip +namespace PottedWitherRose +{ +constexpr BlockState PottedWitherRose() +{ + return 6325; +} +} // namespace PottedWitherRose +namespace PoweredRail +{ +enum class Shape +{ + NorthSouth, + EastWest, + AscendingEast, + AscendingWest, + AscendingNorth, + AscendingSouth +}; +constexpr BlockState PoweredRail(const bool Powered, const enum Shape Shape) +{ + if (Powered) + if (Shape == Shape::NorthSouth) + return 1305; + else if (Shape == Shape::EastWest) + return 1306; + else if (Shape == Shape::AscendingEast) + return 1307; + else if (Shape == Shape::AscendingWest) + return 1308; + else if (Shape == Shape::AscendingNorth) + return 1309; + else + return 1310; + else if (Shape == Shape::NorthSouth) + return 1311; + else if (Shape == Shape::EastWest) + return 1312; + else if (Shape == Shape::AscendingEast) + return 1313; + else if (Shape == Shape::AscendingWest) + return 1314; + else if (Shape == Shape::AscendingNorth) + return 1315; + else + return 1316; +} +BlockState PoweredRail(); +bool Powered(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PoweredRail +namespace Prismarine +{ +constexpr BlockState Prismarine() +{ + return 7601; +} +} // namespace Prismarine +namespace PrismarineBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PrismarineBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 7851; + else if (Type == Type::Bottom) + return 7853; + else + return 7855; +} +BlockState PrismarineBrickSlab(); +enum Type Type(BlockState Block); +} // namespace PrismarineBrickSlab +namespace PrismarineBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PrismarineBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7685; + else if (Shape == Shape::InnerLeft) + return 7687; + else if (Shape == Shape::InnerRight) + return 7689; + else if (Shape == Shape::OuterLeft) + return 7691; + else + return 7693; + else if (Shape == Shape::Straight) + return 7695; + else if (Shape == Shape::InnerLeft) + return 7697; + else if (Shape == Shape::InnerRight) + return 7699; + else if (Shape == Shape::OuterLeft) + return 7701; + else + return 7703; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7705; + else if (Shape == Shape::InnerLeft) + return 7707; + else if (Shape == Shape::InnerRight) + return 7709; + else if (Shape == Shape::OuterLeft) + return 7711; + else + return 7713; + else if (Shape == Shape::Straight) + return 7715; + else if (Shape == Shape::InnerLeft) + return 7717; + else if (Shape == Shape::InnerRight) + return 7719; + else if (Shape == Shape::OuterLeft) + return 7721; + else + return 7723; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7725; + else if (Shape == Shape::InnerLeft) + return 7727; + else if (Shape == Shape::InnerRight) + return 7729; + else if (Shape == Shape::OuterLeft) + return 7731; + else + return 7733; + else if (Shape == Shape::Straight) + return 7735; + else if (Shape == Shape::InnerLeft) + return 7737; + else if (Shape == Shape::InnerRight) + return 7739; + else if (Shape == Shape::OuterLeft) + return 7741; + else + return 7743; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7745; + else if (Shape == Shape::InnerLeft) + return 7747; + else if (Shape == Shape::InnerRight) + return 7749; + else if (Shape == Shape::OuterLeft) + return 7751; + else + return 7753; + else if (Shape == Shape::Straight) + return 7755; + else if (Shape == Shape::InnerLeft) + return 7757; + else if (Shape == Shape::InnerRight) + return 7759; + else if (Shape == Shape::OuterLeft) + return 7761; + else + return 7763; +} +BlockState PrismarineBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PrismarineBrickStairs +namespace PrismarineBricks +{ +constexpr BlockState PrismarineBricks() +{ + return 7602; +} +} // namespace PrismarineBricks +namespace PrismarineSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PrismarineSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 7845; + else if (Type == Type::Bottom) + return 7847; + else + return 7849; +} +BlockState PrismarineSlab(); +enum Type Type(BlockState Block); +} // namespace PrismarineSlab +namespace PrismarineStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PrismarineStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7605; + else if (Shape == Shape::InnerLeft) + return 7607; + else if (Shape == Shape::InnerRight) + return 7609; + else if (Shape == Shape::OuterLeft) + return 7611; + else + return 7613; + else if (Shape == Shape::Straight) + return 7615; + else if (Shape == Shape::InnerLeft) + return 7617; + else if (Shape == Shape::InnerRight) + return 7619; + else if (Shape == Shape::OuterLeft) + return 7621; + else + return 7623; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7625; + else if (Shape == Shape::InnerLeft) + return 7627; + else if (Shape == Shape::InnerRight) + return 7629; + else if (Shape == Shape::OuterLeft) + return 7631; + else + return 7633; + else if (Shape == Shape::Straight) + return 7635; + else if (Shape == Shape::InnerLeft) + return 7637; + else if (Shape == Shape::InnerRight) + return 7639; + else if (Shape == Shape::OuterLeft) + return 7641; + else + return 7643; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7645; + else if (Shape == Shape::InnerLeft) + return 7647; + else if (Shape == Shape::InnerRight) + return 7649; + else if (Shape == Shape::OuterLeft) + return 7651; + else + return 7653; + else if (Shape == Shape::Straight) + return 7655; + else if (Shape == Shape::InnerLeft) + return 7657; + else if (Shape == Shape::InnerRight) + return 7659; + else if (Shape == Shape::OuterLeft) + return 7661; + else + return 7663; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 7665; + else if (Shape == Shape::InnerLeft) + return 7667; + else if (Shape == Shape::InnerRight) + return 7669; + else if (Shape == Shape::OuterLeft) + return 7671; + else + return 7673; + else if (Shape == Shape::Straight) + return 7675; + else if (Shape == Shape::InnerLeft) + return 7677; + else if (Shape == Shape::InnerRight) + return 7679; + else if (Shape == Shape::OuterLeft) + return 7681; + else + return 7683; +} +BlockState PrismarineStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PrismarineStairs +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 BlockState PrismarineWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11194; + else if (West == West::Low) + return 11195; + else + return 11196; + else if (West == West::None) + return 11200; + else if (West == West::Low) + return 11201; + else + return 11202; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11206; + else if (West == West::Low) + return 11207; + else + return 11208; + else if (West == West::None) + return 11212; + else if (West == West::Low) + return 11213; + else + return 11214; + else if (Up) + if (West == West::None) + return 11218; + else if (West == West::Low) + return 11219; + else + return 11220; + else if (West == West::None) + return 11224; + else if (West == West::Low) + return 11225; + else + return 11226; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11230; + else if (West == West::Low) + return 11231; + else + return 11232; + else if (West == West::None) + return 11236; + else if (West == West::Low) + return 11237; + else + return 11238; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11242; + else if (West == West::Low) + return 11243; + else + return 11244; + else if (West == West::None) + return 11248; + else if (West == West::Low) + return 11249; + else + return 11250; + else if (Up) + if (West == West::None) + return 11254; + else if (West == West::Low) + return 11255; + else + return 11256; + else if (West == West::None) + return 11260; + else if (West == West::Low) + return 11261; + else + return 11262; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11266; + else if (West == West::Low) + return 11267; + else + return 11268; + else if (West == West::None) + return 11272; + else if (West == West::Low) + return 11273; + else + return 11274; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11278; + else if (West == West::Low) + return 11279; + else + return 11280; + else if (West == West::None) + return 11284; + else if (West == West::Low) + return 11285; + else + return 11286; + else if (Up) + if (West == West::None) + return 11290; + else if (West == West::Low) + return 11291; + else + return 11292; + else if (West == West::None) + return 11296; + else if (West == West::Low) + return 11297; + else + return 11298; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11302; + else if (West == West::Low) + return 11303; + else + return 11304; + else if (West == West::None) + return 11308; + else if (West == West::Low) + return 11309; + else + return 11310; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11314; + else if (West == West::Low) + return 11315; + else + return 11316; + else if (West == West::None) + return 11320; + else if (West == West::Low) + return 11321; + else + return 11322; + else if (Up) + if (West == West::None) + return 11326; + else if (West == West::Low) + return 11327; + else + return 11328; + else if (West == West::None) + return 11332; + else if (West == West::Low) + return 11333; + else + return 11334; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11338; + else if (West == West::Low) + return 11339; + else + return 11340; + else if (West == West::None) + return 11344; + else if (West == West::Low) + return 11345; + else + return 11346; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11350; + else if (West == West::Low) + return 11351; + else + return 11352; + else if (West == West::None) + return 11356; + else if (West == West::Low) + return 11357; + else + return 11358; + else if (Up) + if (West == West::None) + return 11362; + else if (West == West::Low) + return 11363; + else + return 11364; + else if (West == West::None) + return 11368; + else if (West == West::Low) + return 11369; + else + return 11370; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11374; + else if (West == West::Low) + return 11375; + else + return 11376; + else if (West == West::None) + return 11380; + else if (West == West::Low) + return 11381; + else + return 11382; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11386; + else if (West == West::Low) + return 11387; + else + return 11388; + else if (West == West::None) + return 11392; + else if (West == West::Low) + return 11393; + else + return 11394; + else if (Up) + if (West == West::None) + return 11398; + else if (West == West::Low) + return 11399; + else + return 11400; + else if (West == West::None) + return 11404; + else if (West == West::Low) + return 11405; + else + return 11406; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11410; + else if (West == West::Low) + return 11411; + else + return 11412; + else if (West == West::None) + return 11416; + else if (West == West::Low) + return 11417; + else + return 11418; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11422; + else if (West == West::Low) + return 11423; + else + return 11424; + else if (West == West::None) + return 11428; + else if (West == West::Low) + return 11429; + else + return 11430; + else if (Up) + if (West == West::None) + return 11434; + else if (West == West::Low) + return 11435; + else + return 11436; + else if (West == West::None) + return 11440; + else if (West == West::Low) + return 11441; + else + return 11442; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11446; + else if (West == West::Low) + return 11447; + else + return 11448; + else if (West == West::None) + return 11452; + else if (West == West::Low) + return 11453; + else + return 11454; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11458; + else if (West == West::Low) + return 11459; + else + return 11460; + else if (West == West::None) + return 11464; + else if (West == West::Low) + return 11465; + else + return 11466; + else if (Up) + if (West == West::None) + return 11470; + else if (West == West::Low) + return 11471; + else + return 11472; + else if (West == West::None) + return 11476; + else if (West == West::Low) + return 11477; + else + return 11478; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11482; + else if (West == West::Low) + return 11483; + else + return 11484; + else if (West == West::None) + return 11488; + else if (West == West::Low) + return 11489; + else + return 11490; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11494; + else if (West == West::Low) + return 11495; + else + return 11496; + else if (West == West::None) + return 11500; + else if (West == West::Low) + return 11501; + else + return 11502; + else if (Up) + if (West == West::None) + return 11506; + else if (West == West::Low) + return 11507; + else + return 11508; + else if (West == West::None) + return 11512; + else if (West == West::Low) + return 11513; + else + return 11514; +} +BlockState PrismarineWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace PrismarineWall +namespace Pumpkin +{ +constexpr BlockState Pumpkin() +{ + return 3998; +} +} // namespace Pumpkin +namespace PumpkinStem +{ +constexpr BlockState PumpkinStem(const unsigned char Age) +{ + if (Age == 0) + return 4772; + else if (Age == 1) + return 4773; + else if (Age == 2) + return 4774; + else if (Age == 3) + return 4775; + else if (Age == 4) + return 4776; + else if (Age == 5) + return 4777; + else if (Age == 6) + return 4778; + else + return 4779; +} +BlockState PumpkinStem(); +unsigned char Age(BlockState Block); +} // namespace PumpkinStem +namespace PurpleBanner +{ +constexpr BlockState PurpleBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8057; + else if (Rotation == 1) + return 8058; + else if (Rotation == 2) + return 8059; + else if (Rotation == 3) + return 8060; + else if (Rotation == 4) + return 8061; + else if (Rotation == 5) + return 8062; + else if (Rotation == 6) + return 8063; + else if (Rotation == 7) + return 8064; + else if (Rotation == 8) + return 8065; + else if (Rotation == 9) + return 8066; + else if (Rotation == 10) + return 8067; + else if (Rotation == 11) + return 8068; + else if (Rotation == 12) + return 8069; + else if (Rotation == 13) + return 8070; + else if (Rotation == 14) + return 8071; + else + return 8072; +} +BlockState PurpleBanner(); +unsigned char Rotation(BlockState Block); +} // namespace PurpleBanner +namespace PurpleBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState PurpleBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1209; + else + return 1210; + else if (Part == Part::Head) + return 1211; + else + return 1212; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1213; + else + return 1214; + else if (Part == Part::Head) + return 1215; + else + return 1216; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1217; + else + return 1218; + else if (Part == Part::Head) + return 1219; + else + return 1220; + else if (Occupied) + if (Part == Part::Head) + return 1221; + else + return 1222; + else if (Part == Part::Head) + return 1223; + else + return 1224; +} +BlockState PurpleBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace PurpleBed +namespace PurpleCarpet +{ +constexpr BlockState PurpleCarpet() +{ + return 7876; +} +} // namespace PurpleCarpet +namespace PurpleConcrete +{ +constexpr BlockState PurpleConcrete() +{ + return 9448; +} +} // namespace PurpleConcrete +namespace PurpleConcretePowder +{ +constexpr BlockState PurpleConcretePowder() +{ + return 9464; +} +} // namespace PurpleConcretePowder +namespace PurpleGlazedTerracotta +{ +constexpr BlockState PurpleGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9414; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9415; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9416; + else + return 9417; +} +BlockState PurpleGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace PurpleGlazedTerracotta +namespace PurpleShulkerBox +{ +constexpr BlockState PurpleShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9338; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9339; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9340; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9341; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9342; + else + return 9343; +} +BlockState PurpleShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace PurpleShulkerBox +namespace PurpleStainedGlass +{ +constexpr BlockState PurpleStainedGlass() +{ + return 4105; +} +} // namespace PurpleStainedGlass +namespace PurpleStainedGlassPane +{ +constexpr BlockState PurpleStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7185; + else + return 7186; + else if (West) + return 7189; + else + return 7190; + else if (South) + if (West) + return 7193; + else + return 7194; + else if (West) + return 7197; + else + return 7198; + else if (North) + if (South) + if (West) + return 7201; + else + return 7202; + else if (West) + return 7205; + else + return 7206; + else if (South) + if (West) + return 7209; + else + return 7210; + else if (West) + return 7213; + else + return 7214; +} +BlockState PurpleStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace PurpleStainedGlassPane +namespace PurpleTerracotta +{ +constexpr BlockState PurpleTerracotta() +{ + return 6857; +} +} // namespace PurpleTerracotta +namespace PurpleWallBanner +{ +constexpr BlockState PurpleWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8193; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8194; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8195; + else + return 8196; +} +BlockState PurpleWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace PurpleWallBanner +namespace PurpleWool +{ +constexpr BlockState PurpleWool() +{ + return 1394; +} +} // namespace PurpleWool +namespace PurpurBlock +{ +constexpr BlockState PurpurBlock() +{ + return 9134; +} +} // namespace PurpurBlock +namespace PurpurPillar +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState PurpurPillar(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 9135; + else if (Axis == Axis::Y) + return 9136; + else + return 9137; +} +BlockState PurpurPillar(); +enum Axis Axis(BlockState Block); +} // namespace PurpurPillar +namespace PurpurSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState PurpurSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8409; + else if (Type == Type::Bottom) + return 8411; + else + return 8413; +} +BlockState PurpurSlab(); +enum Type Type(BlockState Block); +} // namespace PurpurSlab +namespace PurpurStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState PurpurStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9139; + else if (Shape == Shape::InnerLeft) + return 9141; + else if (Shape == Shape::InnerRight) + return 9143; + else if (Shape == Shape::OuterLeft) + return 9145; + else + return 9147; + else if (Shape == Shape::Straight) + return 9149; + else if (Shape == Shape::InnerLeft) + return 9151; + else if (Shape == Shape::InnerRight) + return 9153; + else if (Shape == Shape::OuterLeft) + return 9155; + else + return 9157; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9159; + else if (Shape == Shape::InnerLeft) + return 9161; + else if (Shape == Shape::InnerRight) + return 9163; + else if (Shape == Shape::OuterLeft) + return 9165; + else + return 9167; + else if (Shape == Shape::Straight) + return 9169; + else if (Shape == Shape::InnerLeft) + return 9171; + else if (Shape == Shape::InnerRight) + return 9173; + else if (Shape == Shape::OuterLeft) + return 9175; + else + return 9177; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9179; + else if (Shape == Shape::InnerLeft) + return 9181; + else if (Shape == Shape::InnerRight) + return 9183; + else if (Shape == Shape::OuterLeft) + return 9185; + else + return 9187; + else if (Shape == Shape::Straight) + return 9189; + else if (Shape == Shape::InnerLeft) + return 9191; + else if (Shape == Shape::InnerRight) + return 9193; + else if (Shape == Shape::OuterLeft) + return 9195; + else + return 9197; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9199; + else if (Shape == Shape::InnerLeft) + return 9201; + else if (Shape == Shape::InnerRight) + return 9203; + else if (Shape == Shape::OuterLeft) + return 9205; + else + return 9207; + else if (Shape == Shape::Straight) + return 9209; + else if (Shape == Shape::InnerLeft) + return 9211; + else if (Shape == Shape::InnerRight) + return 9213; + else if (Shape == Shape::OuterLeft) + return 9215; + else + return 9217; +} +BlockState PurpurStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace PurpurStairs +namespace QuartzBlock +{ +constexpr BlockState QuartzBlock() +{ + return 6738; +} +} // namespace QuartzBlock +namespace QuartzBricks +{ +constexpr BlockState QuartzBricks() +{ + return 17103; +} +} // namespace QuartzBricks +namespace QuartzPillar +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState QuartzPillar(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 6740; + else if (Axis == Axis::Y) + return 6741; + else + return 6742; +} +BlockState QuartzPillar(); +enum Axis Axis(BlockState Block); +} // namespace QuartzPillar +namespace QuartzSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState QuartzSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8391; + else if (Type == Type::Bottom) + return 8393; + else + return 8395; +} +BlockState QuartzSlab(); +enum Type Type(BlockState Block); +} // namespace QuartzSlab +namespace QuartzStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState QuartzStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 6744; + else if (Shape == Shape::InnerLeft) + return 6746; + else if (Shape == Shape::InnerRight) + return 6748; + else if (Shape == Shape::OuterLeft) + return 6750; + else + return 6752; + else if (Shape == Shape::Straight) + return 6754; + else if (Shape == Shape::InnerLeft) + return 6756; + else if (Shape == Shape::InnerRight) + return 6758; + else if (Shape == Shape::OuterLeft) + return 6760; + else + return 6762; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 6764; + else if (Shape == Shape::InnerLeft) + return 6766; + else if (Shape == Shape::InnerRight) + return 6768; + else if (Shape == Shape::OuterLeft) + return 6770; + else + return 6772; + else if (Shape == Shape::Straight) + return 6774; + else if (Shape == Shape::InnerLeft) + return 6776; + else if (Shape == Shape::InnerRight) + return 6778; + else if (Shape == Shape::OuterLeft) + return 6780; + else + return 6782; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 6784; + else if (Shape == Shape::InnerLeft) + return 6786; + else if (Shape == Shape::InnerRight) + return 6788; + else if (Shape == Shape::OuterLeft) + return 6790; + else + return 6792; + else if (Shape == Shape::Straight) + return 6794; + else if (Shape == Shape::InnerLeft) + return 6796; + else if (Shape == Shape::InnerRight) + return 6798; + else if (Shape == Shape::OuterLeft) + return 6800; + else + return 6802; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 6804; + else if (Shape == Shape::InnerLeft) + return 6806; + else if (Shape == Shape::InnerRight) + return 6808; + else if (Shape == Shape::OuterLeft) + return 6810; + else + return 6812; + else if (Shape == Shape::Straight) + return 6814; + else if (Shape == Shape::InnerLeft) + return 6816; + else if (Shape == Shape::InnerRight) + return 6818; + else if (Shape == Shape::OuterLeft) + return 6820; + else + return 6822; +} +BlockState QuartzStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace QuartzStairs +namespace Rail +{ +enum class Shape +{ + NorthSouth, + EastWest, + AscendingEast, + AscendingWest, + AscendingNorth, + AscendingSouth, + SouthEast, + SouthWest, + NorthWest, + NorthEast +}; +constexpr BlockState Rail(const enum Shape Shape) +{ + if (Shape == Shape::NorthSouth) + return 3645; + else if (Shape == Shape::EastWest) + return 3646; + else if (Shape == Shape::AscendingEast) + return 3647; + else if (Shape == Shape::AscendingWest) + return 3648; + else if (Shape == Shape::AscendingNorth) + return 3649; + else if (Shape == Shape::AscendingSouth) + return 3650; + else if (Shape == Shape::SouthEast) + return 3651; + else if (Shape == Shape::SouthWest) + return 3652; + else if (Shape == Shape::NorthWest) + return 3653; + else + return 3654; +} +BlockState Rail(); +enum Shape Shape(BlockState Block); +} // namespace Rail +namespace RedBanner +{ +constexpr BlockState RedBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 8121; + else if (Rotation == 1) + return 8122; + else if (Rotation == 2) + return 8123; + else if (Rotation == 3) + return 8124; + else if (Rotation == 4) + return 8125; + else if (Rotation == 5) + return 8126; + else if (Rotation == 6) + return 8127; + else if (Rotation == 7) + return 8128; + else if (Rotation == 8) + return 8129; + else if (Rotation == 9) + return 8130; + else if (Rotation == 10) + return 8131; + else if (Rotation == 11) + return 8132; + else if (Rotation == 12) + return 8133; + else if (Rotation == 13) + return 8134; + else if (Rotation == 14) + return 8135; + else + return 8136; +} +BlockState RedBanner(); +unsigned char Rotation(BlockState Block); +} // namespace RedBanner +namespace RedBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState RedBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1273; + else + return 1274; + else if (Part == Part::Head) + return 1275; + else + return 1276; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1277; + else + return 1278; + else if (Part == Part::Head) + return 1279; + else + return 1280; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1281; + else + return 1282; + else if (Part == Part::Head) + return 1283; + else + return 1284; + else if (Occupied) + if (Part == Part::Head) + return 1285; + else + return 1286; + else if (Part == Part::Head) + return 1287; + else + return 1288; +} +BlockState RedBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace RedBed +namespace RedCarpet +{ +constexpr BlockState RedCarpet() +{ + return 7880; +} +} // namespace RedCarpet +namespace RedConcrete +{ +constexpr BlockState RedConcrete() +{ + return 9452; +} +} // namespace RedConcrete +namespace RedConcretePowder +{ +constexpr BlockState RedConcretePowder() +{ + return 9468; +} +} // namespace RedConcretePowder +namespace RedGlazedTerracotta +{ +constexpr BlockState RedGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9430; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9431; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9432; + else + return 9433; +} +BlockState RedGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace RedGlazedTerracotta +namespace RedMushroom +{ +constexpr BlockState RedMushroom() +{ + return 1426; +} +} // namespace RedMushroom +namespace RedMushroomBlock +{ +constexpr BlockState RedMushroomBlock( + const bool Down, + const bool East, + const bool North, + const bool South, + const bool Up, + const bool West +) +{ + if (Down) + if (East) + if (North) + if (South) + if (Up) + if (West) + return 4569; + else + return 4570; + else if (West) + return 4571; + else + return 4572; + else if (Up) + if (West) + return 4573; + else + return 4574; + else if (West) + return 4575; + else + return 4576; + else if (South) + if (Up) + if (West) + return 4577; + else + return 4578; + else if (West) + return 4579; + else + return 4580; + else if (Up) + if (West) + return 4581; + else + return 4582; + else if (West) + return 4583; + else + return 4584; + else if (North) + if (South) + if (Up) + if (West) + return 4585; + else + return 4586; + else if (West) + return 4587; + else + return 4588; + else if (Up) + if (West) + return 4589; + else + return 4590; + else if (West) + return 4591; + else + return 4592; + else if (South) + if (Up) + if (West) + return 4593; + else + return 4594; + else if (West) + return 4595; + else + return 4596; + else if (Up) + if (West) + return 4597; + else + return 4598; + else if (West) + return 4599; + else + return 4600; + else if (East) + if (North) + if (South) + if (Up) + if (West) + return 4601; + else + return 4602; + else if (West) + return 4603; + else + return 4604; + else if (Up) + if (West) + return 4605; + else + return 4606; + else if (West) + return 4607; + else + return 4608; + else if (South) + if (Up) + if (West) + return 4609; + else + return 4610; + else if (West) + return 4611; + else + return 4612; + else if (Up) + if (West) + return 4613; + else + return 4614; + else if (West) + return 4615; + else + return 4616; + else if (North) + if (South) + if (Up) + if (West) + return 4617; + else + return 4618; + else if (West) + return 4619; + else + return 4620; + else if (Up) + if (West) + return 4621; + else + return 4622; + else if (West) + return 4623; + else + return 4624; + else if (South) + if (Up) + if (West) + return 4625; + else + return 4626; + else if (West) + return 4627; + else + return 4628; + else if (Up) + if (West) + return 4629; + else + return 4630; + else if (West) + return 4631; + else + return 4632; +} +BlockState RedMushroomBlock(); +bool Down(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace RedMushroomBlock +namespace RedNetherBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState RedNetherBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10850; + else if (Type == Type::Bottom) + return 10852; + else + return 10854; +} +BlockState RedNetherBrickSlab(); +enum Type Type(BlockState Block); +} // namespace RedNetherBrickSlab +namespace RedNetherBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState RedNetherBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10550; + else if (Shape == Shape::InnerLeft) + return 10552; + else if (Shape == Shape::InnerRight) + return 10554; + else if (Shape == Shape::OuterLeft) + return 10556; + else + return 10558; + else if (Shape == Shape::Straight) + return 10560; + else if (Shape == Shape::InnerLeft) + return 10562; + else if (Shape == Shape::InnerRight) + return 10564; + else if (Shape == Shape::OuterLeft) + return 10566; + else + return 10568; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10570; + else if (Shape == Shape::InnerLeft) + return 10572; + else if (Shape == Shape::InnerRight) + return 10574; + else if (Shape == Shape::OuterLeft) + return 10576; + else + return 10578; + else if (Shape == Shape::Straight) + return 10580; + else if (Shape == Shape::InnerLeft) + return 10582; + else if (Shape == Shape::InnerRight) + return 10584; + else if (Shape == Shape::OuterLeft) + return 10586; + else + return 10588; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10590; + else if (Shape == Shape::InnerLeft) + return 10592; + else if (Shape == Shape::InnerRight) + return 10594; + else if (Shape == Shape::OuterLeft) + return 10596; + else + return 10598; + else if (Shape == Shape::Straight) + return 10600; + else if (Shape == Shape::InnerLeft) + return 10602; + else if (Shape == Shape::InnerRight) + return 10604; + else if (Shape == Shape::OuterLeft) + return 10606; + else + return 10608; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10610; + else if (Shape == Shape::InnerLeft) + return 10612; + else if (Shape == Shape::InnerRight) + return 10614; + else if (Shape == Shape::OuterLeft) + return 10616; + else + return 10618; + else if (Shape == Shape::Straight) + return 10620; + else if (Shape == Shape::InnerLeft) + return 10622; + else if (Shape == Shape::InnerRight) + return 10624; + else if (Shape == Shape::OuterLeft) + return 10626; + else + return 10628; +} +BlockState RedNetherBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace RedNetherBrickStairs +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 BlockState RedNetherBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13462; + else if (West == West::Low) + return 13463; + else + return 13464; + else if (West == West::None) + return 13468; + else if (West == West::Low) + return 13469; + else + return 13470; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13474; + else if (West == West::Low) + return 13475; + else + return 13476; + else if (West == West::None) + return 13480; + else if (West == West::Low) + return 13481; + else + return 13482; + else if (Up) + if (West == West::None) + return 13486; + else if (West == West::Low) + return 13487; + else + return 13488; + else if (West == West::None) + return 13492; + else if (West == West::Low) + return 13493; + else + return 13494; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13498; + else if (West == West::Low) + return 13499; + else + return 13500; + else if (West == West::None) + return 13504; + else if (West == West::Low) + return 13505; + else + return 13506; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13510; + else if (West == West::Low) + return 13511; + else + return 13512; + else if (West == West::None) + return 13516; + else if (West == West::Low) + return 13517; + else + return 13518; + else if (Up) + if (West == West::None) + return 13522; + else if (West == West::Low) + return 13523; + else + return 13524; + else if (West == West::None) + return 13528; + else if (West == West::Low) + return 13529; + else + return 13530; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13534; + else if (West == West::Low) + return 13535; + else + return 13536; + else if (West == West::None) + return 13540; + else if (West == West::Low) + return 13541; + else + return 13542; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13546; + else if (West == West::Low) + return 13547; + else + return 13548; + else if (West == West::None) + return 13552; + else if (West == West::Low) + return 13553; + else + return 13554; + else if (Up) + if (West == West::None) + return 13558; + else if (West == West::Low) + return 13559; + else + return 13560; + else if (West == West::None) + return 13564; + else if (West == West::Low) + return 13565; + else + return 13566; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13570; + else if (West == West::Low) + return 13571; + else + return 13572; + else if (West == West::None) + return 13576; + else if (West == West::Low) + return 13577; + else + return 13578; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13582; + else if (West == West::Low) + return 13583; + else + return 13584; + else if (West == West::None) + return 13588; + else if (West == West::Low) + return 13589; + else + return 13590; + else if (Up) + if (West == West::None) + return 13594; + else if (West == West::Low) + return 13595; + else + return 13596; + else if (West == West::None) + return 13600; + else if (West == West::Low) + return 13601; + else + return 13602; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13606; + else if (West == West::Low) + return 13607; + else + return 13608; + else if (West == West::None) + return 13612; + else if (West == West::Low) + return 13613; + else + return 13614; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13618; + else if (West == West::Low) + return 13619; + else + return 13620; + else if (West == West::None) + return 13624; + else if (West == West::Low) + return 13625; + else + return 13626; + else if (Up) + if (West == West::None) + return 13630; + else if (West == West::Low) + return 13631; + else + return 13632; + else if (West == West::None) + return 13636; + else if (West == West::Low) + return 13637; + else + return 13638; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13642; + else if (West == West::Low) + return 13643; + else + return 13644; + else if (West == West::None) + return 13648; + else if (West == West::Low) + return 13649; + else + return 13650; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13654; + else if (West == West::Low) + return 13655; + else + return 13656; + else if (West == West::None) + return 13660; + else if (West == West::Low) + return 13661; + else + return 13662; + else if (Up) + if (West == West::None) + return 13666; + else if (West == West::Low) + return 13667; + else + return 13668; + else if (West == West::None) + return 13672; + else if (West == West::Low) + return 13673; + else + return 13674; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13678; + else if (West == West::Low) + return 13679; + else + return 13680; + else if (West == West::None) + return 13684; + else if (West == West::Low) + return 13685; + else + return 13686; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13690; + else if (West == West::Low) + return 13691; + else + return 13692; + else if (West == West::None) + return 13696; + else if (West == West::Low) + return 13697; + else + return 13698; + else if (Up) + if (West == West::None) + return 13702; + else if (West == West::Low) + return 13703; + else + return 13704; + else if (West == West::None) + return 13708; + else if (West == West::Low) + return 13709; + else + return 13710; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13714; + else if (West == West::Low) + return 13715; + else + return 13716; + else if (West == West::None) + return 13720; + else if (West == West::Low) + return 13721; + else + return 13722; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13726; + else if (West == West::Low) + return 13727; + else + return 13728; + else if (West == West::None) + return 13732; + else if (West == West::Low) + return 13733; + else + return 13734; + else if (Up) + if (West == West::None) + return 13738; + else if (West == West::Low) + return 13739; + else + return 13740; + else if (West == West::None) + return 13744; + else if (West == West::Low) + return 13745; + else + return 13746; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13750; + else if (West == West::Low) + return 13751; + else + return 13752; + else if (West == West::None) + return 13756; + else if (West == West::Low) + return 13757; + else + return 13758; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13762; + else if (West == West::Low) + return 13763; + else + return 13764; + else if (West == West::None) + return 13768; + else if (West == West::Low) + return 13769; + else + return 13770; + else if (Up) + if (West == West::None) + return 13774; + else if (West == West::Low) + return 13775; + else + return 13776; + else if (West == West::None) + return 13780; + else if (West == West::Low) + return 13781; + else + return 13782; +} +BlockState RedNetherBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace RedNetherBrickWall +namespace RedNetherBricks +{ +constexpr BlockState RedNetherBricks() +{ + return 9255; +} +} // namespace RedNetherBricks +namespace RedSand +{ +constexpr BlockState RedSand() +{ + return 67; +} +} // namespace RedSand +namespace RedSandstone +{ +constexpr BlockState RedSandstone() +{ + return 8217; +} +} // namespace RedSandstone +namespace RedSandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState RedSandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8397; + else if (Type == Type::Bottom) + return 8399; + else + return 8401; +} +BlockState RedSandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace RedSandstoneSlab +namespace RedSandstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState RedSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 8221; + else if (Shape == Shape::InnerLeft) + return 8223; + else if (Shape == Shape::InnerRight) + return 8225; + else if (Shape == Shape::OuterLeft) + return 8227; + else + return 8229; + else if (Shape == Shape::Straight) + return 8231; + else if (Shape == Shape::InnerLeft) + return 8233; + else if (Shape == Shape::InnerRight) + return 8235; + else if (Shape == Shape::OuterLeft) + return 8237; + else + return 8239; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 8241; + else if (Shape == Shape::InnerLeft) + return 8243; + else if (Shape == Shape::InnerRight) + return 8245; + else if (Shape == Shape::OuterLeft) + return 8247; + else + return 8249; + else if (Shape == Shape::Straight) + return 8251; + else if (Shape == Shape::InnerLeft) + return 8253; + else if (Shape == Shape::InnerRight) + return 8255; + else if (Shape == Shape::OuterLeft) + return 8257; + else + return 8259; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 8261; + else if (Shape == Shape::InnerLeft) + return 8263; + else if (Shape == Shape::InnerRight) + return 8265; + else if (Shape == Shape::OuterLeft) + return 8267; + else + return 8269; + else if (Shape == Shape::Straight) + return 8271; + else if (Shape == Shape::InnerLeft) + return 8273; + else if (Shape == Shape::InnerRight) + return 8275; + else if (Shape == Shape::OuterLeft) + return 8277; + else + return 8279; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 8281; + else if (Shape == Shape::InnerLeft) + return 8283; + else if (Shape == Shape::InnerRight) + return 8285; + else if (Shape == Shape::OuterLeft) + return 8287; + else + return 8289; + else if (Shape == Shape::Straight) + return 8291; + else if (Shape == Shape::InnerLeft) + return 8293; + else if (Shape == Shape::InnerRight) + return 8295; + else if (Shape == Shape::OuterLeft) + return 8297; + else + return 8299; +} +BlockState RedSandstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace RedSandstoneStairs +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 BlockState RedSandstoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11518; + else if (West == West::Low) + return 11519; + else + return 11520; + else if (West == West::None) + return 11524; + else if (West == West::Low) + return 11525; + else + return 11526; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11530; + else if (West == West::Low) + return 11531; + else + return 11532; + else if (West == West::None) + return 11536; + else if (West == West::Low) + return 11537; + else + return 11538; + else if (Up) + if (West == West::None) + return 11542; + else if (West == West::Low) + return 11543; + else + return 11544; + else if (West == West::None) + return 11548; + else if (West == West::Low) + return 11549; + else + return 11550; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11554; + else if (West == West::Low) + return 11555; + else + return 11556; + else if (West == West::None) + return 11560; + else if (West == West::Low) + return 11561; + else + return 11562; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11566; + else if (West == West::Low) + return 11567; + else + return 11568; + else if (West == West::None) + return 11572; + else if (West == West::Low) + return 11573; + else + return 11574; + else if (Up) + if (West == West::None) + return 11578; + else if (West == West::Low) + return 11579; + else + return 11580; + else if (West == West::None) + return 11584; + else if (West == West::Low) + return 11585; + else + return 11586; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11590; + else if (West == West::Low) + return 11591; + else + return 11592; + else if (West == West::None) + return 11596; + else if (West == West::Low) + return 11597; + else + return 11598; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11602; + else if (West == West::Low) + return 11603; + else + return 11604; + else if (West == West::None) + return 11608; + else if (West == West::Low) + return 11609; + else + return 11610; + else if (Up) + if (West == West::None) + return 11614; + else if (West == West::Low) + return 11615; + else + return 11616; + else if (West == West::None) + return 11620; + else if (West == West::Low) + return 11621; + else + return 11622; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11626; + else if (West == West::Low) + return 11627; + else + return 11628; + else if (West == West::None) + return 11632; + else if (West == West::Low) + return 11633; + else + return 11634; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11638; + else if (West == West::Low) + return 11639; + else + return 11640; + else if (West == West::None) + return 11644; + else if (West == West::Low) + return 11645; + else + return 11646; + else if (Up) + if (West == West::None) + return 11650; + else if (West == West::Low) + return 11651; + else + return 11652; + else if (West == West::None) + return 11656; + else if (West == West::Low) + return 11657; + else + return 11658; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11662; + else if (West == West::Low) + return 11663; + else + return 11664; + else if (West == West::None) + return 11668; + else if (West == West::Low) + return 11669; + else + return 11670; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11674; + else if (West == West::Low) + return 11675; + else + return 11676; + else if (West == West::None) + return 11680; + else if (West == West::Low) + return 11681; + else + return 11682; + else if (Up) + if (West == West::None) + return 11686; + else if (West == West::Low) + return 11687; + else + return 11688; + else if (West == West::None) + return 11692; + else if (West == West::Low) + return 11693; + else + return 11694; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11698; + else if (West == West::Low) + return 11699; + else + return 11700; + else if (West == West::None) + return 11704; + else if (West == West::Low) + return 11705; + else + return 11706; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11710; + else if (West == West::Low) + return 11711; + else + return 11712; + else if (West == West::None) + return 11716; + else if (West == West::Low) + return 11717; + else + return 11718; + else if (Up) + if (West == West::None) + return 11722; + else if (West == West::Low) + return 11723; + else + return 11724; + else if (West == West::None) + return 11728; + else if (West == West::Low) + return 11729; + else + return 11730; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 11734; + else if (West == West::Low) + return 11735; + else + return 11736; + else if (West == West::None) + return 11740; + else if (West == West::Low) + return 11741; + else + return 11742; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11746; + else if (West == West::Low) + return 11747; + else + return 11748; + else if (West == West::None) + return 11752; + else if (West == West::Low) + return 11753; + else + return 11754; + else if (Up) + if (West == West::None) + return 11758; + else if (West == West::Low) + return 11759; + else + return 11760; + else if (West == West::None) + return 11764; + else if (West == West::Low) + return 11765; + else + return 11766; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 11770; + else if (West == West::Low) + return 11771; + else + return 11772; + else if (West == West::None) + return 11776; + else if (West == West::Low) + return 11777; + else + return 11778; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11782; + else if (West == West::Low) + return 11783; + else + return 11784; + else if (West == West::None) + return 11788; + else if (West == West::Low) + return 11789; + else + return 11790; + else if (Up) + if (West == West::None) + return 11794; + else if (West == West::Low) + return 11795; + else + return 11796; + else if (West == West::None) + return 11800; + else if (West == West::Low) + return 11801; + else + return 11802; + else if (South == South::None) + if (Up) + if (West == West::None) + return 11806; + else if (West == West::Low) + return 11807; + else + return 11808; + else if (West == West::None) + return 11812; + else if (West == West::Low) + return 11813; + else + return 11814; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 11818; + else if (West == West::Low) + return 11819; + else + return 11820; + else if (West == West::None) + return 11824; + else if (West == West::Low) + return 11825; + else + return 11826; + else if (Up) + if (West == West::None) + return 11830; + else if (West == West::Low) + return 11831; + else + return 11832; + else if (West == West::None) + return 11836; + else if (West == West::Low) + return 11837; + else + return 11838; +} +BlockState RedSandstoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace RedSandstoneWall +namespace RedShulkerBox +{ +constexpr BlockState RedShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9362; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9363; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9364; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9365; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9366; + else + return 9367; +} +BlockState RedShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace RedShulkerBox +namespace RedStainedGlass +{ +constexpr BlockState RedStainedGlass() +{ + return 4109; +} +} // namespace RedStainedGlass +namespace RedStainedGlassPane +{ +constexpr BlockState RedStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 7313; + else + return 7314; + else if (West) + return 7317; + else + return 7318; + else if (South) + if (West) + return 7321; + else + return 7322; + else if (West) + return 7325; + else + return 7326; + else if (North) + if (South) + if (West) + return 7329; + else + return 7330; + else if (West) + return 7333; + else + return 7334; + else if (South) + if (West) + return 7337; + else + return 7338; + else if (West) + return 7341; + else + return 7342; +} +BlockState RedStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace RedStainedGlassPane +namespace RedTerracotta +{ +constexpr BlockState RedTerracotta() +{ + return 6861; +} +} // namespace RedTerracotta +namespace RedTulip +{ +constexpr BlockState RedTulip() +{ + return 1417; +} +} // namespace RedTulip +namespace RedWallBanner +{ +constexpr BlockState RedWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8209; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8210; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8211; + else + return 8212; +} +BlockState RedWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace RedWallBanner +namespace RedWool +{ +constexpr BlockState RedWool() +{ + return 1398; +} +} // namespace RedWool +namespace RedstoneBlock +{ +constexpr BlockState RedstoneBlock() +{ + return 6726; +} +} // namespace RedstoneBlock +namespace RedstoneLamp +{ +constexpr BlockState RedstoneLamp(const bool Lit) +{ + if (Lit) + return 5156; + else + return 5157; +} +BlockState RedstoneLamp(); +bool Lit(BlockState Block); +} // namespace RedstoneLamp +namespace RedstoneOre +{ +constexpr BlockState RedstoneOre(const bool Lit) +{ + if (Lit) + return 3885; + else + return 3886; +} +BlockState RedstoneOre(); +bool Lit(BlockState Block); +} // namespace RedstoneOre +namespace RedstoneTorch +{ +constexpr BlockState RedstoneTorch(const bool Lit) +{ + if (Lit) + return 3887; + else + return 3888; +} +BlockState RedstoneTorch(); +bool Lit(BlockState Block); +} // namespace RedstoneTorch +namespace RedstoneWallTorch +{ +constexpr BlockState RedstoneWallTorch(const eBlockFace Facing, const bool Lit) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + return 3889; + else + return 3890; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + return 3891; + else + return 3892; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + return 3893; + else + return 3894; + else if (Lit) + return 3895; + else + return 3896; +} +BlockState RedstoneWallTorch(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +} // namespace RedstoneWallTorch +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 BlockState RedstoneWire( + const enum East East, + const enum North North, + const unsigned char Power, + const enum South South, + const enum West West +) +{ + if (East == East::Up) + if (North == North::Up) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2058; + else if (West == West::Side) + return 2059; + else + return 2060; + else if (South == South::Side) + if (West == West::Up) + return 2061; + else if (West == West::Side) + return 2062; + else + return 2063; + else if (West == West::Up) + return 2064; + else if (West == West::Side) + return 2065; + else + return 2066; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2067; + else if (West == West::Side) + return 2068; + else + return 2069; + else if (South == South::Side) + if (West == West::Up) + return 2070; + else if (West == West::Side) + return 2071; + else + return 2072; + else if (West == West::Up) + return 2073; + else if (West == West::Side) + return 2074; + else + return 2075; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2076; + else if (West == West::Side) + return 2077; + else + return 2078; + else if (South == South::Side) + if (West == West::Up) + return 2079; + else if (West == West::Side) + return 2080; + else + return 2081; + else if (West == West::Up) + return 2082; + else if (West == West::Side) + return 2083; + else + return 2084; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2085; + else if (West == West::Side) + return 2086; + else + return 2087; + else if (South == South::Side) + if (West == West::Up) + return 2088; + else if (West == West::Side) + return 2089; + else + return 2090; + else if (West == West::Up) + return 2091; + else if (West == West::Side) + return 2092; + else + return 2093; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2094; + else if (West == West::Side) + return 2095; + else + return 2096; + else if (South == South::Side) + if (West == West::Up) + return 2097; + else if (West == West::Side) + return 2098; + else + return 2099; + else if (West == West::Up) + return 2100; + else if (West == West::Side) + return 2101; + else + return 2102; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2103; + else if (West == West::Side) + return 2104; + else + return 2105; + else if (South == South::Side) + if (West == West::Up) + return 2106; + else if (West == West::Side) + return 2107; + else + return 2108; + else if (West == West::Up) + return 2109; + else if (West == West::Side) + return 2110; + else + return 2111; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2112; + else if (West == West::Side) + return 2113; + else + return 2114; + else if (South == South::Side) + if (West == West::Up) + return 2115; + else if (West == West::Side) + return 2116; + else + return 2117; + else if (West == West::Up) + return 2118; + else if (West == West::Side) + return 2119; + else + return 2120; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2121; + else if (West == West::Side) + return 2122; + else + return 2123; + else if (South == South::Side) + if (West == West::Up) + return 2124; + else if (West == West::Side) + return 2125; + else + return 2126; + else if (West == West::Up) + return 2127; + else if (West == West::Side) + return 2128; + else + return 2129; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2130; + else if (West == West::Side) + return 2131; + else + return 2132; + else if (South == South::Side) + if (West == West::Up) + return 2133; + else if (West == West::Side) + return 2134; + else + return 2135; + else if (West == West::Up) + return 2136; + else if (West == West::Side) + return 2137; + else + return 2138; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2139; + else if (West == West::Side) + return 2140; + else + return 2141; + else if (South == South::Side) + if (West == West::Up) + return 2142; + else if (West == West::Side) + return 2143; + else + return 2144; + else if (West == West::Up) + return 2145; + else if (West == West::Side) + return 2146; + else + return 2147; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2148; + else if (West == West::Side) + return 2149; + else + return 2150; + else if (South == South::Side) + if (West == West::Up) + return 2151; + else if (West == West::Side) + return 2152; + else + return 2153; + else if (West == West::Up) + return 2154; + else if (West == West::Side) + return 2155; + else + return 2156; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2157; + else if (West == West::Side) + return 2158; + else + return 2159; + else if (South == South::Side) + if (West == West::Up) + return 2160; + else if (West == West::Side) + return 2161; + else + return 2162; + else if (West == West::Up) + return 2163; + else if (West == West::Side) + return 2164; + else + return 2165; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2166; + else if (West == West::Side) + return 2167; + else + return 2168; + else if (South == South::Side) + if (West == West::Up) + return 2169; + else if (West == West::Side) + return 2170; + else + return 2171; + else if (West == West::Up) + return 2172; + else if (West == West::Side) + return 2173; + else + return 2174; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2175; + else if (West == West::Side) + return 2176; + else + return 2177; + else if (South == South::Side) + if (West == West::Up) + return 2178; + else if (West == West::Side) + return 2179; + else + return 2180; + else if (West == West::Up) + return 2181; + else if (West == West::Side) + return 2182; + else + return 2183; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2184; + else if (West == West::Side) + return 2185; + else + return 2186; + else if (South == South::Side) + if (West == West::Up) + return 2187; + else if (West == West::Side) + return 2188; + else + return 2189; + else if (West == West::Up) + return 2190; + else if (West == West::Side) + return 2191; + else + return 2192; + else if (South == South::Up) + if (West == West::Up) + return 2193; + else if (West == West::Side) + return 2194; + else + return 2195; + else if (South == South::Side) + if (West == West::Up) + return 2196; + else if (West == West::Side) + return 2197; + else + return 2198; + else if (West == West::Up) + return 2199; + else if (West == West::Side) + return 2200; + else + return 2201; + else if (North == North::Side) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2202; + else if (West == West::Side) + return 2203; + else + return 2204; + else if (South == South::Side) + if (West == West::Up) + return 2205; + else if (West == West::Side) + return 2206; + else + return 2207; + else if (West == West::Up) + return 2208; + else if (West == West::Side) + return 2209; + else + return 2210; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2211; + else if (West == West::Side) + return 2212; + else + return 2213; + else if (South == South::Side) + if (West == West::Up) + return 2214; + else if (West == West::Side) + return 2215; + else + return 2216; + else if (West == West::Up) + return 2217; + else if (West == West::Side) + return 2218; + else + return 2219; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2220; + else if (West == West::Side) + return 2221; + else + return 2222; + else if (South == South::Side) + if (West == West::Up) + return 2223; + else if (West == West::Side) + return 2224; + else + return 2225; + else if (West == West::Up) + return 2226; + else if (West == West::Side) + return 2227; + else + return 2228; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2229; + else if (West == West::Side) + return 2230; + else + return 2231; + else if (South == South::Side) + if (West == West::Up) + return 2232; + else if (West == West::Side) + return 2233; + else + return 2234; + else if (West == West::Up) + return 2235; + else if (West == West::Side) + return 2236; + else + return 2237; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2238; + else if (West == West::Side) + return 2239; + else + return 2240; + else if (South == South::Side) + if (West == West::Up) + return 2241; + else if (West == West::Side) + return 2242; + else + return 2243; + else if (West == West::Up) + return 2244; + else if (West == West::Side) + return 2245; + else + return 2246; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2247; + else if (West == West::Side) + return 2248; + else + return 2249; + else if (South == South::Side) + if (West == West::Up) + return 2250; + else if (West == West::Side) + return 2251; + else + return 2252; + else if (West == West::Up) + return 2253; + else if (West == West::Side) + return 2254; + else + return 2255; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2256; + else if (West == West::Side) + return 2257; + else + return 2258; + else if (South == South::Side) + if (West == West::Up) + return 2259; + else if (West == West::Side) + return 2260; + else + return 2261; + else if (West == West::Up) + return 2262; + else if (West == West::Side) + return 2263; + else + return 2264; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2265; + else if (West == West::Side) + return 2266; + else + return 2267; + else if (South == South::Side) + if (West == West::Up) + return 2268; + else if (West == West::Side) + return 2269; + else + return 2270; + else if (West == West::Up) + return 2271; + else if (West == West::Side) + return 2272; + else + return 2273; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2274; + else if (West == West::Side) + return 2275; + else + return 2276; + else if (South == South::Side) + if (West == West::Up) + return 2277; + else if (West == West::Side) + return 2278; + else + return 2279; + else if (West == West::Up) + return 2280; + else if (West == West::Side) + return 2281; + else + return 2282; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2283; + else if (West == West::Side) + return 2284; + else + return 2285; + else if (South == South::Side) + if (West == West::Up) + return 2286; + else if (West == West::Side) + return 2287; + else + return 2288; + else if (West == West::Up) + return 2289; + else if (West == West::Side) + return 2290; + else + return 2291; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2292; + else if (West == West::Side) + return 2293; + else + return 2294; + else if (South == South::Side) + if (West == West::Up) + return 2295; + else if (West == West::Side) + return 2296; + else + return 2297; + else if (West == West::Up) + return 2298; + else if (West == West::Side) + return 2299; + else + return 2300; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2301; + else if (West == West::Side) + return 2302; + else + return 2303; + else if (South == South::Side) + if (West == West::Up) + return 2304; + else if (West == West::Side) + return 2305; + else + return 2306; + else if (West == West::Up) + return 2307; + else if (West == West::Side) + return 2308; + else + return 2309; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2310; + else if (West == West::Side) + return 2311; + else + return 2312; + else if (South == South::Side) + if (West == West::Up) + return 2313; + else if (West == West::Side) + return 2314; + else + return 2315; + else if (West == West::Up) + return 2316; + else if (West == West::Side) + return 2317; + else + return 2318; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2319; + else if (West == West::Side) + return 2320; + else + return 2321; + else if (South == South::Side) + if (West == West::Up) + return 2322; + else if (West == West::Side) + return 2323; + else + return 2324; + else if (West == West::Up) + return 2325; + else if (West == West::Side) + return 2326; + else + return 2327; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2328; + else if (West == West::Side) + return 2329; + else + return 2330; + else if (South == South::Side) + if (West == West::Up) + return 2331; + else if (West == West::Side) + return 2332; + else + return 2333; + else if (West == West::Up) + return 2334; + else if (West == West::Side) + return 2335; + else + return 2336; + else if (South == South::Up) + if (West == West::Up) + return 2337; + else if (West == West::Side) + return 2338; + else + return 2339; + else if (South == South::Side) + if (West == West::Up) + return 2340; + else if (West == West::Side) + return 2341; + else + return 2342; + else if (West == West::Up) + return 2343; + else if (West == West::Side) + return 2344; + else + return 2345; + else if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2346; + else if (West == West::Side) + return 2347; + else + return 2348; + else if (South == South::Side) + if (West == West::Up) + return 2349; + else if (West == West::Side) + return 2350; + else + return 2351; + else if (West == West::Up) + return 2352; + else if (West == West::Side) + return 2353; + else + return 2354; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2355; + else if (West == West::Side) + return 2356; + else + return 2357; + else if (South == South::Side) + if (West == West::Up) + return 2358; + else if (West == West::Side) + return 2359; + else + return 2360; + else if (West == West::Up) + return 2361; + else if (West == West::Side) + return 2362; + else + return 2363; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2364; + else if (West == West::Side) + return 2365; + else + return 2366; + else if (South == South::Side) + if (West == West::Up) + return 2367; + else if (West == West::Side) + return 2368; + else + return 2369; + else if (West == West::Up) + return 2370; + else if (West == West::Side) + return 2371; + else + return 2372; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2373; + else if (West == West::Side) + return 2374; + else + return 2375; + else if (South == South::Side) + if (West == West::Up) + return 2376; + else if (West == West::Side) + return 2377; + else + return 2378; + else if (West == West::Up) + return 2379; + else if (West == West::Side) + return 2380; + else + return 2381; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2382; + else if (West == West::Side) + return 2383; + else + return 2384; + else if (South == South::Side) + if (West == West::Up) + return 2385; + else if (West == West::Side) + return 2386; + else + return 2387; + else if (West == West::Up) + return 2388; + else if (West == West::Side) + return 2389; + else + return 2390; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2391; + else if (West == West::Side) + return 2392; + else + return 2393; + else if (South == South::Side) + if (West == West::Up) + return 2394; + else if (West == West::Side) + return 2395; + else + return 2396; + else if (West == West::Up) + return 2397; + else if (West == West::Side) + return 2398; + else + return 2399; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2400; + else if (West == West::Side) + return 2401; + else + return 2402; + else if (South == South::Side) + if (West == West::Up) + return 2403; + else if (West == West::Side) + return 2404; + else + return 2405; + else if (West == West::Up) + return 2406; + else if (West == West::Side) + return 2407; + else + return 2408; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2409; + else if (West == West::Side) + return 2410; + else + return 2411; + else if (South == South::Side) + if (West == West::Up) + return 2412; + else if (West == West::Side) + return 2413; + else + return 2414; + else if (West == West::Up) + return 2415; + else if (West == West::Side) + return 2416; + else + return 2417; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2418; + else if (West == West::Side) + return 2419; + else + return 2420; + else if (South == South::Side) + if (West == West::Up) + return 2421; + else if (West == West::Side) + return 2422; + else + return 2423; + else if (West == West::Up) + return 2424; + else if (West == West::Side) + return 2425; + else + return 2426; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2427; + else if (West == West::Side) + return 2428; + else + return 2429; + else if (South == South::Side) + if (West == West::Up) + return 2430; + else if (West == West::Side) + return 2431; + else + return 2432; + else if (West == West::Up) + return 2433; + else if (West == West::Side) + return 2434; + else + return 2435; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2436; + else if (West == West::Side) + return 2437; + else + return 2438; + else if (South == South::Side) + if (West == West::Up) + return 2439; + else if (West == West::Side) + return 2440; + else + return 2441; + else if (West == West::Up) + return 2442; + else if (West == West::Side) + return 2443; + else + return 2444; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2445; + else if (West == West::Side) + return 2446; + else + return 2447; + else if (South == South::Side) + if (West == West::Up) + return 2448; + else if (West == West::Side) + return 2449; + else + return 2450; + else if (West == West::Up) + return 2451; + else if (West == West::Side) + return 2452; + else + return 2453; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2454; + else if (West == West::Side) + return 2455; + else + return 2456; + else if (South == South::Side) + if (West == West::Up) + return 2457; + else if (West == West::Side) + return 2458; + else + return 2459; + else if (West == West::Up) + return 2460; + else if (West == West::Side) + return 2461; + else + return 2462; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2463; + else if (West == West::Side) + return 2464; + else + return 2465; + else if (South == South::Side) + if (West == West::Up) + return 2466; + else if (West == West::Side) + return 2467; + else + return 2468; + else if (West == West::Up) + return 2469; + else if (West == West::Side) + return 2470; + else + return 2471; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2472; + else if (West == West::Side) + return 2473; + else + return 2474; + else if (South == South::Side) + if (West == West::Up) + return 2475; + else if (West == West::Side) + return 2476; + else + return 2477; + else if (West == West::Up) + return 2478; + else if (West == West::Side) + return 2479; + else + return 2480; + else if (South == South::Up) + if (West == West::Up) + return 2481; + else if (West == West::Side) + return 2482; + else + return 2483; + else if (South == South::Side) + if (West == West::Up) + return 2484; + else if (West == West::Side) + return 2485; + else + return 2486; + else if (West == West::Up) + return 2487; + else if (West == West::Side) + return 2488; + else + return 2489; + else if (East == East::Side) + if (North == North::Up) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2490; + else if (West == West::Side) + return 2491; + else + return 2492; + else if (South == South::Side) + if (West == West::Up) + return 2493; + else if (West == West::Side) + return 2494; + else + return 2495; + else if (West == West::Up) + return 2496; + else if (West == West::Side) + return 2497; + else + return 2498; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2499; + else if (West == West::Side) + return 2500; + else + return 2501; + else if (South == South::Side) + if (West == West::Up) + return 2502; + else if (West == West::Side) + return 2503; + else + return 2504; + else if (West == West::Up) + return 2505; + else if (West == West::Side) + return 2506; + else + return 2507; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2508; + else if (West == West::Side) + return 2509; + else + return 2510; + else if (South == South::Side) + if (West == West::Up) + return 2511; + else if (West == West::Side) + return 2512; + else + return 2513; + else if (West == West::Up) + return 2514; + else if (West == West::Side) + return 2515; + else + return 2516; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2517; + else if (West == West::Side) + return 2518; + else + return 2519; + else if (South == South::Side) + if (West == West::Up) + return 2520; + else if (West == West::Side) + return 2521; + else + return 2522; + else if (West == West::Up) + return 2523; + else if (West == West::Side) + return 2524; + else + return 2525; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2526; + else if (West == West::Side) + return 2527; + else + return 2528; + else if (South == South::Side) + if (West == West::Up) + return 2529; + else if (West == West::Side) + return 2530; + else + return 2531; + else if (West == West::Up) + return 2532; + else if (West == West::Side) + return 2533; + else + return 2534; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2535; + else if (West == West::Side) + return 2536; + else + return 2537; + else if (South == South::Side) + if (West == West::Up) + return 2538; + else if (West == West::Side) + return 2539; + else + return 2540; + else if (West == West::Up) + return 2541; + else if (West == West::Side) + return 2542; + else + return 2543; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2544; + else if (West == West::Side) + return 2545; + else + return 2546; + else if (South == South::Side) + if (West == West::Up) + return 2547; + else if (West == West::Side) + return 2548; + else + return 2549; + else if (West == West::Up) + return 2550; + else if (West == West::Side) + return 2551; + else + return 2552; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2553; + else if (West == West::Side) + return 2554; + else + return 2555; + else if (South == South::Side) + if (West == West::Up) + return 2556; + else if (West == West::Side) + return 2557; + else + return 2558; + else if (West == West::Up) + return 2559; + else if (West == West::Side) + return 2560; + else + return 2561; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2562; + else if (West == West::Side) + return 2563; + else + return 2564; + else if (South == South::Side) + if (West == West::Up) + return 2565; + else if (West == West::Side) + return 2566; + else + return 2567; + else if (West == West::Up) + return 2568; + else if (West == West::Side) + return 2569; + else + return 2570; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2571; + else if (West == West::Side) + return 2572; + else + return 2573; + else if (South == South::Side) + if (West == West::Up) + return 2574; + else if (West == West::Side) + return 2575; + else + return 2576; + else if (West == West::Up) + return 2577; + else if (West == West::Side) + return 2578; + else + return 2579; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2580; + else if (West == West::Side) + return 2581; + else + return 2582; + else if (South == South::Side) + if (West == West::Up) + return 2583; + else if (West == West::Side) + return 2584; + else + return 2585; + else if (West == West::Up) + return 2586; + else if (West == West::Side) + return 2587; + else + return 2588; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2589; + else if (West == West::Side) + return 2590; + else + return 2591; + else if (South == South::Side) + if (West == West::Up) + return 2592; + else if (West == West::Side) + return 2593; + else + return 2594; + else if (West == West::Up) + return 2595; + else if (West == West::Side) + return 2596; + else + return 2597; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2598; + else if (West == West::Side) + return 2599; + else + return 2600; + else if (South == South::Side) + if (West == West::Up) + return 2601; + else if (West == West::Side) + return 2602; + else + return 2603; + else if (West == West::Up) + return 2604; + else if (West == West::Side) + return 2605; + else + return 2606; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2607; + else if (West == West::Side) + return 2608; + else + return 2609; + else if (South == South::Side) + if (West == West::Up) + return 2610; + else if (West == West::Side) + return 2611; + else + return 2612; + else if (West == West::Up) + return 2613; + else if (West == West::Side) + return 2614; + else + return 2615; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2616; + else if (West == West::Side) + return 2617; + else + return 2618; + else if (South == South::Side) + if (West == West::Up) + return 2619; + else if (West == West::Side) + return 2620; + else + return 2621; + else if (West == West::Up) + return 2622; + else if (West == West::Side) + return 2623; + else + return 2624; + else if (South == South::Up) + if (West == West::Up) + return 2625; + else if (West == West::Side) + return 2626; + else + return 2627; + else if (South == South::Side) + if (West == West::Up) + return 2628; + else if (West == West::Side) + return 2629; + else + return 2630; + else if (West == West::Up) + return 2631; + else if (West == West::Side) + return 2632; + else + return 2633; + else if (North == North::Side) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2634; + else if (West == West::Side) + return 2635; + else + return 2636; + else if (South == South::Side) + if (West == West::Up) + return 2637; + else if (West == West::Side) + return 2638; + else + return 2639; + else if (West == West::Up) + return 2640; + else if (West == West::Side) + return 2641; + else + return 2642; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2643; + else if (West == West::Side) + return 2644; + else + return 2645; + else if (South == South::Side) + if (West == West::Up) + return 2646; + else if (West == West::Side) + return 2647; + else + return 2648; + else if (West == West::Up) + return 2649; + else if (West == West::Side) + return 2650; + else + return 2651; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2652; + else if (West == West::Side) + return 2653; + else + return 2654; + else if (South == South::Side) + if (West == West::Up) + return 2655; + else if (West == West::Side) + return 2656; + else + return 2657; + else if (West == West::Up) + return 2658; + else if (West == West::Side) + return 2659; + else + return 2660; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2661; + else if (West == West::Side) + return 2662; + else + return 2663; + else if (South == South::Side) + if (West == West::Up) + return 2664; + else if (West == West::Side) + return 2665; + else + return 2666; + else if (West == West::Up) + return 2667; + else if (West == West::Side) + return 2668; + else + return 2669; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2670; + else if (West == West::Side) + return 2671; + else + return 2672; + else if (South == South::Side) + if (West == West::Up) + return 2673; + else if (West == West::Side) + return 2674; + else + return 2675; + else if (West == West::Up) + return 2676; + else if (West == West::Side) + return 2677; + else + return 2678; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2679; + else if (West == West::Side) + return 2680; + else + return 2681; + else if (South == South::Side) + if (West == West::Up) + return 2682; + else if (West == West::Side) + return 2683; + else + return 2684; + else if (West == West::Up) + return 2685; + else if (West == West::Side) + return 2686; + else + return 2687; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2688; + else if (West == West::Side) + return 2689; + else + return 2690; + else if (South == South::Side) + if (West == West::Up) + return 2691; + else if (West == West::Side) + return 2692; + else + return 2693; + else if (West == West::Up) + return 2694; + else if (West == West::Side) + return 2695; + else + return 2696; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2697; + else if (West == West::Side) + return 2698; + else + return 2699; + else if (South == South::Side) + if (West == West::Up) + return 2700; + else if (West == West::Side) + return 2701; + else + return 2702; + else if (West == West::Up) + return 2703; + else if (West == West::Side) + return 2704; + else + return 2705; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2706; + else if (West == West::Side) + return 2707; + else + return 2708; + else if (South == South::Side) + if (West == West::Up) + return 2709; + else if (West == West::Side) + return 2710; + else + return 2711; + else if (West == West::Up) + return 2712; + else if (West == West::Side) + return 2713; + else + return 2714; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2715; + else if (West == West::Side) + return 2716; + else + return 2717; + else if (South == South::Side) + if (West == West::Up) + return 2718; + else if (West == West::Side) + return 2719; + else + return 2720; + else if (West == West::Up) + return 2721; + else if (West == West::Side) + return 2722; + else + return 2723; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2724; + else if (West == West::Side) + return 2725; + else + return 2726; + else if (South == South::Side) + if (West == West::Up) + return 2727; + else if (West == West::Side) + return 2728; + else + return 2729; + else if (West == West::Up) + return 2730; + else if (West == West::Side) + return 2731; + else + return 2732; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2733; + else if (West == West::Side) + return 2734; + else + return 2735; + else if (South == South::Side) + if (West == West::Up) + return 2736; + else if (West == West::Side) + return 2737; + else + return 2738; + else if (West == West::Up) + return 2739; + else if (West == West::Side) + return 2740; + else + return 2741; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2742; + else if (West == West::Side) + return 2743; + else + return 2744; + else if (South == South::Side) + if (West == West::Up) + return 2745; + else if (West == West::Side) + return 2746; + else + return 2747; + else if (West == West::Up) + return 2748; + else if (West == West::Side) + return 2749; + else + return 2750; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2751; + else if (West == West::Side) + return 2752; + else + return 2753; + else if (South == South::Side) + if (West == West::Up) + return 2754; + else if (West == West::Side) + return 2755; + else + return 2756; + else if (West == West::Up) + return 2757; + else if (West == West::Side) + return 2758; + else + return 2759; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2760; + else if (West == West::Side) + return 2761; + else + return 2762; + else if (South == South::Side) + if (West == West::Up) + return 2763; + else if (West == West::Side) + return 2764; + else + return 2765; + else if (West == West::Up) + return 2766; + else if (West == West::Side) + return 2767; + else + return 2768; + else if (South == South::Up) + if (West == West::Up) + return 2769; + else if (West == West::Side) + return 2770; + else + return 2771; + else if (South == South::Side) + if (West == West::Up) + return 2772; + else if (West == West::Side) + return 2773; + else + return 2774; + else if (West == West::Up) + return 2775; + else if (West == West::Side) + return 2776; + else + return 2777; + else if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2778; + else if (West == West::Side) + return 2779; + else + return 2780; + else if (South == South::Side) + if (West == West::Up) + return 2781; + else if (West == West::Side) + return 2782; + else + return 2783; + else if (West == West::Up) + return 2784; + else if (West == West::Side) + return 2785; + else + return 2786; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2787; + else if (West == West::Side) + return 2788; + else + return 2789; + else if (South == South::Side) + if (West == West::Up) + return 2790; + else if (West == West::Side) + return 2791; + else + return 2792; + else if (West == West::Up) + return 2793; + else if (West == West::Side) + return 2794; + else + return 2795; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2796; + else if (West == West::Side) + return 2797; + else + return 2798; + else if (South == South::Side) + if (West == West::Up) + return 2799; + else if (West == West::Side) + return 2800; + else + return 2801; + else if (West == West::Up) + return 2802; + else if (West == West::Side) + return 2803; + else + return 2804; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2805; + else if (West == West::Side) + return 2806; + else + return 2807; + else if (South == South::Side) + if (West == West::Up) + return 2808; + else if (West == West::Side) + return 2809; + else + return 2810; + else if (West == West::Up) + return 2811; + else if (West == West::Side) + return 2812; + else + return 2813; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2814; + else if (West == West::Side) + return 2815; + else + return 2816; + else if (South == South::Side) + if (West == West::Up) + return 2817; + else if (West == West::Side) + return 2818; + else + return 2819; + else if (West == West::Up) + return 2820; + else if (West == West::Side) + return 2821; + else + return 2822; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2823; + else if (West == West::Side) + return 2824; + else + return 2825; + else if (South == South::Side) + if (West == West::Up) + return 2826; + else if (West == West::Side) + return 2827; + else + return 2828; + else if (West == West::Up) + return 2829; + else if (West == West::Side) + return 2830; + else + return 2831; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2832; + else if (West == West::Side) + return 2833; + else + return 2834; + else if (South == South::Side) + if (West == West::Up) + return 2835; + else if (West == West::Side) + return 2836; + else + return 2837; + else if (West == West::Up) + return 2838; + else if (West == West::Side) + return 2839; + else + return 2840; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2841; + else if (West == West::Side) + return 2842; + else + return 2843; + else if (South == South::Side) + if (West == West::Up) + return 2844; + else if (West == West::Side) + return 2845; + else + return 2846; + else if (West == West::Up) + return 2847; + else if (West == West::Side) + return 2848; + else + return 2849; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2850; + else if (West == West::Side) + return 2851; + else + return 2852; + else if (South == South::Side) + if (West == West::Up) + return 2853; + else if (West == West::Side) + return 2854; + else + return 2855; + else if (West == West::Up) + return 2856; + else if (West == West::Side) + return 2857; + else + return 2858; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 2859; + else if (West == West::Side) + return 2860; + else + return 2861; + else if (South == South::Side) + if (West == West::Up) + return 2862; + else if (West == West::Side) + return 2863; + else + return 2864; + else if (West == West::Up) + return 2865; + else if (West == West::Side) + return 2866; + else + return 2867; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 2868; + else if (West == West::Side) + return 2869; + else + return 2870; + else if (South == South::Side) + if (West == West::Up) + return 2871; + else if (West == West::Side) + return 2872; + else + return 2873; + else if (West == West::Up) + return 2874; + else if (West == West::Side) + return 2875; + else + return 2876; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 2877; + else if (West == West::Side) + return 2878; + else + return 2879; + else if (South == South::Side) + if (West == West::Up) + return 2880; + else if (West == West::Side) + return 2881; + else + return 2882; + else if (West == West::Up) + return 2883; + else if (West == West::Side) + return 2884; + else + return 2885; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 2886; + else if (West == West::Side) + return 2887; + else + return 2888; + else if (South == South::Side) + if (West == West::Up) + return 2889; + else if (West == West::Side) + return 2890; + else + return 2891; + else if (West == West::Up) + return 2892; + else if (West == West::Side) + return 2893; + else + return 2894; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 2895; + else if (West == West::Side) + return 2896; + else + return 2897; + else if (South == South::Side) + if (West == West::Up) + return 2898; + else if (West == West::Side) + return 2899; + else + return 2900; + else if (West == West::Up) + return 2901; + else if (West == West::Side) + return 2902; + else + return 2903; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 2904; + else if (West == West::Side) + return 2905; + else + return 2906; + else if (South == South::Side) + if (West == West::Up) + return 2907; + else if (West == West::Side) + return 2908; + else + return 2909; + else if (West == West::Up) + return 2910; + else if (West == West::Side) + return 2911; + else + return 2912; + else if (South == South::Up) + if (West == West::Up) + return 2913; + else if (West == West::Side) + return 2914; + else + return 2915; + else if (South == South::Side) + if (West == West::Up) + return 2916; + else if (West == West::Side) + return 2917; + else + return 2918; + else if (West == West::Up) + return 2919; + else if (West == West::Side) + return 2920; + else + return 2921; + else if (North == North::Up) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 2922; + else if (West == West::Side) + return 2923; + else + return 2924; + else if (South == South::Side) + if (West == West::Up) + return 2925; + else if (West == West::Side) + return 2926; + else + return 2927; + else if (West == West::Up) + return 2928; + else if (West == West::Side) + return 2929; + else + return 2930; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 2931; + else if (West == West::Side) + return 2932; + else + return 2933; + else if (South == South::Side) + if (West == West::Up) + return 2934; + else if (West == West::Side) + return 2935; + else + return 2936; + else if (West == West::Up) + return 2937; + else if (West == West::Side) + return 2938; + else + return 2939; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 2940; + else if (West == West::Side) + return 2941; + else + return 2942; + else if (South == South::Side) + if (West == West::Up) + return 2943; + else if (West == West::Side) + return 2944; + else + return 2945; + else if (West == West::Up) + return 2946; + else if (West == West::Side) + return 2947; + else + return 2948; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 2949; + else if (West == West::Side) + return 2950; + else + return 2951; + else if (South == South::Side) + if (West == West::Up) + return 2952; + else if (West == West::Side) + return 2953; + else + return 2954; + else if (West == West::Up) + return 2955; + else if (West == West::Side) + return 2956; + else + return 2957; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 2958; + else if (West == West::Side) + return 2959; + else + return 2960; + else if (South == South::Side) + if (West == West::Up) + return 2961; + else if (West == West::Side) + return 2962; + else + return 2963; + else if (West == West::Up) + return 2964; + else if (West == West::Side) + return 2965; + else + return 2966; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 2967; + else if (West == West::Side) + return 2968; + else + return 2969; + else if (South == South::Side) + if (West == West::Up) + return 2970; + else if (West == West::Side) + return 2971; + else + return 2972; + else if (West == West::Up) + return 2973; + else if (West == West::Side) + return 2974; + else + return 2975; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 2976; + else if (West == West::Side) + return 2977; + else + return 2978; + else if (South == South::Side) + if (West == West::Up) + return 2979; + else if (West == West::Side) + return 2980; + else + return 2981; + else if (West == West::Up) + return 2982; + else if (West == West::Side) + return 2983; + else + return 2984; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 2985; + else if (West == West::Side) + return 2986; + else + return 2987; + else if (South == South::Side) + if (West == West::Up) + return 2988; + else if (West == West::Side) + return 2989; + else + return 2990; + else if (West == West::Up) + return 2991; + else if (West == West::Side) + return 2992; + else + return 2993; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 2994; + else if (West == West::Side) + return 2995; + else + return 2996; + else if (South == South::Side) + if (West == West::Up) + return 2997; + else if (West == West::Side) + return 2998; + else + return 2999; + else if (West == West::Up) + return 3000; + else if (West == West::Side) + return 3001; + else + return 3002; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 3003; + else if (West == West::Side) + return 3004; + else + return 3005; + else if (South == South::Side) + if (West == West::Up) + return 3006; + else if (West == West::Side) + return 3007; + else + return 3008; + else if (West == West::Up) + return 3009; + else if (West == West::Side) + return 3010; + else + return 3011; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 3012; + else if (West == West::Side) + return 3013; + else + return 3014; + else if (South == South::Side) + if (West == West::Up) + return 3015; + else if (West == West::Side) + return 3016; + else + return 3017; + else if (West == West::Up) + return 3018; + else if (West == West::Side) + return 3019; + else + return 3020; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 3021; + else if (West == West::Side) + return 3022; + else + return 3023; + else if (South == South::Side) + if (West == West::Up) + return 3024; + else if (West == West::Side) + return 3025; + else + return 3026; + else if (West == West::Up) + return 3027; + else if (West == West::Side) + return 3028; + else + return 3029; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 3030; + else if (West == West::Side) + return 3031; + else + return 3032; + else if (South == South::Side) + if (West == West::Up) + return 3033; + else if (West == West::Side) + return 3034; + else + return 3035; + else if (West == West::Up) + return 3036; + else if (West == West::Side) + return 3037; + else + return 3038; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 3039; + else if (West == West::Side) + return 3040; + else + return 3041; + else if (South == South::Side) + if (West == West::Up) + return 3042; + else if (West == West::Side) + return 3043; + else + return 3044; + else if (West == West::Up) + return 3045; + else if (West == West::Side) + return 3046; + else + return 3047; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 3048; + else if (West == West::Side) + return 3049; + else + return 3050; + else if (South == South::Side) + if (West == West::Up) + return 3051; + else if (West == West::Side) + return 3052; + else + return 3053; + else if (West == West::Up) + return 3054; + else if (West == West::Side) + return 3055; + else + return 3056; + else if (South == South::Up) + if (West == West::Up) + return 3057; + else if (West == West::Side) + return 3058; + else + return 3059; + else if (South == South::Side) + if (West == West::Up) + return 3060; + else if (West == West::Side) + return 3061; + else + return 3062; + else if (West == West::Up) + return 3063; + else if (West == West::Side) + return 3064; + else + return 3065; + else if (North == North::Side) + if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 3066; + else if (West == West::Side) + return 3067; + else + return 3068; + else if (South == South::Side) + if (West == West::Up) + return 3069; + else if (West == West::Side) + return 3070; + else + return 3071; + else if (West == West::Up) + return 3072; + else if (West == West::Side) + return 3073; + else + return 3074; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 3075; + else if (West == West::Side) + return 3076; + else + return 3077; + else if (South == South::Side) + if (West == West::Up) + return 3078; + else if (West == West::Side) + return 3079; + else + return 3080; + else if (West == West::Up) + return 3081; + else if (West == West::Side) + return 3082; + else + return 3083; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 3084; + else if (West == West::Side) + return 3085; + else + return 3086; + else if (South == South::Side) + if (West == West::Up) + return 3087; + else if (West == West::Side) + return 3088; + else + return 3089; + else if (West == West::Up) + return 3090; + else if (West == West::Side) + return 3091; + else + return 3092; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 3093; + else if (West == West::Side) + return 3094; + else + return 3095; + else if (South == South::Side) + if (West == West::Up) + return 3096; + else if (West == West::Side) + return 3097; + else + return 3098; + else if (West == West::Up) + return 3099; + else if (West == West::Side) + return 3100; + else + return 3101; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 3102; + else if (West == West::Side) + return 3103; + else + return 3104; + else if (South == South::Side) + if (West == West::Up) + return 3105; + else if (West == West::Side) + return 3106; + else + return 3107; + else if (West == West::Up) + return 3108; + else if (West == West::Side) + return 3109; + else + return 3110; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 3111; + else if (West == West::Side) + return 3112; + else + return 3113; + else if (South == South::Side) + if (West == West::Up) + return 3114; + else if (West == West::Side) + return 3115; + else + return 3116; + else if (West == West::Up) + return 3117; + else if (West == West::Side) + return 3118; + else + return 3119; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 3120; + else if (West == West::Side) + return 3121; + else + return 3122; + else if (South == South::Side) + if (West == West::Up) + return 3123; + else if (West == West::Side) + return 3124; + else + return 3125; + else if (West == West::Up) + return 3126; + else if (West == West::Side) + return 3127; + else + return 3128; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 3129; + else if (West == West::Side) + return 3130; + else + return 3131; + else if (South == South::Side) + if (West == West::Up) + return 3132; + else if (West == West::Side) + return 3133; + else + return 3134; + else if (West == West::Up) + return 3135; + else if (West == West::Side) + return 3136; + else + return 3137; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 3138; + else if (West == West::Side) + return 3139; + else + return 3140; + else if (South == South::Side) + if (West == West::Up) + return 3141; + else if (West == West::Side) + return 3142; + else + return 3143; + else if (West == West::Up) + return 3144; + else if (West == West::Side) + return 3145; + else + return 3146; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 3147; + else if (West == West::Side) + return 3148; + else + return 3149; + else if (South == South::Side) + if (West == West::Up) + return 3150; + else if (West == West::Side) + return 3151; + else + return 3152; + else if (West == West::Up) + return 3153; + else if (West == West::Side) + return 3154; + else + return 3155; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 3156; + else if (West == West::Side) + return 3157; + else + return 3158; + else if (South == South::Side) + if (West == West::Up) + return 3159; + else if (West == West::Side) + return 3160; + else + return 3161; + else if (West == West::Up) + return 3162; + else if (West == West::Side) + return 3163; + else + return 3164; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 3165; + else if (West == West::Side) + return 3166; + else + return 3167; + else if (South == South::Side) + if (West == West::Up) + return 3168; + else if (West == West::Side) + return 3169; + else + return 3170; + else if (West == West::Up) + return 3171; + else if (West == West::Side) + return 3172; + else + return 3173; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 3174; + else if (West == West::Side) + return 3175; + else + return 3176; + else if (South == South::Side) + if (West == West::Up) + return 3177; + else if (West == West::Side) + return 3178; + else + return 3179; + else if (West == West::Up) + return 3180; + else if (West == West::Side) + return 3181; + else + return 3182; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 3183; + else if (West == West::Side) + return 3184; + else + return 3185; + else if (South == South::Side) + if (West == West::Up) + return 3186; + else if (West == West::Side) + return 3187; + else + return 3188; + else if (West == West::Up) + return 3189; + else if (West == West::Side) + return 3190; + else + return 3191; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 3192; + else if (West == West::Side) + return 3193; + else + return 3194; + else if (South == South::Side) + if (West == West::Up) + return 3195; + else if (West == West::Side) + return 3196; + else + return 3197; + else if (West == West::Up) + return 3198; + else if (West == West::Side) + return 3199; + else + return 3200; + else if (South == South::Up) + if (West == West::Up) + return 3201; + else if (West == West::Side) + return 3202; + else + return 3203; + else if (South == South::Side) + if (West == West::Up) + return 3204; + else if (West == West::Side) + return 3205; + else + return 3206; + else if (West == West::Up) + return 3207; + else if (West == West::Side) + return 3208; + else + return 3209; + else if (Power == 0) + if (South == South::Up) + if (West == West::Up) + return 3210; + else if (West == West::Side) + return 3211; + else + return 3212; + else if (South == South::Side) + if (West == West::Up) + return 3213; + else if (West == West::Side) + return 3214; + else + return 3215; + else if (West == West::Up) + return 3216; + else if (West == West::Side) + return 3217; + else + return 3218; + else if (Power == 1) + if (South == South::Up) + if (West == West::Up) + return 3219; + else if (West == West::Side) + return 3220; + else + return 3221; + else if (South == South::Side) + if (West == West::Up) + return 3222; + else if (West == West::Side) + return 3223; + else + return 3224; + else if (West == West::Up) + return 3225; + else if (West == West::Side) + return 3226; + else + return 3227; + else if (Power == 2) + if (South == South::Up) + if (West == West::Up) + return 3228; + else if (West == West::Side) + return 3229; + else + return 3230; + else if (South == South::Side) + if (West == West::Up) + return 3231; + else if (West == West::Side) + return 3232; + else + return 3233; + else if (West == West::Up) + return 3234; + else if (West == West::Side) + return 3235; + else + return 3236; + else if (Power == 3) + if (South == South::Up) + if (West == West::Up) + return 3237; + else if (West == West::Side) + return 3238; + else + return 3239; + else if (South == South::Side) + if (West == West::Up) + return 3240; + else if (West == West::Side) + return 3241; + else + return 3242; + else if (West == West::Up) + return 3243; + else if (West == West::Side) + return 3244; + else + return 3245; + else if (Power == 4) + if (South == South::Up) + if (West == West::Up) + return 3246; + else if (West == West::Side) + return 3247; + else + return 3248; + else if (South == South::Side) + if (West == West::Up) + return 3249; + else if (West == West::Side) + return 3250; + else + return 3251; + else if (West == West::Up) + return 3252; + else if (West == West::Side) + return 3253; + else + return 3254; + else if (Power == 5) + if (South == South::Up) + if (West == West::Up) + return 3255; + else if (West == West::Side) + return 3256; + else + return 3257; + else if (South == South::Side) + if (West == West::Up) + return 3258; + else if (West == West::Side) + return 3259; + else + return 3260; + else if (West == West::Up) + return 3261; + else if (West == West::Side) + return 3262; + else + return 3263; + else if (Power == 6) + if (South == South::Up) + if (West == West::Up) + return 3264; + else if (West == West::Side) + return 3265; + else + return 3266; + else if (South == South::Side) + if (West == West::Up) + return 3267; + else if (West == West::Side) + return 3268; + else + return 3269; + else if (West == West::Up) + return 3270; + else if (West == West::Side) + return 3271; + else + return 3272; + else if (Power == 7) + if (South == South::Up) + if (West == West::Up) + return 3273; + else if (West == West::Side) + return 3274; + else + return 3275; + else if (South == South::Side) + if (West == West::Up) + return 3276; + else if (West == West::Side) + return 3277; + else + return 3278; + else if (West == West::Up) + return 3279; + else if (West == West::Side) + return 3280; + else + return 3281; + else if (Power == 8) + if (South == South::Up) + if (West == West::Up) + return 3282; + else if (West == West::Side) + return 3283; + else + return 3284; + else if (South == South::Side) + if (West == West::Up) + return 3285; + else if (West == West::Side) + return 3286; + else + return 3287; + else if (West == West::Up) + return 3288; + else if (West == West::Side) + return 3289; + else + return 3290; + else if (Power == 9) + if (South == South::Up) + if (West == West::Up) + return 3291; + else if (West == West::Side) + return 3292; + else + return 3293; + else if (South == South::Side) + if (West == West::Up) + return 3294; + else if (West == West::Side) + return 3295; + else + return 3296; + else if (West == West::Up) + return 3297; + else if (West == West::Side) + return 3298; + else + return 3299; + else if (Power == 10) + if (South == South::Up) + if (West == West::Up) + return 3300; + else if (West == West::Side) + return 3301; + else + return 3302; + else if (South == South::Side) + if (West == West::Up) + return 3303; + else if (West == West::Side) + return 3304; + else + return 3305; + else if (West == West::Up) + return 3306; + else if (West == West::Side) + return 3307; + else + return 3308; + else if (Power == 11) + if (South == South::Up) + if (West == West::Up) + return 3309; + else if (West == West::Side) + return 3310; + else + return 3311; + else if (South == South::Side) + if (West == West::Up) + return 3312; + else if (West == West::Side) + return 3313; + else + return 3314; + else if (West == West::Up) + return 3315; + else if (West == West::Side) + return 3316; + else + return 3317; + else if (Power == 12) + if (South == South::Up) + if (West == West::Up) + return 3318; + else if (West == West::Side) + return 3319; + else + return 3320; + else if (South == South::Side) + if (West == West::Up) + return 3321; + else if (West == West::Side) + return 3322; + else + return 3323; + else if (West == West::Up) + return 3324; + else if (West == West::Side) + return 3325; + else + return 3326; + else if (Power == 13) + if (South == South::Up) + if (West == West::Up) + return 3327; + else if (West == West::Side) + return 3328; + else + return 3329; + else if (South == South::Side) + if (West == West::Up) + return 3330; + else if (West == West::Side) + return 3331; + else + return 3332; + else if (West == West::Up) + return 3333; + else if (West == West::Side) + return 3334; + else + return 3335; + else if (Power == 14) + if (South == South::Up) + if (West == West::Up) + return 3336; + else if (West == West::Side) + return 3337; + else + return 3338; + else if (South == South::Side) + if (West == West::Up) + return 3339; + else if (West == West::Side) + return 3340; + else + return 3341; + else if (West == West::Up) + return 3342; + else if (West == West::Side) + return 3343; + else + return 3344; + else if (South == South::Up) + if (West == West::Up) + return 3345; + else if (West == West::Side) + return 3346; + else + return 3347; + else if (South == South::Side) + if (West == West::Up) + return 3348; + else if (West == West::Side) + return 3349; + else + return 3350; + else if (West == West::Up) + return 3351; + else if (West == West::Side) + return 3352; + else + return 3353; +} +BlockState RedstoneWire(); +enum East East(BlockState Block); +enum North North(BlockState Block); +unsigned char Power(BlockState Block); +enum South South(BlockState Block); +enum West West(BlockState Block); +} // namespace RedstoneWire +namespace Repeater +{ +constexpr BlockState Repeater(const unsigned char Delay, const eBlockFace Facing, const bool Locked, const bool Powered) +{ + if (Delay == 1) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Locked) + if (Powered) + return 4031; + else + return 4032; + else if (Powered) + return 4033; + else + return 4034; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Locked) + if (Powered) + return 4035; + else + return 4036; + else if (Powered) + return 4037; + else + return 4038; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Locked) + if (Powered) + return 4039; + else + return 4040; + else if (Powered) + return 4041; + else + return 4042; + else if (Locked) + if (Powered) + return 4043; + else + return 4044; + else if (Powered) + return 4045; + else + return 4046; + else if (Delay == 2) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Locked) + if (Powered) + return 4047; + else + return 4048; + else if (Powered) + return 4049; + else + return 4050; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Locked) + if (Powered) + return 4051; + else + return 4052; + else if (Powered) + return 4053; + else + return 4054; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Locked) + if (Powered) + return 4055; + else + return 4056; + else if (Powered) + return 4057; + else + return 4058; + else if (Locked) + if (Powered) + return 4059; + else + return 4060; + else if (Powered) + return 4061; + else + return 4062; + else if (Delay == 3) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Locked) + if (Powered) + return 4063; + else + return 4064; + else if (Powered) + return 4065; + else + return 4066; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Locked) + if (Powered) + return 4067; + else + return 4068; + else if (Powered) + return 4069; + else + return 4070; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Locked) + if (Powered) + return 4071; + else + return 4072; + else if (Powered) + return 4073; + else + return 4074; + else if (Locked) + if (Powered) + return 4075; + else + return 4076; + else if (Powered) + return 4077; + else + return 4078; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Locked) + if (Powered) + return 4079; + else + return 4080; + else if (Powered) + return 4081; + else + return 4082; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Locked) + if (Powered) + return 4083; + else + return 4084; + else if (Powered) + return 4085; + else + return 4086; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Locked) + if (Powered) + return 4087; + else + return 4088; + else if (Powered) + return 4089; + else + return 4090; + else if (Locked) + if (Powered) + return 4091; + else + return 4092; + else if (Powered) + return 4093; + else + return 4094; +} +BlockState Repeater(); +unsigned char Delay(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Locked(BlockState Block); +bool Powered(BlockState Block); +} // namespace Repeater +namespace RepeatingCommandBlock +{ +constexpr BlockState RepeatingCommandBlock(const bool Conditional, const eBlockFace Facing) +{ + if (Conditional) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9225; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9226; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9227; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9228; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9229; + else + return 9230; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9231; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9232; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9233; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9234; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9235; + else + return 9236; +} +BlockState RepeatingCommandBlock(); +bool Conditional(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace RepeatingCommandBlock +namespace RespawnAnchor +{ +constexpr BlockState RespawnAnchor(const unsigned char Charges) +{ + if (Charges == 0) + return 15829; + else if (Charges == 1) + return 15830; + else if (Charges == 2) + return 15831; + else if (Charges == 3) + return 15832; + else + return 15833; +} +BlockState RespawnAnchor(); +unsigned char Charges(BlockState Block); +} // namespace RespawnAnchor +namespace RoseBush +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState RoseBush(const enum Half Half) +{ + if (Half == Half::Upper) + return 7889; + else + return 7890; +} +BlockState RoseBush(); +enum Half Half(BlockState Block); +} // namespace RoseBush +namespace Sand +{ +constexpr BlockState Sand() +{ + return 66; +} +} // namespace Sand +namespace Sandstone +{ +constexpr BlockState Sandstone() +{ + return 246; +} +} // namespace Sandstone +namespace SandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8349; + else if (Type == Type::Bottom) + return 8351; + else + return 8353; +} +BlockState SandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace SandstoneSlab +namespace SandstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState SandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5171; + else if (Shape == Shape::InnerLeft) + return 5173; + else if (Shape == Shape::InnerRight) + return 5175; + else if (Shape == Shape::OuterLeft) + return 5177; + else + return 5179; + else if (Shape == Shape::Straight) + return 5181; + else if (Shape == Shape::InnerLeft) + return 5183; + else if (Shape == Shape::InnerRight) + return 5185; + else if (Shape == Shape::OuterLeft) + return 5187; + else + return 5189; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5191; + else if (Shape == Shape::InnerLeft) + return 5193; + else if (Shape == Shape::InnerRight) + return 5195; + else if (Shape == Shape::OuterLeft) + return 5197; + else + return 5199; + else if (Shape == Shape::Straight) + return 5201; + else if (Shape == Shape::InnerLeft) + return 5203; + else if (Shape == Shape::InnerRight) + return 5205; + else if (Shape == Shape::OuterLeft) + return 5207; + else + return 5209; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5211; + else if (Shape == Shape::InnerLeft) + return 5213; + else if (Shape == Shape::InnerRight) + return 5215; + else if (Shape == Shape::OuterLeft) + return 5217; + else + return 5219; + else if (Shape == Shape::Straight) + return 5221; + else if (Shape == Shape::InnerLeft) + return 5223; + else if (Shape == Shape::InnerRight) + return 5225; + else if (Shape == Shape::OuterLeft) + return 5227; + else + return 5229; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5231; + else if (Shape == Shape::InnerLeft) + return 5233; + else if (Shape == Shape::InnerRight) + return 5235; + else if (Shape == Shape::OuterLeft) + return 5237; + else + return 5239; + else if (Shape == Shape::Straight) + return 5241; + else if (Shape == Shape::InnerLeft) + return 5243; + else if (Shape == Shape::InnerRight) + return 5245; + else if (Shape == Shape::OuterLeft) + return 5247; + else + return 5249; +} +BlockState SandstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace SandstoneStairs +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 BlockState SandstoneWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13786; + else if (West == West::Low) + return 13787; + else + return 13788; + else if (West == West::None) + return 13792; + else if (West == West::Low) + return 13793; + else + return 13794; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13798; + else if (West == West::Low) + return 13799; + else + return 13800; + else if (West == West::None) + return 13804; + else if (West == West::Low) + return 13805; + else + return 13806; + else if (Up) + if (West == West::None) + return 13810; + else if (West == West::Low) + return 13811; + else + return 13812; + else if (West == West::None) + return 13816; + else if (West == West::Low) + return 13817; + else + return 13818; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13822; + else if (West == West::Low) + return 13823; + else + return 13824; + else if (West == West::None) + return 13828; + else if (West == West::Low) + return 13829; + else + return 13830; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13834; + else if (West == West::Low) + return 13835; + else + return 13836; + else if (West == West::None) + return 13840; + else if (West == West::Low) + return 13841; + else + return 13842; + else if (Up) + if (West == West::None) + return 13846; + else if (West == West::Low) + return 13847; + else + return 13848; + else if (West == West::None) + return 13852; + else if (West == West::Low) + return 13853; + else + return 13854; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13858; + else if (West == West::Low) + return 13859; + else + return 13860; + else if (West == West::None) + return 13864; + else if (West == West::Low) + return 13865; + else + return 13866; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13870; + else if (West == West::Low) + return 13871; + else + return 13872; + else if (West == West::None) + return 13876; + else if (West == West::Low) + return 13877; + else + return 13878; + else if (Up) + if (West == West::None) + return 13882; + else if (West == West::Low) + return 13883; + else + return 13884; + else if (West == West::None) + return 13888; + else if (West == West::Low) + return 13889; + else + return 13890; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 13894; + else if (West == West::Low) + return 13895; + else + return 13896; + else if (West == West::None) + return 13900; + else if (West == West::Low) + return 13901; + else + return 13902; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13906; + else if (West == West::Low) + return 13907; + else + return 13908; + else if (West == West::None) + return 13912; + else if (West == West::Low) + return 13913; + else + return 13914; + else if (Up) + if (West == West::None) + return 13918; + else if (West == West::Low) + return 13919; + else + return 13920; + else if (West == West::None) + return 13924; + else if (West == West::Low) + return 13925; + else + return 13926; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 13930; + else if (West == West::Low) + return 13931; + else + return 13932; + else if (West == West::None) + return 13936; + else if (West == West::Low) + return 13937; + else + return 13938; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13942; + else if (West == West::Low) + return 13943; + else + return 13944; + else if (West == West::None) + return 13948; + else if (West == West::Low) + return 13949; + else + return 13950; + else if (Up) + if (West == West::None) + return 13954; + else if (West == West::Low) + return 13955; + else + return 13956; + else if (West == West::None) + return 13960; + else if (West == West::Low) + return 13961; + else + return 13962; + else if (South == South::None) + if (Up) + if (West == West::None) + return 13966; + else if (West == West::Low) + return 13967; + else + return 13968; + else if (West == West::None) + return 13972; + else if (West == West::Low) + return 13973; + else + return 13974; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 13978; + else if (West == West::Low) + return 13979; + else + return 13980; + else if (West == West::None) + return 13984; + else if (West == West::Low) + return 13985; + else + return 13986; + else if (Up) + if (West == West::None) + return 13990; + else if (West == West::Low) + return 13991; + else + return 13992; + else if (West == West::None) + return 13996; + else if (West == West::Low) + return 13997; + else + return 13998; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 14002; + else if (West == West::Low) + return 14003; + else + return 14004; + else if (West == West::None) + return 14008; + else if (West == West::Low) + return 14009; + else + return 14010; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14014; + else if (West == West::Low) + return 14015; + else + return 14016; + else if (West == West::None) + return 14020; + else if (West == West::Low) + return 14021; + else + return 14022; + else if (Up) + if (West == West::None) + return 14026; + else if (West == West::Low) + return 14027; + else + return 14028; + else if (West == West::None) + return 14032; + else if (West == West::Low) + return 14033; + else + return 14034; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 14038; + else if (West == West::Low) + return 14039; + else + return 14040; + else if (West == West::None) + return 14044; + else if (West == West::Low) + return 14045; + else + return 14046; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14050; + else if (West == West::Low) + return 14051; + else + return 14052; + else if (West == West::None) + return 14056; + else if (West == West::Low) + return 14057; + else + return 14058; + else if (Up) + if (West == West::None) + return 14062; + else if (West == West::Low) + return 14063; + else + return 14064; + else if (West == West::None) + return 14068; + else if (West == West::Low) + return 14069; + else + return 14070; + else if (South == South::None) + if (Up) + if (West == West::None) + return 14074; + else if (West == West::Low) + return 14075; + else + return 14076; + else if (West == West::None) + return 14080; + else if (West == West::Low) + return 14081; + else + return 14082; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 14086; + else if (West == West::Low) + return 14087; + else + return 14088; + else if (West == West::None) + return 14092; + else if (West == West::Low) + return 14093; + else + return 14094; + else if (Up) + if (West == West::None) + return 14098; + else if (West == West::Low) + return 14099; + else + return 14100; + else if (West == West::None) + return 14104; + else if (West == West::Low) + return 14105; + else + return 14106; +} +BlockState SandstoneWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace SandstoneWall +namespace Scaffolding +{ +constexpr BlockState Scaffolding(const bool Bottom, const unsigned char Distance) +{ + if (Bottom) + if (Distance == 0) + return 14756; + else if (Distance == 1) + return 14758; + else if (Distance == 2) + return 14760; + else if (Distance == 3) + return 14762; + else if (Distance == 4) + return 14764; + else if (Distance == 5) + return 14766; + else if (Distance == 6) + return 14768; + else + return 14770; + else if (Distance == 0) + return 14772; + else if (Distance == 1) + return 14774; + else if (Distance == 2) + return 14776; + else if (Distance == 3) + return 14778; + else if (Distance == 4) + return 14780; + else if (Distance == 5) + return 14782; + else if (Distance == 6) + return 14784; + else + return 14786; +} +BlockState Scaffolding(); +bool Bottom(BlockState Block); +unsigned char Distance(BlockState Block); +} // namespace Scaffolding +namespace SeaLantern +{ +constexpr BlockState SeaLantern() +{ + return 7862; +} +} // namespace SeaLantern +namespace SeaPickle +{ +constexpr BlockState SeaPickle(const unsigned char Pickles) +{ + if (Pickles == 1) + return 9641; + else if (Pickles == 2) + return 9643; + else if (Pickles == 3) + return 9645; + else + return 9647; +} +BlockState SeaPickle(); +unsigned char Pickles(BlockState Block); +} // namespace SeaPickle +namespace Seagrass +{ +constexpr BlockState Seagrass() +{ + return 1345; +} +} // namespace Seagrass +namespace Shroomlight +{ +constexpr BlockState Shroomlight() +{ + return 14989; +} +} // namespace Shroomlight +namespace ShulkerBox +{ +constexpr BlockState ShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9272; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9273; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9274; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9275; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9276; + else + return 9277; +} +BlockState ShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace ShulkerBox +namespace SkeletonSkull +{ +constexpr BlockState SkeletonSkull(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6490; + else if (Rotation == 1) + return 6491; + else if (Rotation == 2) + return 6492; + else if (Rotation == 3) + return 6493; + else if (Rotation == 4) + return 6494; + else if (Rotation == 5) + return 6495; + else if (Rotation == 6) + return 6496; + else if (Rotation == 7) + return 6497; + else if (Rotation == 8) + return 6498; + else if (Rotation == 9) + return 6499; + else if (Rotation == 10) + return 6500; + else if (Rotation == 11) + return 6501; + else if (Rotation == 12) + return 6502; + else if (Rotation == 13) + return 6503; + else if (Rotation == 14) + return 6504; + else + return 6505; +} +BlockState SkeletonSkull(); +unsigned char Rotation(BlockState Block); +} // namespace SkeletonSkull +namespace SkeletonWallSkull +{ +constexpr BlockState SkeletonWallSkull(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6506; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6507; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6508; + else + return 6509; +} +BlockState SkeletonWallSkull(); +eBlockFace Facing(BlockState Block); +} // namespace SkeletonWallSkull +namespace SlimeBlock +{ +constexpr BlockState SlimeBlock() +{ + return 7535; +} +} // namespace SlimeBlock +namespace SmithingTable +{ +constexpr BlockState SmithingTable() +{ + return 14849; +} +} // namespace SmithingTable +namespace Smoker +{ +constexpr BlockState Smoker(const eBlockFace Facing, const bool Lit) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + return 14803; + else + return 14804; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + return 14805; + else + return 14806; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + return 14807; + else + return 14808; + else if (Lit) + return 14809; + else + return 14810; +} +BlockState Smoker(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +} // namespace Smoker +namespace SmoothQuartz +{ +constexpr BlockState SmoothQuartz() +{ + return 8416; +} +} // namespace SmoothQuartz +namespace SmoothQuartzSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SmoothQuartzSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10832; + else if (Type == Type::Bottom) + return 10834; + else + return 10836; +} +BlockState SmoothQuartzSlab(); +enum Type Type(BlockState Block); +} // namespace SmoothQuartzSlab +namespace SmoothQuartzStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState SmoothQuartzStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10310; + else if (Shape == Shape::InnerLeft) + return 10312; + else if (Shape == Shape::InnerRight) + return 10314; + else if (Shape == Shape::OuterLeft) + return 10316; + else + return 10318; + else if (Shape == Shape::Straight) + return 10320; + else if (Shape == Shape::InnerLeft) + return 10322; + else if (Shape == Shape::InnerRight) + return 10324; + else if (Shape == Shape::OuterLeft) + return 10326; + else + return 10328; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10330; + else if (Shape == Shape::InnerLeft) + return 10332; + else if (Shape == Shape::InnerRight) + return 10334; + else if (Shape == Shape::OuterLeft) + return 10336; + else + return 10338; + else if (Shape == Shape::Straight) + return 10340; + else if (Shape == Shape::InnerLeft) + return 10342; + else if (Shape == Shape::InnerRight) + return 10344; + else if (Shape == Shape::OuterLeft) + return 10346; + else + return 10348; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10350; + else if (Shape == Shape::InnerLeft) + return 10352; + else if (Shape == Shape::InnerRight) + return 10354; + else if (Shape == Shape::OuterLeft) + return 10356; + else + return 10358; + else if (Shape == Shape::Straight) + return 10360; + else if (Shape == Shape::InnerLeft) + return 10362; + else if (Shape == Shape::InnerRight) + return 10364; + else if (Shape == Shape::OuterLeft) + return 10366; + else + return 10368; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10370; + else if (Shape == Shape::InnerLeft) + return 10372; + else if (Shape == Shape::InnerRight) + return 10374; + else if (Shape == Shape::OuterLeft) + return 10376; + else + return 10378; + else if (Shape == Shape::Straight) + return 10380; + else if (Shape == Shape::InnerLeft) + return 10382; + else if (Shape == Shape::InnerRight) + return 10384; + else if (Shape == Shape::OuterLeft) + return 10386; + else + return 10388; +} +BlockState SmoothQuartzStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace SmoothQuartzStairs +namespace SmoothRedSandstone +{ +constexpr BlockState SmoothRedSandstone() +{ + return 8417; +} +} // namespace SmoothRedSandstone +namespace SmoothRedSandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SmoothRedSandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10796; + else if (Type == Type::Bottom) + return 10798; + else + return 10800; +} +BlockState SmoothRedSandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace SmoothRedSandstoneSlab +namespace SmoothRedSandstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState SmoothRedSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9750; + else if (Shape == Shape::InnerLeft) + return 9752; + else if (Shape == Shape::InnerRight) + return 9754; + else if (Shape == Shape::OuterLeft) + return 9756; + else + return 9758; + else if (Shape == Shape::Straight) + return 9760; + else if (Shape == Shape::InnerLeft) + return 9762; + else if (Shape == Shape::InnerRight) + return 9764; + else if (Shape == Shape::OuterLeft) + return 9766; + else + return 9768; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9770; + else if (Shape == Shape::InnerLeft) + return 9772; + else if (Shape == Shape::InnerRight) + return 9774; + else if (Shape == Shape::OuterLeft) + return 9776; + else + return 9778; + else if (Shape == Shape::Straight) + return 9780; + else if (Shape == Shape::InnerLeft) + return 9782; + else if (Shape == Shape::InnerRight) + return 9784; + else if (Shape == Shape::OuterLeft) + return 9786; + else + return 9788; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9790; + else if (Shape == Shape::InnerLeft) + return 9792; + else if (Shape == Shape::InnerRight) + return 9794; + else if (Shape == Shape::OuterLeft) + return 9796; + else + return 9798; + else if (Shape == Shape::Straight) + return 9800; + else if (Shape == Shape::InnerLeft) + return 9802; + else if (Shape == Shape::InnerRight) + return 9804; + else if (Shape == Shape::OuterLeft) + return 9806; + else + return 9808; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 9810; + else if (Shape == Shape::InnerLeft) + return 9812; + else if (Shape == Shape::InnerRight) + return 9814; + else if (Shape == Shape::OuterLeft) + return 9816; + else + return 9818; + else if (Shape == Shape::Straight) + return 9820; + else if (Shape == Shape::InnerLeft) + return 9822; + else if (Shape == Shape::InnerRight) + return 9824; + else if (Shape == Shape::OuterLeft) + return 9826; + else + return 9828; +} +BlockState SmoothRedSandstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace SmoothRedSandstoneStairs +namespace SmoothSandstone +{ +constexpr BlockState SmoothSandstone() +{ + return 8415; +} +} // namespace SmoothSandstone +namespace SmoothSandstoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SmoothSandstoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 10826; + else if (Type == Type::Bottom) + return 10828; + else + return 10830; +} +BlockState SmoothSandstoneSlab(); +enum Type Type(BlockState Block); +} // namespace SmoothSandstoneSlab +namespace SmoothSandstoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState SmoothSandstoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10230; + else if (Shape == Shape::InnerLeft) + return 10232; + else if (Shape == Shape::InnerRight) + return 10234; + else if (Shape == Shape::OuterLeft) + return 10236; + else + return 10238; + else if (Shape == Shape::Straight) + return 10240; + else if (Shape == Shape::InnerLeft) + return 10242; + else if (Shape == Shape::InnerRight) + return 10244; + else if (Shape == Shape::OuterLeft) + return 10246; + else + return 10248; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10250; + else if (Shape == Shape::InnerLeft) + return 10252; + else if (Shape == Shape::InnerRight) + return 10254; + else if (Shape == Shape::OuterLeft) + return 10256; + else + return 10258; + else if (Shape == Shape::Straight) + return 10260; + else if (Shape == Shape::InnerLeft) + return 10262; + else if (Shape == Shape::InnerRight) + return 10264; + else if (Shape == Shape::OuterLeft) + return 10266; + else + return 10268; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10270; + else if (Shape == Shape::InnerLeft) + return 10272; + else if (Shape == Shape::InnerRight) + return 10274; + else if (Shape == Shape::OuterLeft) + return 10276; + else + return 10278; + else if (Shape == Shape::Straight) + return 10280; + else if (Shape == Shape::InnerLeft) + return 10282; + else if (Shape == Shape::InnerRight) + return 10284; + else if (Shape == Shape::OuterLeft) + return 10286; + else + return 10288; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10290; + else if (Shape == Shape::InnerLeft) + return 10292; + else if (Shape == Shape::InnerRight) + return 10294; + else if (Shape == Shape::OuterLeft) + return 10296; + else + return 10298; + else if (Shape == Shape::Straight) + return 10300; + else if (Shape == Shape::InnerLeft) + return 10302; + else if (Shape == Shape::InnerRight) + return 10304; + else if (Shape == Shape::OuterLeft) + return 10306; + else + return 10308; +} +BlockState SmoothSandstoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace SmoothSandstoneStairs +namespace SmoothStone +{ +constexpr BlockState SmoothStone() +{ + return 8414; +} +} // namespace SmoothStone +namespace SmoothStoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SmoothStoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8343; + else if (Type == Type::Bottom) + return 8345; + else + return 8347; +} +BlockState SmoothStoneSlab(); +enum Type Type(BlockState Block); +} // namespace SmoothStoneSlab +namespace Snow +{ +constexpr BlockState Snow(const unsigned char Layers) +{ + if (Layers == 1) + return 3921; + else if (Layers == 2) + return 3922; + else if (Layers == 3) + return 3923; + else if (Layers == 4) + return 3924; + else if (Layers == 5) + return 3925; + else if (Layers == 6) + return 3926; + else if (Layers == 7) + return 3927; + else + return 3928; +} +BlockState Snow(); +unsigned char Layers(BlockState Block); +} // namespace Snow +namespace SnowBlock +{ +constexpr BlockState SnowBlock() +{ + return 3930; +} +} // namespace SnowBlock +namespace SoulCampfire +{ +constexpr BlockState SoulCampfire(const eBlockFace Facing, const bool Lit, const bool SignalFire) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Lit) + if (SignalFire) + return 14923; + else + return 14925; + else if (SignalFire) + return 14927; + else + return 14929; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Lit) + if (SignalFire) + return 14931; + else + return 14933; + else if (SignalFire) + return 14935; + else + return 14937; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Lit) + if (SignalFire) + return 14939; + else + return 14941; + else if (SignalFire) + return 14943; + else + return 14945; + else if (Lit) + if (SignalFire) + return 14947; + else + return 14949; + else if (SignalFire) + return 14951; + else + return 14953; +} +BlockState SoulCampfire(); +eBlockFace Facing(BlockState Block); +bool Lit(BlockState Block); +bool SignalFire(BlockState Block); +} // namespace SoulCampfire +namespace SoulFire +{ +constexpr BlockState SoulFire() +{ + return 1952; +} +} // namespace SoulFire +namespace SoulLantern +{ +constexpr BlockState SoulLantern(const bool Hanging) +{ + if (Hanging) + return 14888; + else + return 14889; +} +BlockState SoulLantern(); +bool Hanging(BlockState Block); +} // namespace SoulLantern +namespace SoulSand +{ +constexpr BlockState SoulSand() +{ + return 4000; +} +} // namespace SoulSand +namespace SoulSoil +{ +constexpr BlockState SoulSoil() +{ + return 4001; +} +} // namespace SoulSoil +namespace SoulTorch +{ +constexpr BlockState SoulTorch() +{ + return 4008; +} +} // namespace SoulTorch +namespace SoulWallTorch +{ +constexpr BlockState SoulWallTorch(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 4009; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 4010; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 4011; + else + return 4012; +} +BlockState SoulWallTorch(); +eBlockFace Facing(BlockState Block); +} // namespace SoulWallTorch +namespace Spawner +{ +constexpr BlockState Spawner() +{ + return 1953; +} +} // namespace Spawner +namespace Sponge +{ +constexpr BlockState Sponge() +{ + return 229; +} +} // namespace Sponge +namespace SpruceButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState SpruceButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6370; + else + return 6371; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6372; + else + return 6373; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6374; + else + return 6375; + else if (Powered) + return 6376; + else + return 6377; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6378; + else + return 6379; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6380; + else + return 6381; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6382; + else + return 6383; + else if (Powered) + return 6384; + else + return 6385; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 6386; + else + return 6387; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 6388; + else + return 6389; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 6390; + else + return 6391; + else if (Powered) + return 6392; + else + return 6393; +} +BlockState SpruceButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace SpruceButton +namespace SpruceDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState SpruceDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8738; + else + return 8739; + else if (Powered) + return 8740; + else + return 8741; + else if (Open) + if (Powered) + return 8742; + else + return 8743; + else if (Powered) + return 8744; + else + return 8745; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8746; + else + return 8747; + else if (Powered) + return 8748; + else + return 8749; + else if (Open) + if (Powered) + return 8750; + else + return 8751; + else if (Powered) + return 8752; + else + return 8753; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8754; + else + return 8755; + else if (Powered) + return 8756; + else + return 8757; + else if (Open) + if (Powered) + return 8758; + else + return 8759; + else if (Powered) + return 8760; + else + return 8761; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8762; + else + return 8763; + else if (Powered) + return 8764; + else + return 8765; + else if (Open) + if (Powered) + return 8766; + else + return 8767; + else if (Powered) + return 8768; + else + return 8769; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8770; + else + return 8771; + else if (Powered) + return 8772; + else + return 8773; + else if (Open) + if (Powered) + return 8774; + else + return 8775; + else if (Powered) + return 8776; + else + return 8777; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8778; + else + return 8779; + else if (Powered) + return 8780; + else + return 8781; + else if (Open) + if (Powered) + return 8782; + else + return 8783; + else if (Powered) + return 8784; + else + return 8785; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8786; + else + return 8787; + else if (Powered) + return 8788; + else + return 8789; + else if (Open) + if (Powered) + return 8790; + else + return 8791; + else if (Powered) + return 8792; + else + return 8793; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 8794; + else + return 8795; + else if (Powered) + return 8796; + else + return 8797; + else if (Open) + if (Powered) + return 8798; + else + return 8799; + else if (Powered) + return 8800; + else + return 8801; +} +BlockState SpruceDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace SpruceDoor +namespace SpruceFence +{ +constexpr BlockState SpruceFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 8580; + else + return 8581; + else if (West) + return 8584; + else + return 8585; + else if (South) + if (West) + return 8588; + else + return 8589; + else if (West) + return 8592; + else + return 8593; + else if (North) + if (South) + if (West) + return 8596; + else + return 8597; + else if (West) + return 8600; + else + return 8601; + else if (South) + if (West) + return 8604; + else + return 8605; + else if (West) + return 8608; + else + return 8609; +} +BlockState SpruceFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace SpruceFence +namespace SpruceFenceGate +{ +constexpr BlockState SpruceFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 8418; + else + return 8419; + else if (Powered) + return 8420; + else + return 8421; + else if (Open) + if (Powered) + return 8422; + else + return 8423; + else if (Powered) + return 8424; + else + return 8425; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 8426; + else + return 8427; + else if (Powered) + return 8428; + else + return 8429; + else if (Open) + if (Powered) + return 8430; + else + return 8431; + else if (Powered) + return 8432; + else + return 8433; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 8434; + else + return 8435; + else if (Powered) + return 8436; + else + return 8437; + else if (Open) + if (Powered) + return 8438; + else + return 8439; + else if (Powered) + return 8440; + else + return 8441; + else if (InWall) + if (Open) + if (Powered) + return 8442; + else + return 8443; + else if (Powered) + return 8444; + else + return 8445; + else if (Open) + if (Powered) + return 8446; + else + return 8447; + else if (Powered) + return 8448; + else + return 8449; +} +BlockState SpruceFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace SpruceFenceGate +namespace SpruceLeaves +{ +constexpr BlockState SpruceLeaves(const unsigned char Distance, const bool Persistent) +{ + if (Distance == 1) + if (Persistent) + return 159; + else + return 160; + else if (Distance == 2) + if (Persistent) + return 161; + else + return 162; + else if (Distance == 3) + if (Persistent) + return 163; + else + return 164; + else if (Distance == 4) + if (Persistent) + return 165; + else + return 166; + else if (Distance == 5) + if (Persistent) + return 167; + else + return 168; + else if (Distance == 6) + if (Persistent) + return 169; + else + return 170; + else if (Persistent) + return 171; + else + return 172; +} +BlockState SpruceLeaves(); +unsigned char Distance(BlockState Block); +bool Persistent(BlockState Block); +} // namespace SpruceLeaves +namespace SpruceLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState SpruceLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 76; + else if (Axis == Axis::Y) + return 77; + else + return 78; +} +BlockState SpruceLog(); +enum Axis Axis(BlockState Block); +} // namespace SpruceLog +namespace SprucePlanks +{ +constexpr BlockState SprucePlanks() +{ + return 16; +} +} // namespace SprucePlanks +namespace SprucePressurePlate +{ +constexpr BlockState SprucePressurePlate(const bool Powered) +{ + if (Powered) + return 3875; + else + return 3876; +} +BlockState SprucePressurePlate(); +bool Powered(BlockState Block); +} // namespace SprucePressurePlate +namespace SpruceSapling +{ +constexpr BlockState SpruceSapling(const unsigned char Stage) +{ + if (Stage == 0) + return 23; + else + return 24; +} +BlockState SpruceSapling(); +unsigned char Stage(BlockState Block); +} // namespace SpruceSapling +namespace SpruceSign +{ +constexpr BlockState SpruceSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 3414; + else if (Rotation == 1) + return 3416; + else if (Rotation == 2) + return 3418; + else if (Rotation == 3) + return 3420; + else if (Rotation == 4) + return 3422; + else if (Rotation == 5) + return 3424; + else if (Rotation == 6) + return 3426; + else if (Rotation == 7) + return 3428; + else if (Rotation == 8) + return 3430; + else if (Rotation == 9) + return 3432; + else if (Rotation == 10) + return 3434; + else if (Rotation == 11) + return 3436; + else if (Rotation == 12) + return 3438; + else if (Rotation == 13) + return 3440; + else if (Rotation == 14) + return 3442; + else + return 3444; +} +BlockState SpruceSign(); +unsigned char Rotation(BlockState Block); +} // namespace SpruceSign +namespace SpruceSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState SpruceSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8307; + else if (Type == Type::Bottom) + return 8309; + else + return 8311; +} +BlockState SpruceSlab(); +enum Type Type(BlockState Block); +} // namespace SpruceSlab +namespace SpruceStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState SpruceStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5405; + else if (Shape == Shape::InnerLeft) + return 5407; + else if (Shape == Shape::InnerRight) + return 5409; + else if (Shape == Shape::OuterLeft) + return 5411; + else + return 5413; + else if (Shape == Shape::Straight) + return 5415; + else if (Shape == Shape::InnerLeft) + return 5417; + else if (Shape == Shape::InnerRight) + return 5419; + else if (Shape == Shape::OuterLeft) + return 5421; + else + return 5423; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5425; + else if (Shape == Shape::InnerLeft) + return 5427; + else if (Shape == Shape::InnerRight) + return 5429; + else if (Shape == Shape::OuterLeft) + return 5431; + else + return 5433; + else if (Shape == Shape::Straight) + return 5435; + else if (Shape == Shape::InnerLeft) + return 5437; + else if (Shape == Shape::InnerRight) + return 5439; + else if (Shape == Shape::OuterLeft) + return 5441; + else + return 5443; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5445; + else if (Shape == Shape::InnerLeft) + return 5447; + else if (Shape == Shape::InnerRight) + return 5449; + else if (Shape == Shape::OuterLeft) + return 5451; + else + return 5453; + else if (Shape == Shape::Straight) + return 5455; + else if (Shape == Shape::InnerLeft) + return 5457; + else if (Shape == Shape::InnerRight) + return 5459; + else if (Shape == Shape::OuterLeft) + return 5461; + else + return 5463; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 5465; + else if (Shape == Shape::InnerLeft) + return 5467; + else if (Shape == Shape::InnerRight) + return 5469; + else if (Shape == Shape::OuterLeft) + return 5471; + else + return 5473; + else if (Shape == Shape::Straight) + return 5475; + else if (Shape == Shape::InnerLeft) + return 5477; + else if (Shape == Shape::InnerRight) + return 5479; + else if (Shape == Shape::OuterLeft) + return 5481; + else + return 5483; +} +BlockState SpruceStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace SpruceStairs +namespace SpruceTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState SpruceTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4176; + else + return 4178; + else if (Powered) + return 4180; + else + return 4182; + else if (Open) + if (Powered) + return 4184; + else + return 4186; + else if (Powered) + return 4188; + else + return 4190; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4192; + else + return 4194; + else if (Powered) + return 4196; + else + return 4198; + else if (Open) + if (Powered) + return 4200; + else + return 4202; + else if (Powered) + return 4204; + else + return 4206; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 4208; + else + return 4210; + else if (Powered) + return 4212; + else + return 4214; + else if (Open) + if (Powered) + return 4216; + else + return 4218; + else if (Powered) + return 4220; + else + return 4222; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 4224; + else + return 4226; + else if (Powered) + return 4228; + else + return 4230; + else if (Open) + if (Powered) + return 4232; + else + return 4234; + else if (Powered) + return 4236; + else + return 4238; +} +BlockState SpruceTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace SpruceTrapdoor +namespace SpruceWallSign +{ +constexpr BlockState SpruceWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 3744; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 3746; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 3748; + else + return 3750; +} +BlockState SpruceWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace SpruceWallSign +namespace SpruceWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState SpruceWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 112; + else if (Axis == Axis::Y) + return 113; + else + return 114; +} +BlockState SpruceWood(); +enum Axis Axis(BlockState Block); +} // namespace SpruceWood +namespace StickyPiston +{ +constexpr BlockState StickyPiston(const bool Extended, const eBlockFace Facing) +{ + if (Extended) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 1329; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 1330; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 1331; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 1332; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 1333; + else + return 1334; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 1335; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 1336; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 1337; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 1338; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 1339; + else + return 1340; +} +BlockState StickyPiston(); +bool Extended(BlockState Block); +eBlockFace Facing(BlockState Block); +} // namespace StickyPiston +namespace Stone +{ +constexpr BlockState Stone() +{ + return 1; +} +} // namespace Stone +namespace StoneBrickSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState StoneBrickSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8379; + else if (Type == Type::Bottom) + return 8381; + else + return 8383; +} +BlockState StoneBrickSlab(); +enum Type Type(BlockState Block); +} // namespace StoneBrickSlab +namespace StoneBrickStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState StoneBrickStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4933; + else if (Shape == Shape::InnerLeft) + return 4935; + else if (Shape == Shape::InnerRight) + return 4937; + else if (Shape == Shape::OuterLeft) + return 4939; + else + return 4941; + else if (Shape == Shape::Straight) + return 4943; + else if (Shape == Shape::InnerLeft) + return 4945; + else if (Shape == Shape::InnerRight) + return 4947; + else if (Shape == Shape::OuterLeft) + return 4949; + else + return 4951; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4953; + else if (Shape == Shape::InnerLeft) + return 4955; + else if (Shape == Shape::InnerRight) + return 4957; + else if (Shape == Shape::OuterLeft) + return 4959; + else + return 4961; + else if (Shape == Shape::Straight) + return 4963; + else if (Shape == Shape::InnerLeft) + return 4965; + else if (Shape == Shape::InnerRight) + return 4967; + else if (Shape == Shape::OuterLeft) + return 4969; + else + return 4971; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4973; + else if (Shape == Shape::InnerLeft) + return 4975; + else if (Shape == Shape::InnerRight) + return 4977; + else if (Shape == Shape::OuterLeft) + return 4979; + else + return 4981; + else if (Shape == Shape::Straight) + return 4983; + else if (Shape == Shape::InnerLeft) + return 4985; + else if (Shape == Shape::InnerRight) + return 4987; + else if (Shape == Shape::OuterLeft) + return 4989; + else + return 4991; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 4993; + else if (Shape == Shape::InnerLeft) + return 4995; + else if (Shape == Shape::InnerRight) + return 4997; + else if (Shape == Shape::OuterLeft) + return 4999; + else + return 5001; + else if (Shape == Shape::Straight) + return 5003; + else if (Shape == Shape::InnerLeft) + return 5005; + else if (Shape == Shape::InnerRight) + return 5007; + else if (Shape == Shape::OuterLeft) + return 5009; + else + return 5011; +} +BlockState StoneBrickStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace StoneBrickStairs +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 BlockState StoneBrickWall( + const enum East East, + const enum North North, + const enum South South, + const bool Up, + const enum West West +) +{ + if (East == East::None) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12490; + else if (West == West::Low) + return 12491; + else + return 12492; + else if (West == West::None) + return 12496; + else if (West == West::Low) + return 12497; + else + return 12498; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12502; + else if (West == West::Low) + return 12503; + else + return 12504; + else if (West == West::None) + return 12508; + else if (West == West::Low) + return 12509; + else + return 12510; + else if (Up) + if (West == West::None) + return 12514; + else if (West == West::Low) + return 12515; + else + return 12516; + else if (West == West::None) + return 12520; + else if (West == West::Low) + return 12521; + else + return 12522; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12526; + else if (West == West::Low) + return 12527; + else + return 12528; + else if (West == West::None) + return 12532; + else if (West == West::Low) + return 12533; + else + return 12534; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12538; + else if (West == West::Low) + return 12539; + else + return 12540; + else if (West == West::None) + return 12544; + else if (West == West::Low) + return 12545; + else + return 12546; + else if (Up) + if (West == West::None) + return 12550; + else if (West == West::Low) + return 12551; + else + return 12552; + else if (West == West::None) + return 12556; + else if (West == West::Low) + return 12557; + else + return 12558; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12562; + else if (West == West::Low) + return 12563; + else + return 12564; + else if (West == West::None) + return 12568; + else if (West == West::Low) + return 12569; + else + return 12570; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12574; + else if (West == West::Low) + return 12575; + else + return 12576; + else if (West == West::None) + return 12580; + else if (West == West::Low) + return 12581; + else + return 12582; + else if (Up) + if (West == West::None) + return 12586; + else if (West == West::Low) + return 12587; + else + return 12588; + else if (West == West::None) + return 12592; + else if (West == West::Low) + return 12593; + else + return 12594; + else if (East == East::Low) + if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12598; + else if (West == West::Low) + return 12599; + else + return 12600; + else if (West == West::None) + return 12604; + else if (West == West::Low) + return 12605; + else + return 12606; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12610; + else if (West == West::Low) + return 12611; + else + return 12612; + else if (West == West::None) + return 12616; + else if (West == West::Low) + return 12617; + else + return 12618; + else if (Up) + if (West == West::None) + return 12622; + else if (West == West::Low) + return 12623; + else + return 12624; + else if (West == West::None) + return 12628; + else if (West == West::Low) + return 12629; + else + return 12630; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12634; + else if (West == West::Low) + return 12635; + else + return 12636; + else if (West == West::None) + return 12640; + else if (West == West::Low) + return 12641; + else + return 12642; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12646; + else if (West == West::Low) + return 12647; + else + return 12648; + else if (West == West::None) + return 12652; + else if (West == West::Low) + return 12653; + else + return 12654; + else if (Up) + if (West == West::None) + return 12658; + else if (West == West::Low) + return 12659; + else + return 12660; + else if (West == West::None) + return 12664; + else if (West == West::Low) + return 12665; + else + return 12666; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12670; + else if (West == West::Low) + return 12671; + else + return 12672; + else if (West == West::None) + return 12676; + else if (West == West::Low) + return 12677; + else + return 12678; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12682; + else if (West == West::Low) + return 12683; + else + return 12684; + else if (West == West::None) + return 12688; + else if (West == West::Low) + return 12689; + else + return 12690; + else if (Up) + if (West == West::None) + return 12694; + else if (West == West::Low) + return 12695; + else + return 12696; + else if (West == West::None) + return 12700; + else if (West == West::Low) + return 12701; + else + return 12702; + else if (North == North::None) + if (South == South::None) + if (Up) + if (West == West::None) + return 12706; + else if (West == West::Low) + return 12707; + else + return 12708; + else if (West == West::None) + return 12712; + else if (West == West::Low) + return 12713; + else + return 12714; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12718; + else if (West == West::Low) + return 12719; + else + return 12720; + else if (West == West::None) + return 12724; + else if (West == West::Low) + return 12725; + else + return 12726; + else if (Up) + if (West == West::None) + return 12730; + else if (West == West::Low) + return 12731; + else + return 12732; + else if (West == West::None) + return 12736; + else if (West == West::Low) + return 12737; + else + return 12738; + else if (North == North::Low) + if (South == South::None) + if (Up) + if (West == West::None) + return 12742; + else if (West == West::Low) + return 12743; + else + return 12744; + else if (West == West::None) + return 12748; + else if (West == West::Low) + return 12749; + else + return 12750; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12754; + else if (West == West::Low) + return 12755; + else + return 12756; + else if (West == West::None) + return 12760; + else if (West == West::Low) + return 12761; + else + return 12762; + else if (Up) + if (West == West::None) + return 12766; + else if (West == West::Low) + return 12767; + else + return 12768; + else if (West == West::None) + return 12772; + else if (West == West::Low) + return 12773; + else + return 12774; + else if (South == South::None) + if (Up) + if (West == West::None) + return 12778; + else if (West == West::Low) + return 12779; + else + return 12780; + else if (West == West::None) + return 12784; + else if (West == West::Low) + return 12785; + else + return 12786; + else if (South == South::Low) + if (Up) + if (West == West::None) + return 12790; + else if (West == West::Low) + return 12791; + else + return 12792; + else if (West == West::None) + return 12796; + else if (West == West::Low) + return 12797; + else + return 12798; + else if (Up) + if (West == West::None) + return 12802; + else if (West == West::Low) + return 12803; + else + return 12804; + else if (West == West::None) + return 12808; + else if (West == West::Low) + return 12809; + else + return 12810; +} +BlockState StoneBrickWall(); +enum East East(BlockState Block); +enum North North(BlockState Block); +enum South South(BlockState Block); +bool Up(BlockState Block); +enum West West(BlockState Block); +} // namespace StoneBrickWall +namespace StoneBricks +{ +constexpr BlockState StoneBricks() +{ + return 4495; +} +} // namespace StoneBricks +namespace StoneButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState StoneButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3897; + else + return 3898; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3899; + else + return 3900; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3901; + else + return 3902; + else if (Powered) + return 3903; + else + return 3904; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3905; + else + return 3906; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3907; + else + return 3908; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3909; + else + return 3910; + else if (Powered) + return 3911; + else + return 3912; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 3913; + else + return 3914; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 3915; + else + return 3916; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 3917; + else + return 3918; + else if (Powered) + return 3919; + else + return 3920; +} +BlockState StoneButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace StoneButton +namespace StonePressurePlate +{ +constexpr BlockState StonePressurePlate(const bool Powered) +{ + if (Powered) + return 3807; + else + return 3808; +} +BlockState StonePressurePlate(); +bool Powered(BlockState Block); +} // namespace StonePressurePlate +namespace StoneSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState StoneSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 8337; + else if (Type == Type::Bottom) + return 8339; + else + return 8341; +} +BlockState StoneSlab(); +enum Type Type(BlockState Block); +} // namespace StoneSlab +namespace StoneStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState StoneStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10150; + else if (Shape == Shape::InnerLeft) + return 10152; + else if (Shape == Shape::InnerRight) + return 10154; + else if (Shape == Shape::OuterLeft) + return 10156; + else + return 10158; + else if (Shape == Shape::Straight) + return 10160; + else if (Shape == Shape::InnerLeft) + return 10162; + else if (Shape == Shape::InnerRight) + return 10164; + else if (Shape == Shape::OuterLeft) + return 10166; + else + return 10168; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10170; + else if (Shape == Shape::InnerLeft) + return 10172; + else if (Shape == Shape::InnerRight) + return 10174; + else if (Shape == Shape::OuterLeft) + return 10176; + else + return 10178; + else if (Shape == Shape::Straight) + return 10180; + else if (Shape == Shape::InnerLeft) + return 10182; + else if (Shape == Shape::InnerRight) + return 10184; + else if (Shape == Shape::OuterLeft) + return 10186; + else + return 10188; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10190; + else if (Shape == Shape::InnerLeft) + return 10192; + else if (Shape == Shape::InnerRight) + return 10194; + else if (Shape == Shape::OuterLeft) + return 10196; + else + return 10198; + else if (Shape == Shape::Straight) + return 10200; + else if (Shape == Shape::InnerLeft) + return 10202; + else if (Shape == Shape::InnerRight) + return 10204; + else if (Shape == Shape::OuterLeft) + return 10206; + else + return 10208; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 10210; + else if (Shape == Shape::InnerLeft) + return 10212; + else if (Shape == Shape::InnerRight) + return 10214; + else if (Shape == Shape::OuterLeft) + return 10216; + else + return 10218; + else if (Shape == Shape::Straight) + return 10220; + else if (Shape == Shape::InnerLeft) + return 10222; + else if (Shape == Shape::InnerRight) + return 10224; + else if (Shape == Shape::OuterLeft) + return 10226; + else + return 10228; +} +BlockState StoneStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace StoneStairs +namespace Stonecutter +{ +constexpr BlockState Stonecutter(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 14850; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 14851; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 14852; + else + return 14853; +} +BlockState Stonecutter(); +eBlockFace Facing(BlockState Block); +} // namespace Stonecutter +namespace StrippedAcaciaLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedAcaciaLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 100; + else if (Axis == Axis::Y) + return 101; + else + return 102; +} +BlockState StrippedAcaciaLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedAcaciaLog +namespace StrippedAcaciaWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedAcaciaWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 139; + else if (Axis == Axis::Y) + return 140; + else + return 141; +} +BlockState StrippedAcaciaWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedAcaciaWood +namespace StrippedBirchLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedBirchLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 94; + else if (Axis == Axis::Y) + return 95; + else + return 96; +} +BlockState StrippedBirchLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedBirchLog +namespace StrippedBirchWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedBirchWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 133; + else if (Axis == Axis::Y) + return 134; + else + return 135; +} +BlockState StrippedBirchWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedBirchWood +namespace StrippedCrimsonHyphae +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedCrimsonHyphae(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14984; + else if (Axis == Axis::Y) + return 14985; + else + return 14986; +} +BlockState StrippedCrimsonHyphae(); +enum Axis Axis(BlockState Block); +} // namespace StrippedCrimsonHyphae +namespace StrippedCrimsonStem +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedCrimsonStem(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14978; + else if (Axis == Axis::Y) + return 14979; + else + return 14980; +} +BlockState StrippedCrimsonStem(); +enum Axis Axis(BlockState Block); +} // namespace StrippedCrimsonStem +namespace StrippedDarkOakLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedDarkOakLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 103; + else if (Axis == Axis::Y) + return 104; + else + return 105; +} +BlockState StrippedDarkOakLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedDarkOakLog +namespace StrippedDarkOakWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedDarkOakWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 142; + else if (Axis == Axis::Y) + return 143; + else + return 144; +} +BlockState StrippedDarkOakWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedDarkOakWood +namespace StrippedJungleLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedJungleLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 97; + else if (Axis == Axis::Y) + return 98; + else + return 99; +} +BlockState StrippedJungleLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedJungleLog +namespace StrippedJungleWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedJungleWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 136; + else if (Axis == Axis::Y) + return 137; + else + return 138; +} +BlockState StrippedJungleWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedJungleWood +namespace StrippedOakLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedOakLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 106; + else if (Axis == Axis::Y) + return 107; + else + return 108; +} +BlockState StrippedOakLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedOakLog +namespace StrippedOakWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedOakWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 127; + else if (Axis == Axis::Y) + return 128; + else + return 129; +} +BlockState StrippedOakWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedOakWood +namespace StrippedSpruceLog +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedSpruceLog(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 91; + else if (Axis == Axis::Y) + return 92; + else + return 93; +} +BlockState StrippedSpruceLog(); +enum Axis Axis(BlockState Block); +} // namespace StrippedSpruceLog +namespace StrippedSpruceWood +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedSpruceWood(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 130; + else if (Axis == Axis::Y) + return 131; + else + return 132; +} +BlockState StrippedSpruceWood(); +enum Axis Axis(BlockState Block); +} // namespace StrippedSpruceWood +namespace StrippedWarpedHyphae +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedWarpedHyphae(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14967; + else if (Axis == Axis::Y) + return 14968; + else + return 14969; +} +BlockState StrippedWarpedHyphae(); +enum Axis Axis(BlockState Block); +} // namespace StrippedWarpedHyphae +namespace StrippedWarpedStem +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState StrippedWarpedStem(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14961; + else if (Axis == Axis::Y) + return 14962; + else + return 14963; +} +BlockState StrippedWarpedStem(); +enum Axis Axis(BlockState Block); +} // namespace StrippedWarpedStem +namespace StructureBlock +{ +enum class Mode +{ + Save, + Load, + Corner, + Data +}; +constexpr BlockState StructureBlock(const enum Mode Mode) +{ + if (Mode == Mode::Save) + return 15735; + else if (Mode == Mode::Load) + return 15736; + else if (Mode == Mode::Corner) + return 15737; + else + return 15738; +} +BlockState StructureBlock(); +enum Mode Mode(BlockState Block); +} // namespace StructureBlock +namespace StructureVoid +{ +constexpr BlockState StructureVoid() +{ + return 9259; +} +} // namespace StructureVoid +namespace SugarCane +{ +constexpr BlockState SugarCane(const unsigned char Age) +{ + if (Age == 0) + return 3948; + else if (Age == 1) + return 3949; + else if (Age == 2) + return 3950; + else if (Age == 3) + return 3951; + else if (Age == 4) + return 3952; + else if (Age == 5) + return 3953; + else if (Age == 6) + return 3954; + else if (Age == 7) + return 3955; + else if (Age == 8) + return 3956; + else if (Age == 9) + return 3957; + else if (Age == 10) + return 3958; + else if (Age == 11) + return 3959; + else if (Age == 12) + return 3960; + else if (Age == 13) + return 3961; + else if (Age == 14) + return 3962; + else + return 3963; +} +BlockState SugarCane(); +unsigned char Age(BlockState Block); +} // namespace SugarCane +namespace Sunflower +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState Sunflower(const enum Half Half) +{ + if (Half == Half::Upper) + return 7885; + else + return 7886; +} +BlockState Sunflower(); +enum Half Half(BlockState Block); +} // namespace Sunflower +namespace SweetBerryBush +{ +constexpr BlockState SweetBerryBush(const unsigned char Age) +{ + if (Age == 0) + return 14954; + else if (Age == 1) + return 14955; + else if (Age == 2) + return 14956; + else + return 14957; +} +BlockState SweetBerryBush(); +unsigned char Age(BlockState Block); +} // namespace SweetBerryBush +namespace TNT +{ +constexpr BlockState TNT(const bool Unstable) +{ + if (Unstable) + return 1430; + else + return 1431; +} +BlockState TNT(); +bool Unstable(BlockState Block); +} // namespace TNT +namespace TallGrass +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState TallGrass(const enum Half Half) +{ + if (Half == Half::Upper) + return 7893; + else + return 7894; +} +BlockState TallGrass(); +enum Half Half(BlockState Block); +} // namespace TallGrass +namespace TallSeagrass +{ +enum class Half +{ + Upper, + Lower +}; +constexpr BlockState TallSeagrass(const enum Half Half) +{ + if (Half == Half::Upper) + return 1346; + else + return 1347; +} +BlockState TallSeagrass(); +enum Half Half(BlockState Block); +} // namespace TallSeagrass +namespace Target +{ +constexpr BlockState Target(const unsigned char Power) +{ + if (Power == 0) + return 15760; + else if (Power == 1) + return 15761; + else if (Power == 2) + return 15762; + else if (Power == 3) + return 15763; + else if (Power == 4) + return 15764; + else if (Power == 5) + return 15765; + else if (Power == 6) + return 15766; + else if (Power == 7) + return 15767; + else if (Power == 8) + return 15768; + else if (Power == 9) + return 15769; + else if (Power == 10) + return 15770; + else if (Power == 11) + return 15771; + else if (Power == 12) + return 15772; + else if (Power == 13) + return 15773; + else if (Power == 14) + return 15774; + else + return 15775; +} +BlockState Target(); +unsigned char Power(BlockState Block); +} // namespace Target +namespace Terracotta +{ +constexpr BlockState Terracotta() +{ + return 7882; +} +} // namespace Terracotta +namespace Torch +{ +constexpr BlockState Torch() +{ + return 1435; +} +} // namespace Torch +namespace TrappedChest +{ +enum class Type +{ + Single, + Left, + Right +}; +constexpr BlockState TrappedChest(const eBlockFace Facing, const enum Type Type) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Type == Type::Single) + return 6623; + else if (Type == Type::Left) + return 6625; + else + return 6627; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Type == Type::Single) + return 6629; + else if (Type == Type::Left) + return 6631; + else + return 6633; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Type == Type::Single) + return 6635; + else if (Type == Type::Left) + return 6637; + else + return 6639; + else if (Type == Type::Single) + return 6641; + else if (Type == Type::Left) + return 6643; + else + return 6645; +} +BlockState TrappedChest(); +eBlockFace Facing(BlockState Block); +enum Type Type(BlockState Block); +} // namespace TrappedChest +namespace Tripwire +{ +constexpr BlockState Tripwire( + const bool Attached, + const bool Disarmed, + const bool East, + const bool North, + const bool Powered, + const bool South, + const bool West +) +{ + if (Attached) + if (Disarmed) if (East) if (North) - if (South) - if (Up) - if (West) return 4788; - else return 4789; - else - if (West) return 4790; - else return 4791; - else - if (Up) - if (West) return 4792; - else return 4793; - else - if (West) return 4794; - else return 4795; - else - if (South) - if (Up) - if (West) return 4796; - else return 4797; - else - if (West) return 4798; - else return 4799; - else - if (Up) - if (West) return 4800; - else return 4801; + if (Powered) + if (South) + if (West) + return 5275; + else + return 5276; + else if (West) + return 5277; else - if (West) return 4802; - else return 4803; - else - if (North) - if (South) - if (Up) - if (West) return 4804; - else return 4805; + return 5278; + else if (South) + if (West) + return 5279; else - if (West) return 4806; - else return 4807; + return 5280; + else if (West) + return 5281; else - if (Up) - if (West) return 4808; - else return 4809; - else - if (West) return 4810; - else return 4811; - else + return 5282; + else if (Powered) if (South) - if (Up) - if (West) return 4812; - else return 4813; - else - if (West) return 4814; - else return 4815; - else - if (Up) - if (West) return 4816; - else return 4817; - else - if (West) return 4818; - else return 4819; - } - BlockState Vine(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool Up(BlockState Block); - bool West(BlockState Block); - } - namespace VoidAir - { - constexpr BlockState VoidAir() - { - return 9665; - } - } - namespace WallTorch - { - constexpr BlockState WallTorch(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1436; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1437; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 1438; - else return 1439; - } - BlockState WallTorch(); - eBlockFace Facing(BlockState Block); - } - namespace WarpedButton - { - enum class Face - { - Floor, - Wall, - Ceiling - }; - constexpr BlockState WarpedButton(const enum Face Face, const eBlockFace Facing, const bool Powered) - { - if (Face == Face::Floor) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15503; - else return 15504; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15505; - else return 15506; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15507; - else return 15508; - else - if (Powered) return 15509; - else return 15510; - else if (Face == Face::Wall) - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15511; - else return 15512; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15513; - else return 15514; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15515; - else return 15516; - else - if (Powered) return 15517; - else return 15518; - else - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Powered) return 15519; - else return 15520; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Powered) return 15521; - else return 15522; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Powered) return 15523; - else return 15524; - else - if (Powered) return 15525; - else return 15526; - } - BlockState WarpedButton(); - enum Face Face(BlockState Block); - eBlockFace Facing(BlockState Block); - bool Powered(BlockState Block); - } - namespace WarpedDoor - { - enum class Half - { - Upper, - Lower - }; - enum class Hinge - { - Left, - Right - }; - constexpr BlockState WarpedDoor(const eBlockFace Facing, const enum Half Half, const enum Hinge Hinge, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15591; - else return 15592; - else - if (Powered) return 15593; - else return 15594; - else - if (Open) - if (Powered) return 15595; - else return 15596; - else - if (Powered) return 15597; - else return 15598; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15599; - else return 15600; - else - if (Powered) return 15601; - else return 15602; - else - if (Open) - if (Powered) return 15603; - else return 15604; - else - if (Powered) return 15605; - else return 15606; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15607; - else return 15608; - else - if (Powered) return 15609; - else return 15610; - else - if (Open) - if (Powered) return 15611; - else return 15612; - else - if (Powered) return 15613; - else return 15614; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15615; - else return 15616; + if (West) + return 5283; else - if (Powered) return 15617; - else return 15618; + return 5284; + else if (West) + return 5285; else - if (Open) - if (Powered) return 15619; - else return 15620; - else - if (Powered) return 15621; - else return 15622; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15623; - else return 15624; - else - if (Powered) return 15625; - else return 15626; + return 5286; + else if (South) + if (West) + return 5287; else - if (Open) - if (Powered) return 15627; - else return 15628; - else - if (Powered) return 15629; - else return 15630; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15631; - else return 15632; - else - if (Powered) return 15633; - else return 15634; - else - if (Open) - if (Powered) return 15635; - else return 15636; - else - if (Powered) return 15637; - else return 15638; - else - if (Half == Half::Upper) - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15639; - else return 15640; - else - if (Powered) return 15641; - else return 15642; - else - if (Open) - if (Powered) return 15643; - else return 15644; - else - if (Powered) return 15645; - else return 15646; - else - if (Hinge == Hinge::Left) - if (Open) - if (Powered) return 15647; - else return 15648; - else - if (Powered) return 15649; - else return 15650; - else - if (Open) - if (Powered) return 15651; - else return 15652; - else - if (Powered) return 15653; - else return 15654; - } - BlockState WarpedDoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Hinge Hinge(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace WarpedFence - { - constexpr BlockState WarpedFence(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 15097; - else return 15098; - else - if (West) return 15101; - else return 15102; + return 5288; + else if (West) + return 5289; else + return 5290; + else if (North) + if (Powered) if (South) - if (West) return 15105; - else return 15106; - else - if (West) return 15109; - else return 15110; + if (West) + return 5291; + else + return 5292; + else if (West) + return 5293; + else + return 5294; + else if (South) + if (West) + return 5295; + else + return 5296; + else if (West) + return 5297; + else + return 5298; + else if (Powered) + if (South) + if (West) + return 5299; + else + return 5300; + else if (West) + return 5301; + else + return 5302; + else if (South) + if (West) + return 5303; + else + return 5304; + else if (West) + return 5305; else - if (North) - if (South) - if (West) return 15113; - else return 15114; - else - if (West) return 15117; - else return 15118; - else + return 5306; + else if (East) + if (North) + if (Powered) if (South) - if (West) return 15121; - else return 15122; - else - if (West) return 15125; - else return 15126; - } - BlockState WarpedFence(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace WarpedFenceGate - { - constexpr BlockState WarpedFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (InWall) - if (Open) - if (Powered) return 15287; - else return 15288; - else - if (Powered) return 15289; - else return 15290; - else - if (Open) - if (Powered) return 15291; - else return 15292; - else - if (Powered) return 15293; - else return 15294; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (InWall) - if (Open) - if (Powered) return 15295; - else return 15296; - else - if (Powered) return 15297; - else return 15298; - else - if (Open) - if (Powered) return 15299; - else return 15300; - else - if (Powered) return 15301; - else return 15302; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (InWall) - if (Open) - if (Powered) return 15303; - else return 15304; - else - if (Powered) return 15305; - else return 15306; - else - if (Open) - if (Powered) return 15307; - else return 15308; - else - if (Powered) return 15309; - else return 15310; - else - if (InWall) - if (Open) - if (Powered) return 15311; - else return 15312; - else - if (Powered) return 15313; - else return 15314; - else - if (Open) - if (Powered) return 15315; - else return 15316; - else - if (Powered) return 15317; - else return 15318; - } - BlockState WarpedFenceGate(); - eBlockFace Facing(BlockState Block); - bool InWall(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace WarpedFungus - { - constexpr BlockState WarpedFungus() - { - return 14971; - } - } - namespace WarpedHyphae - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState WarpedHyphae(const enum Axis Axis) - { - if (Axis == Axis::X) return 14964; - else if (Axis == Axis::Y) return 14965; - else return 14966; - } - BlockState WarpedHyphae(); - enum Axis Axis(BlockState Block); - } - namespace WarpedNylium - { - constexpr BlockState WarpedNylium() - { - return 14970; - } - } - namespace WarpedPlanks - { - constexpr BlockState WarpedPlanks() - { - return 15046; - } - } - namespace WarpedPressurePlate - { - constexpr BlockState WarpedPressurePlate(const bool Powered) - { - if (Powered) return 15061; - else return 15062; - } - BlockState WarpedPressurePlate(); - bool Powered(BlockState Block); - } - namespace WarpedRoots - { - constexpr BlockState WarpedRoots() - { - return 14973; - } - } - namespace WarpedSign - { - constexpr BlockState WarpedSign(const unsigned char Rotation) - { - if (Rotation == 0) return 15688; - else if (Rotation == 1) return 15690; - else if (Rotation == 2) return 15692; - else if (Rotation == 3) return 15694; - else if (Rotation == 4) return 15696; - else if (Rotation == 5) return 15698; - else if (Rotation == 6) return 15700; - else if (Rotation == 7) return 15702; - else if (Rotation == 8) return 15704; - else if (Rotation == 9) return 15706; - else if (Rotation == 10) return 15708; - else if (Rotation == 11) return 15710; - else if (Rotation == 12) return 15712; - else if (Rotation == 13) return 15714; - else if (Rotation == 14) return 15716; - else return 15718; - } - BlockState WarpedSign(); - unsigned char Rotation(BlockState Block); - } - namespace WarpedSlab - { - enum class Type - { - Top, - Bottom, - Double - }; - constexpr BlockState WarpedSlab(const enum Type Type) - { - if (Type == Type::Top) return 15054; - else if (Type == Type::Bottom) return 15056; - else return 15058; - } - BlockState WarpedSlab(); - enum Type Type(BlockState Block); - } - namespace WarpedStairs - { - enum class Half - { - Top, - Bottom - }; - enum class Shape - { - Straight, - InnerLeft, - InnerRight, - OuterLeft, - OuterRight - }; - constexpr BlockState WarpedStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15400; - else if (Shape == Shape::InnerLeft) return 15402; - else if (Shape == Shape::InnerRight) return 15404; - else if (Shape == Shape::OuterLeft) return 15406; - else return 15408; - else - if (Shape == Shape::Straight) return 15410; - else if (Shape == Shape::InnerLeft) return 15412; - else if (Shape == Shape::InnerRight) return 15414; - else if (Shape == Shape::OuterLeft) return 15416; - else return 15418; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15420; - else if (Shape == Shape::InnerLeft) return 15422; - else if (Shape == Shape::InnerRight) return 15424; - else if (Shape == Shape::OuterLeft) return 15426; - else return 15428; - else - if (Shape == Shape::Straight) return 15430; - else if (Shape == Shape::InnerLeft) return 15432; - else if (Shape == Shape::InnerRight) return 15434; - else if (Shape == Shape::OuterLeft) return 15436; - else return 15438; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15440; - else if (Shape == Shape::InnerLeft) return 15442; - else if (Shape == Shape::InnerRight) return 15444; - else if (Shape == Shape::OuterLeft) return 15446; - else return 15448; - else - if (Shape == Shape::Straight) return 15450; - else if (Shape == Shape::InnerLeft) return 15452; - else if (Shape == Shape::InnerRight) return 15454; - else if (Shape == Shape::OuterLeft) return 15456; - else return 15458; - else - if (Half == Half::Top) - if (Shape == Shape::Straight) return 15460; - else if (Shape == Shape::InnerLeft) return 15462; - else if (Shape == Shape::InnerRight) return 15464; - else if (Shape == Shape::OuterLeft) return 15466; - else return 15468; - else - if (Shape == Shape::Straight) return 15470; - else if (Shape == Shape::InnerLeft) return 15472; - else if (Shape == Shape::InnerRight) return 15474; - else if (Shape == Shape::OuterLeft) return 15476; - else return 15478; - } - BlockState WarpedStairs(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - enum Shape Shape(BlockState Block); - } - namespace WarpedStem - { - enum class Axis - { - X, - Y, - Z - }; - constexpr BlockState WarpedStem(const enum Axis Axis) - { - if (Axis == Axis::X) return 14958; - else if (Axis == Axis::Y) return 14959; - else return 14960; - } - BlockState WarpedStem(); - enum Axis Axis(BlockState Block); - } - namespace WarpedTrapdoor - { - enum class Half - { - Top, - Bottom - }; - constexpr BlockState WarpedTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Half == Half::Top) - if (Open) - if (Powered) return 15192; - else return 15194; - else - if (Powered) return 15196; - else return 15198; - else - if (Open) - if (Powered) return 15200; - else return 15202; - else - if (Powered) return 15204; - else return 15206; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Half == Half::Top) - if (Open) - if (Powered) return 15208; - else return 15210; - else - if (Powered) return 15212; - else return 15214; - else - if (Open) - if (Powered) return 15216; - else return 15218; - else - if (Powered) return 15220; - else return 15222; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Half == Half::Top) - if (Open) - if (Powered) return 15224; - else return 15226; - else - if (Powered) return 15228; - else return 15230; - else - if (Open) - if (Powered) return 15232; - else return 15234; - else - if (Powered) return 15236; - else return 15238; - else - if (Half == Half::Top) - if (Open) - if (Powered) return 15240; - else return 15242; - else - if (Powered) return 15244; - else return 15246; - else - if (Open) - if (Powered) return 15248; - else return 15250; - else - if (Powered) return 15252; - else return 15254; - } - BlockState WarpedTrapdoor(); - eBlockFace Facing(BlockState Block); - enum Half Half(BlockState Block); - bool Open(BlockState Block); - bool Powered(BlockState Block); - } - namespace WarpedWallSign - { - constexpr BlockState WarpedWallSign(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 15728; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 15730; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 15732; - else return 15734; - } - BlockState WarpedWallSign(); - eBlockFace Facing(BlockState Block); - } - namespace WarpedWartBlock - { - constexpr BlockState WarpedWartBlock() - { - return 14972; - } - } - namespace Water - { - constexpr BlockState Water(const unsigned char Level) - { - if (Level == 0) return 34; - else if (Level == 1) return 35; - else if (Level == 2) return 36; - else if (Level == 3) return 37; - else if (Level == 4) return 38; - else if (Level == 5) return 39; - else if (Level == 6) return 40; - else if (Level == 7) return 41; - else if (Level == 8) return 42; - else if (Level == 9) return 43; - else if (Level == 10) return 44; - else if (Level == 11) return 45; - else if (Level == 12) return 46; - else if (Level == 13) return 47; - else if (Level == 14) return 48; - else return 49; - } - BlockState Water(); - unsigned char Level(BlockState Block); - } - namespace WeepingVines - { - constexpr BlockState WeepingVines(const unsigned char Age) - { - if (Age == 0) return 14990; - else if (Age == 1) return 14991; - else if (Age == 2) return 14992; - else if (Age == 3) return 14993; - else if (Age == 4) return 14994; - else if (Age == 5) return 14995; - else if (Age == 6) return 14996; - else if (Age == 7) return 14997; - else if (Age == 8) return 14998; - else if (Age == 9) return 14999; - else if (Age == 10) return 15000; - else if (Age == 11) return 15001; - else if (Age == 12) return 15002; - else if (Age == 13) return 15003; - else if (Age == 14) return 15004; - else if (Age == 15) return 15005; - else if (Age == 16) return 15006; - else if (Age == 17) return 15007; - else if (Age == 18) return 15008; - else if (Age == 19) return 15009; - else if (Age == 20) return 15010; - else if (Age == 21) return 15011; - else if (Age == 22) return 15012; - else if (Age == 23) return 15013; - else if (Age == 24) return 15014; - else return 15015; - } - BlockState WeepingVines(); - unsigned char Age(BlockState Block); - } - namespace WeepingVinesPlant - { - constexpr BlockState WeepingVinesPlant() - { - return 15016; - } - } - namespace WetSponge - { - constexpr BlockState WetSponge() - { - return 230; - } - } - namespace Wheat - { - constexpr BlockState Wheat(const unsigned char Age) - { - if (Age == 0) return 3357; - else if (Age == 1) return 3358; - else if (Age == 2) return 3359; - else if (Age == 3) return 3360; - else if (Age == 4) return 3361; - else if (Age == 5) return 3362; - else if (Age == 6) return 3363; - else return 3364; - } - BlockState Wheat(); - unsigned char Age(BlockState Block); - } - namespace WhiteBanner - { - constexpr BlockState WhiteBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7897; - else if (Rotation == 1) return 7898; - else if (Rotation == 2) return 7899; - else if (Rotation == 3) return 7900; - else if (Rotation == 4) return 7901; - else if (Rotation == 5) return 7902; - else if (Rotation == 6) return 7903; - else if (Rotation == 7) return 7904; - else if (Rotation == 8) return 7905; - else if (Rotation == 9) return 7906; - else if (Rotation == 10) return 7907; - else if (Rotation == 11) return 7908; - else if (Rotation == 12) return 7909; - else if (Rotation == 13) return 7910; - else if (Rotation == 14) return 7911; - else return 7912; - } - BlockState WhiteBanner(); - unsigned char Rotation(BlockState Block); - } - namespace WhiteBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState WhiteBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1049; - else return 1050; - else - if (Part == Part::Head) return 1051; - else return 1052; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1053; - else return 1054; - else - if (Part == Part::Head) return 1055; - else return 1056; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1057; - else return 1058; - else - if (Part == Part::Head) return 1059; - else return 1060; - else - if (Occupied) - if (Part == Part::Head) return 1061; - else return 1062; - else - if (Part == Part::Head) return 1063; - else return 1064; - } - BlockState WhiteBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace WhiteCarpet - { - constexpr BlockState WhiteCarpet() - { - return 7866; - } - } - namespace WhiteConcrete - { - constexpr BlockState WhiteConcrete() - { - return 9438; - } - } - namespace WhiteConcretePowder - { - constexpr BlockState WhiteConcretePowder() - { - return 9454; - } - } - namespace WhiteGlazedTerracotta - { - constexpr BlockState WhiteGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9374; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9375; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9376; - else return 9377; - } - BlockState WhiteGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace WhiteShulkerBox - { - constexpr BlockState WhiteShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9278; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9279; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9280; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9281; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9282; - else return 9283; - } - BlockState WhiteShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace WhiteStainedGlass - { - constexpr BlockState WhiteStainedGlass() - { - return 4095; - } - } - namespace WhiteStainedGlassPane - { - constexpr BlockState WhiteStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 6865; - else return 6866; - else - if (West) return 6869; - else return 6870; - else - if (South) - if (West) return 6873; - else return 6874; - else - if (West) return 6877; - else return 6878; + if (West) + return 5307; + else + return 5308; + else if (West) + return 5309; + else + return 5310; + else if (South) + if (West) + return 5311; + else + return 5312; + else if (West) + return 5313; + else + return 5314; + else if (Powered) + if (South) + if (West) + return 5315; + else + return 5316; + else if (West) + return 5317; + else + return 5318; + else if (South) + if (West) + return 5319; + else + return 5320; + else if (West) + return 5321; else - if (North) - if (South) - if (West) return 6881; - else return 6882; - else - if (West) return 6885; - else return 6886; - else - if (South) - if (West) return 6889; - else return 6890; - else - if (West) return 6893; - else return 6894; - } - BlockState WhiteStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace WhiteTerracotta - { - constexpr BlockState WhiteTerracotta() - { - return 6847; - } - } - namespace WhiteTulip - { - constexpr BlockState WhiteTulip() - { - return 1419; - } - } - namespace WhiteWallBanner - { - constexpr BlockState WhiteWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8153; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8154; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8155; - else return 8156; - } - BlockState WhiteWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace WhiteWool - { - constexpr BlockState WhiteWool() - { - return 1384; - } - } - namespace WitherRose - { - constexpr BlockState WitherRose() - { - return 1423; - } - } - namespace WitherSkeletonSkull - { - constexpr BlockState WitherSkeletonSkull(const unsigned char Rotation) - { - if (Rotation == 0) return 6510; - else if (Rotation == 1) return 6511; - else if (Rotation == 2) return 6512; - else if (Rotation == 3) return 6513; - else if (Rotation == 4) return 6514; - else if (Rotation == 5) return 6515; - else if (Rotation == 6) return 6516; - else if (Rotation == 7) return 6517; - else if (Rotation == 8) return 6518; - else if (Rotation == 9) return 6519; - else if (Rotation == 10) return 6520; - else if (Rotation == 11) return 6521; - else if (Rotation == 12) return 6522; - else if (Rotation == 13) return 6523; - else if (Rotation == 14) return 6524; - else return 6525; - } - BlockState WitherSkeletonSkull(); - unsigned char Rotation(BlockState Block); - } - namespace WitherSkeletonWallSkull - { - constexpr BlockState WitherSkeletonWallSkull(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6526; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6527; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6528; - else return 6529; - } - BlockState WitherSkeletonWallSkull(); - eBlockFace Facing(BlockState Block); - } - namespace YellowBanner - { - constexpr BlockState YellowBanner(const unsigned char Rotation) - { - if (Rotation == 0) return 7961; - else if (Rotation == 1) return 7962; - else if (Rotation == 2) return 7963; - else if (Rotation == 3) return 7964; - else if (Rotation == 4) return 7965; - else if (Rotation == 5) return 7966; - else if (Rotation == 6) return 7967; - else if (Rotation == 7) return 7968; - else if (Rotation == 8) return 7969; - else if (Rotation == 9) return 7970; - else if (Rotation == 10) return 7971; - else if (Rotation == 11) return 7972; - else if (Rotation == 12) return 7973; - else if (Rotation == 13) return 7974; - else if (Rotation == 14) return 7975; - else return 7976; - } - BlockState YellowBanner(); - unsigned char Rotation(BlockState Block); - } - namespace YellowBed - { - enum class Part - { - Head, - Foot - }; - constexpr BlockState YellowBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) - if (Occupied) - if (Part == Part::Head) return 1113; - else return 1114; - else - if (Part == Part::Head) return 1115; - else return 1116; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) - if (Occupied) - if (Part == Part::Head) return 1117; - else return 1118; - else - if (Part == Part::Head) return 1119; - else return 1120; - else if (Facing == eBlockFace::BLOCK_FACE_XM) - if (Occupied) - if (Part == Part::Head) return 1121; - else return 1122; - else - if (Part == Part::Head) return 1123; - else return 1124; - else - if (Occupied) - if (Part == Part::Head) return 1125; - else return 1126; - else - if (Part == Part::Head) return 1127; - else return 1128; - } - BlockState YellowBed(); - eBlockFace Facing(BlockState Block); - bool Occupied(BlockState Block); - enum Part Part(BlockState Block); - } - namespace YellowCarpet - { - constexpr BlockState YellowCarpet() - { - return 7870; - } - } - namespace YellowConcrete - { - constexpr BlockState YellowConcrete() - { - return 9442; - } - } - namespace YellowConcretePowder - { - constexpr BlockState YellowConcretePowder() - { - return 9458; - } - } - namespace YellowGlazedTerracotta - { - constexpr BlockState YellowGlazedTerracotta(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9390; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9391; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9392; - else return 9393; - } - BlockState YellowGlazedTerracotta(); - eBlockFace Facing(BlockState Block); - } - namespace YellowShulkerBox - { - constexpr BlockState YellowShulkerBox(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9302; - else if (Facing == eBlockFace::BLOCK_FACE_XP) return 9303; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9304; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 9305; - else if (Facing == eBlockFace::BLOCK_FACE_YP) return 9306; - else return 9307; - } - BlockState YellowShulkerBox(); - eBlockFace Facing(BlockState Block); - } - namespace YellowStainedGlass - { - constexpr BlockState YellowStainedGlass() - { - return 4099; - } - } - namespace YellowStainedGlassPane - { - constexpr BlockState YellowStainedGlassPane(const bool East, const bool North, const bool South, const bool West) - { - if (East) - if (North) - if (South) - if (West) return 6993; - else return 6994; - else - if (West) return 6997; - else return 6998; - else - if (South) - if (West) return 7001; - else return 7002; - else - if (West) return 7005; - else return 7006; + return 5322; + else if (North) + if (Powered) + if (South) + if (West) + return 5323; + else + return 5324; + else if (West) + return 5325; + else + return 5326; + else if (South) + if (West) + return 5327; + else + return 5328; + else if (West) + return 5329; else - if (North) - if (South) - if (West) return 7009; - else return 7010; - else - if (West) return 7013; - else return 7014; - else + return 5330; + else if (Powered) + if (South) + if (West) + return 5331; + else + return 5332; + else if (West) + return 5333; + else + return 5334; + else if (South) + if (West) + return 5335; + else + return 5336; + else if (West) + return 5337; + else + return 5338; + else if (Disarmed) + if (East) + if (North) + if (Powered) if (South) - if (West) return 7017; - else return 7018; - else - if (West) return 7021; - else return 7022; - } - BlockState YellowStainedGlassPane(); - bool East(BlockState Block); - bool North(BlockState Block); - bool South(BlockState Block); - bool West(BlockState Block); - } - namespace YellowTerracotta - { - constexpr BlockState YellowTerracotta() - { - return 6851; - } - } - namespace YellowWallBanner - { - constexpr BlockState YellowWallBanner(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8169; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8170; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 8171; - else return 8172; - } - BlockState YellowWallBanner(); - eBlockFace Facing(BlockState Block); - } - namespace YellowWool - { - constexpr BlockState YellowWool() - { - return 1388; - } - } - namespace ZombieHead - { - constexpr BlockState ZombieHead(const unsigned char Rotation) - { - if (Rotation == 0) return 6530; - else if (Rotation == 1) return 6531; - else if (Rotation == 2) return 6532; - else if (Rotation == 3) return 6533; - else if (Rotation == 4) return 6534; - else if (Rotation == 5) return 6535; - else if (Rotation == 6) return 6536; - else if (Rotation == 7) return 6537; - else if (Rotation == 8) return 6538; - else if (Rotation == 9) return 6539; - else if (Rotation == 10) return 6540; - else if (Rotation == 11) return 6541; - else if (Rotation == 12) return 6542; - else if (Rotation == 13) return 6543; - else if (Rotation == 14) return 6544; - else return 6545; - } - BlockState ZombieHead(); - unsigned char Rotation(BlockState Block); - } - namespace ZombieWallHead - { - constexpr BlockState ZombieWallHead(const eBlockFace Facing) - { - if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6546; - else if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6547; - else if (Facing == eBlockFace::BLOCK_FACE_XM) return 6548; - else return 6549; - } - BlockState ZombieWallHead(); - eBlockFace Facing(BlockState Block); - } + if (West) + return 5339; + else + return 5340; + else if (West) + return 5341; + else + return 5342; + else if (South) + if (West) + return 5343; + else + return 5344; + else if (West) + return 5345; + else + return 5346; + else if (Powered) + if (South) + if (West) + return 5347; + else + return 5348; + else if (West) + return 5349; + else + return 5350; + else if (South) + if (West) + return 5351; + else + return 5352; + else if (West) + return 5353; + else + return 5354; + else if (North) + if (Powered) + if (South) + if (West) + return 5355; + else + return 5356; + else if (West) + return 5357; + else + return 5358; + else if (South) + if (West) + return 5359; + else + return 5360; + else if (West) + return 5361; + else + return 5362; + else if (Powered) + if (South) + if (West) + return 5363; + else + return 5364; + else if (West) + return 5365; + else + return 5366; + else if (South) + if (West) + return 5367; + else + return 5368; + else if (West) + return 5369; + else + return 5370; + else if (East) + if (North) + if (Powered) + if (South) + if (West) + return 5371; + else + return 5372; + else if (West) + return 5373; + else + return 5374; + else if (South) + if (West) + return 5375; + else + return 5376; + else if (West) + return 5377; + else + return 5378; + else if (Powered) + if (South) + if (West) + return 5379; + else + return 5380; + else if (West) + return 5381; + else + return 5382; + else if (South) + if (West) + return 5383; + else + return 5384; + else if (West) + return 5385; + else + return 5386; + else if (North) + if (Powered) + if (South) + if (West) + return 5387; + else + return 5388; + else if (West) + return 5389; + else + return 5390; + else if (South) + if (West) + return 5391; + else + return 5392; + else if (West) + return 5393; + else + return 5394; + else if (Powered) + if (South) + if (West) + return 5395; + else + return 5396; + else if (West) + return 5397; + else + return 5398; + else if (South) + if (West) + return 5399; + else + return 5400; + else if (West) + return 5401; + else + return 5402; +} +BlockState Tripwire(); +bool Attached(BlockState Block); +bool Disarmed(BlockState Block); +bool East(BlockState Block); +bool North(BlockState Block); +bool Powered(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace Tripwire +namespace TripwireHook +{ +constexpr BlockState TripwireHook(const bool Attached, const eBlockFace Facing, const bool Powered) +{ + if (Attached) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 5259; + else + return 5260; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 5261; + else + return 5262; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 5263; + else + return 5264; + else if (Powered) + return 5265; + else + return 5266; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 5267; + else + return 5268; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 5269; + else + return 5270; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 5271; + else + return 5272; + else if (Powered) + return 5273; + else + return 5274; +} +BlockState TripwireHook(); +bool Attached(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace TripwireHook +namespace TubeCoral +{ +constexpr BlockState TubeCoral() +{ + return 9531; +} +} // namespace TubeCoral +namespace TubeCoralBlock +{ +constexpr BlockState TubeCoralBlock() +{ + return 9515; +} +} // namespace TubeCoralBlock +namespace TubeCoralFan +{ +constexpr BlockState TubeCoralFan() +{ + return 9551; +} +} // namespace TubeCoralFan +namespace TubeCoralWallFan +{ +constexpr BlockState TubeCoralWallFan(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9601; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9603; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9605; + else + return 9607; +} +BlockState TubeCoralWallFan(); +eBlockFace Facing(BlockState Block); +} // namespace TubeCoralWallFan +namespace TurtleEgg +{ +constexpr BlockState TurtleEgg(const unsigned char Eggs, const unsigned char Hatch) +{ + if (Eggs == 1) + if (Hatch == 0) + return 9498; + else if (Hatch == 1) + return 9499; + else + return 9500; + else if (Eggs == 2) + if (Hatch == 0) + return 9501; + else if (Hatch == 1) + return 9502; + else + return 9503; + else if (Eggs == 3) + if (Hatch == 0) + return 9504; + else if (Hatch == 1) + return 9505; + else + return 9506; + else if (Hatch == 0) + return 9507; + else if (Hatch == 1) + return 9508; + else + return 9509; +} +BlockState TurtleEgg(); +unsigned char Eggs(BlockState Block); +unsigned char Hatch(BlockState Block); +} // namespace TurtleEgg +namespace TwistingVines +{ +constexpr BlockState TwistingVines(const unsigned char Age) +{ + if (Age == 0) + return 15017; + else if (Age == 1) + return 15018; + else if (Age == 2) + return 15019; + else if (Age == 3) + return 15020; + else if (Age == 4) + return 15021; + else if (Age == 5) + return 15022; + else if (Age == 6) + return 15023; + else if (Age == 7) + return 15024; + else if (Age == 8) + return 15025; + else if (Age == 9) + return 15026; + else if (Age == 10) + return 15027; + else if (Age == 11) + return 15028; + else if (Age == 12) + return 15029; + else if (Age == 13) + return 15030; + else if (Age == 14) + return 15031; + else if (Age == 15) + return 15032; + else if (Age == 16) + return 15033; + else if (Age == 17) + return 15034; + else if (Age == 18) + return 15035; + else if (Age == 19) + return 15036; + else if (Age == 20) + return 15037; + else if (Age == 21) + return 15038; + else if (Age == 22) + return 15039; + else if (Age == 23) + return 15040; + else if (Age == 24) + return 15041; + else + return 15042; +} +BlockState TwistingVines(); +unsigned char Age(BlockState Block); +} // namespace TwistingVines +namespace TwistingVinesPlant +{ +constexpr BlockState TwistingVinesPlant() +{ + return 15043; +} +} // namespace TwistingVinesPlant +namespace Vine +{ +constexpr BlockState Vine(const bool East, const bool North, const bool South, const bool Up, const bool West) +{ + if (East) + if (North) + if (South) + if (Up) + if (West) + return 4788; + else + return 4789; + else if (West) + return 4790; + else + return 4791; + else if (Up) + if (West) + return 4792; + else + return 4793; + else if (West) + return 4794; + else + return 4795; + else if (South) + if (Up) + if (West) + return 4796; + else + return 4797; + else if (West) + return 4798; + else + return 4799; + else if (Up) + if (West) + return 4800; + else + return 4801; + else if (West) + return 4802; + else + return 4803; + else if (North) + if (South) + if (Up) + if (West) + return 4804; + else + return 4805; + else if (West) + return 4806; + else + return 4807; + else if (Up) + if (West) + return 4808; + else + return 4809; + else if (West) + return 4810; + else + return 4811; + else if (South) + if (Up) + if (West) + return 4812; + else + return 4813; + else if (West) + return 4814; + else + return 4815; + else if (Up) + if (West) + return 4816; + else + return 4817; + else if (West) + return 4818; + else + return 4819; +} +BlockState Vine(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool Up(BlockState Block); +bool West(BlockState Block); +} // namespace Vine +namespace VoidAir +{ +constexpr BlockState VoidAir() +{ + return 9665; +} +} // namespace VoidAir +namespace WallTorch +{ +constexpr BlockState WallTorch(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 1436; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 1437; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 1438; + else + return 1439; +} +BlockState WallTorch(); +eBlockFace Facing(BlockState Block); +} // namespace WallTorch +namespace WarpedButton +{ +enum class Face +{ + Floor, + Wall, + Ceiling +}; +constexpr BlockState WarpedButton(const enum Face Face, const eBlockFace Facing, const bool Powered) +{ + if (Face == Face::Floor) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15503; + else + return 15504; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15505; + else + return 15506; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15507; + else + return 15508; + else if (Powered) + return 15509; + else + return 15510; + else if (Face == Face::Wall) + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15511; + else + return 15512; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15513; + else + return 15514; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15515; + else + return 15516; + else if (Powered) + return 15517; + else + return 15518; + else if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Powered) + return 15519; + else + return 15520; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Powered) + return 15521; + else + return 15522; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Powered) + return 15523; + else + return 15524; + else if (Powered) + return 15525; + else + return 15526; +} +BlockState WarpedButton(); +enum Face Face(BlockState Block); +eBlockFace Facing(BlockState Block); +bool Powered(BlockState Block); +} // namespace WarpedButton +namespace WarpedDoor +{ +enum class Half +{ + Upper, + Lower +}; +enum class Hinge +{ + Left, + Right +}; +constexpr BlockState WarpedDoor( + const eBlockFace Facing, + const enum Half Half, + const enum Hinge Hinge, + const bool Open, + const bool Powered +) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15591; + else + return 15592; + else if (Powered) + return 15593; + else + return 15594; + else if (Open) + if (Powered) + return 15595; + else + return 15596; + else if (Powered) + return 15597; + else + return 15598; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15599; + else + return 15600; + else if (Powered) + return 15601; + else + return 15602; + else if (Open) + if (Powered) + return 15603; + else + return 15604; + else if (Powered) + return 15605; + else + return 15606; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15607; + else + return 15608; + else if (Powered) + return 15609; + else + return 15610; + else if (Open) + if (Powered) + return 15611; + else + return 15612; + else if (Powered) + return 15613; + else + return 15614; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15615; + else + return 15616; + else if (Powered) + return 15617; + else + return 15618; + else if (Open) + if (Powered) + return 15619; + else + return 15620; + else if (Powered) + return 15621; + else + return 15622; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15623; + else + return 15624; + else if (Powered) + return 15625; + else + return 15626; + else if (Open) + if (Powered) + return 15627; + else + return 15628; + else if (Powered) + return 15629; + else + return 15630; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15631; + else + return 15632; + else if (Powered) + return 15633; + else + return 15634; + else if (Open) + if (Powered) + return 15635; + else + return 15636; + else if (Powered) + return 15637; + else + return 15638; + else if (Half == Half::Upper) + if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15639; + else + return 15640; + else if (Powered) + return 15641; + else + return 15642; + else if (Open) + if (Powered) + return 15643; + else + return 15644; + else if (Powered) + return 15645; + else + return 15646; + else if (Hinge == Hinge::Left) + if (Open) + if (Powered) + return 15647; + else + return 15648; + else if (Powered) + return 15649; + else + return 15650; + else if (Open) + if (Powered) + return 15651; + else + return 15652; + else if (Powered) + return 15653; + else + return 15654; +} +BlockState WarpedDoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Hinge Hinge(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace WarpedDoor +namespace WarpedFence +{ +constexpr BlockState WarpedFence(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 15097; + else + return 15098; + else if (West) + return 15101; + else + return 15102; + else if (South) + if (West) + return 15105; + else + return 15106; + else if (West) + return 15109; + else + return 15110; + else if (North) + if (South) + if (West) + return 15113; + else + return 15114; + else if (West) + return 15117; + else + return 15118; + else if (South) + if (West) + return 15121; + else + return 15122; + else if (West) + return 15125; + else + return 15126; +} +BlockState WarpedFence(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace WarpedFence +namespace WarpedFenceGate +{ +constexpr BlockState WarpedFenceGate(const eBlockFace Facing, const bool InWall, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (InWall) + if (Open) + if (Powered) + return 15287; + else + return 15288; + else if (Powered) + return 15289; + else + return 15290; + else if (Open) + if (Powered) + return 15291; + else + return 15292; + else if (Powered) + return 15293; + else + return 15294; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (InWall) + if (Open) + if (Powered) + return 15295; + else + return 15296; + else if (Powered) + return 15297; + else + return 15298; + else if (Open) + if (Powered) + return 15299; + else + return 15300; + else if (Powered) + return 15301; + else + return 15302; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (InWall) + if (Open) + if (Powered) + return 15303; + else + return 15304; + else if (Powered) + return 15305; + else + return 15306; + else if (Open) + if (Powered) + return 15307; + else + return 15308; + else if (Powered) + return 15309; + else + return 15310; + else if (InWall) + if (Open) + if (Powered) + return 15311; + else + return 15312; + else if (Powered) + return 15313; + else + return 15314; + else if (Open) + if (Powered) + return 15315; + else + return 15316; + else if (Powered) + return 15317; + else + return 15318; +} +BlockState WarpedFenceGate(); +eBlockFace Facing(BlockState Block); +bool InWall(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace WarpedFenceGate +namespace WarpedFungus +{ +constexpr BlockState WarpedFungus() +{ + return 14971; +} +} // namespace WarpedFungus +namespace WarpedHyphae +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState WarpedHyphae(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14964; + else if (Axis == Axis::Y) + return 14965; + else + return 14966; +} +BlockState WarpedHyphae(); +enum Axis Axis(BlockState Block); +} // namespace WarpedHyphae +namespace WarpedNylium +{ +constexpr BlockState WarpedNylium() +{ + return 14970; +} +} // namespace WarpedNylium +namespace WarpedPlanks +{ +constexpr BlockState WarpedPlanks() +{ + return 15046; +} +} // namespace WarpedPlanks +namespace WarpedPressurePlate +{ +constexpr BlockState WarpedPressurePlate(const bool Powered) +{ + if (Powered) + return 15061; + else + return 15062; +} +BlockState WarpedPressurePlate(); +bool Powered(BlockState Block); +} // namespace WarpedPressurePlate +namespace WarpedRoots +{ +constexpr BlockState WarpedRoots() +{ + return 14973; +} +} // namespace WarpedRoots +namespace WarpedSign +{ +constexpr BlockState WarpedSign(const unsigned char Rotation) +{ + if (Rotation == 0) + return 15688; + else if (Rotation == 1) + return 15690; + else if (Rotation == 2) + return 15692; + else if (Rotation == 3) + return 15694; + else if (Rotation == 4) + return 15696; + else if (Rotation == 5) + return 15698; + else if (Rotation == 6) + return 15700; + else if (Rotation == 7) + return 15702; + else if (Rotation == 8) + return 15704; + else if (Rotation == 9) + return 15706; + else if (Rotation == 10) + return 15708; + else if (Rotation == 11) + return 15710; + else if (Rotation == 12) + return 15712; + else if (Rotation == 13) + return 15714; + else if (Rotation == 14) + return 15716; + else + return 15718; +} +BlockState WarpedSign(); +unsigned char Rotation(BlockState Block); +} // namespace WarpedSign +namespace WarpedSlab +{ +enum class Type +{ + Top, + Bottom, + Double +}; +constexpr BlockState WarpedSlab(const enum Type Type) +{ + if (Type == Type::Top) + return 15054; + else if (Type == Type::Bottom) + return 15056; + else + return 15058; +} +BlockState WarpedSlab(); +enum Type Type(BlockState Block); +} // namespace WarpedSlab +namespace WarpedStairs +{ +enum class Half +{ + Top, + Bottom +}; +enum class Shape +{ + Straight, + InnerLeft, + InnerRight, + OuterLeft, + OuterRight +}; +constexpr BlockState WarpedStairs(const eBlockFace Facing, const enum Half Half, const enum Shape Shape) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15400; + else if (Shape == Shape::InnerLeft) + return 15402; + else if (Shape == Shape::InnerRight) + return 15404; + else if (Shape == Shape::OuterLeft) + return 15406; + else + return 15408; + else if (Shape == Shape::Straight) + return 15410; + else if (Shape == Shape::InnerLeft) + return 15412; + else if (Shape == Shape::InnerRight) + return 15414; + else if (Shape == Shape::OuterLeft) + return 15416; + else + return 15418; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15420; + else if (Shape == Shape::InnerLeft) + return 15422; + else if (Shape == Shape::InnerRight) + return 15424; + else if (Shape == Shape::OuterLeft) + return 15426; + else + return 15428; + else if (Shape == Shape::Straight) + return 15430; + else if (Shape == Shape::InnerLeft) + return 15432; + else if (Shape == Shape::InnerRight) + return 15434; + else if (Shape == Shape::OuterLeft) + return 15436; + else + return 15438; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15440; + else if (Shape == Shape::InnerLeft) + return 15442; + else if (Shape == Shape::InnerRight) + return 15444; + else if (Shape == Shape::OuterLeft) + return 15446; + else + return 15448; + else if (Shape == Shape::Straight) + return 15450; + else if (Shape == Shape::InnerLeft) + return 15452; + else if (Shape == Shape::InnerRight) + return 15454; + else if (Shape == Shape::OuterLeft) + return 15456; + else + return 15458; + else if (Half == Half::Top) + if (Shape == Shape::Straight) + return 15460; + else if (Shape == Shape::InnerLeft) + return 15462; + else if (Shape == Shape::InnerRight) + return 15464; + else if (Shape == Shape::OuterLeft) + return 15466; + else + return 15468; + else if (Shape == Shape::Straight) + return 15470; + else if (Shape == Shape::InnerLeft) + return 15472; + else if (Shape == Shape::InnerRight) + return 15474; + else if (Shape == Shape::OuterLeft) + return 15476; + else + return 15478; +} +BlockState WarpedStairs(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +enum Shape Shape(BlockState Block); +} // namespace WarpedStairs +namespace WarpedStem +{ +enum class Axis +{ + X, + Y, + Z +}; +constexpr BlockState WarpedStem(const enum Axis Axis) +{ + if (Axis == Axis::X) + return 14958; + else if (Axis == Axis::Y) + return 14959; + else + return 14960; +} +BlockState WarpedStem(); +enum Axis Axis(BlockState Block); +} // namespace WarpedStem +namespace WarpedTrapdoor +{ +enum class Half +{ + Top, + Bottom +}; +constexpr BlockState WarpedTrapdoor(const eBlockFace Facing, const enum Half Half, const bool Open, const bool Powered) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15192; + else + return 15194; + else if (Powered) + return 15196; + else + return 15198; + else if (Open) + if (Powered) + return 15200; + else + return 15202; + else if (Powered) + return 15204; + else + return 15206; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15208; + else + return 15210; + else if (Powered) + return 15212; + else + return 15214; + else if (Open) + if (Powered) + return 15216; + else + return 15218; + else if (Powered) + return 15220; + else + return 15222; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Half == Half::Top) + if (Open) + if (Powered) + return 15224; + else + return 15226; + else if (Powered) + return 15228; + else + return 15230; + else if (Open) + if (Powered) + return 15232; + else + return 15234; + else if (Powered) + return 15236; + else + return 15238; + else if (Half == Half::Top) + if (Open) + if (Powered) + return 15240; + else + return 15242; + else if (Powered) + return 15244; + else + return 15246; + else if (Open) + if (Powered) + return 15248; + else + return 15250; + else if (Powered) + return 15252; + else + return 15254; +} +BlockState WarpedTrapdoor(); +eBlockFace Facing(BlockState Block); +enum Half Half(BlockState Block); +bool Open(BlockState Block); +bool Powered(BlockState Block); +} // namespace WarpedTrapdoor +namespace WarpedWallSign +{ +constexpr BlockState WarpedWallSign(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 15728; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 15730; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 15732; + else + return 15734; +} +BlockState WarpedWallSign(); +eBlockFace Facing(BlockState Block); +} // namespace WarpedWallSign +namespace WarpedWartBlock +{ +constexpr BlockState WarpedWartBlock() +{ + return 14972; +} +} // namespace WarpedWartBlock +namespace Water +{ +constexpr BlockState Water(const unsigned char Level) +{ + if (Level == 0) + return 34; + else if (Level == 1) + return 35; + else if (Level == 2) + return 36; + else if (Level == 3) + return 37; + else if (Level == 4) + return 38; + else if (Level == 5) + return 39; + else if (Level == 6) + return 40; + else if (Level == 7) + return 41; + else if (Level == 8) + return 42; + else if (Level == 9) + return 43; + else if (Level == 10) + return 44; + else if (Level == 11) + return 45; + else if (Level == 12) + return 46; + else if (Level == 13) + return 47; + else if (Level == 14) + return 48; + else + return 49; +} +BlockState Water(); +unsigned char Level(BlockState Block); +} // namespace Water +namespace WeepingVines +{ +constexpr BlockState WeepingVines(const unsigned char Age) +{ + if (Age == 0) + return 14990; + else if (Age == 1) + return 14991; + else if (Age == 2) + return 14992; + else if (Age == 3) + return 14993; + else if (Age == 4) + return 14994; + else if (Age == 5) + return 14995; + else if (Age == 6) + return 14996; + else if (Age == 7) + return 14997; + else if (Age == 8) + return 14998; + else if (Age == 9) + return 14999; + else if (Age == 10) + return 15000; + else if (Age == 11) + return 15001; + else if (Age == 12) + return 15002; + else if (Age == 13) + return 15003; + else if (Age == 14) + return 15004; + else if (Age == 15) + return 15005; + else if (Age == 16) + return 15006; + else if (Age == 17) + return 15007; + else if (Age == 18) + return 15008; + else if (Age == 19) + return 15009; + else if (Age == 20) + return 15010; + else if (Age == 21) + return 15011; + else if (Age == 22) + return 15012; + else if (Age == 23) + return 15013; + else if (Age == 24) + return 15014; + else + return 15015; +} +BlockState WeepingVines(); +unsigned char Age(BlockState Block); +} // namespace WeepingVines +namespace WeepingVinesPlant +{ +constexpr BlockState WeepingVinesPlant() +{ + return 15016; +} +} // namespace WeepingVinesPlant +namespace WetSponge +{ +constexpr BlockState WetSponge() +{ + return 230; +} +} // namespace WetSponge +namespace Wheat +{ +constexpr BlockState Wheat(const unsigned char Age) +{ + if (Age == 0) + return 3357; + else if (Age == 1) + return 3358; + else if (Age == 2) + return 3359; + else if (Age == 3) + return 3360; + else if (Age == 4) + return 3361; + else if (Age == 5) + return 3362; + else if (Age == 6) + return 3363; + else + return 3364; +} +BlockState Wheat(); +unsigned char Age(BlockState Block); +} // namespace Wheat +namespace WhiteBanner +{ +constexpr BlockState WhiteBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7897; + else if (Rotation == 1) + return 7898; + else if (Rotation == 2) + return 7899; + else if (Rotation == 3) + return 7900; + else if (Rotation == 4) + return 7901; + else if (Rotation == 5) + return 7902; + else if (Rotation == 6) + return 7903; + else if (Rotation == 7) + return 7904; + else if (Rotation == 8) + return 7905; + else if (Rotation == 9) + return 7906; + else if (Rotation == 10) + return 7907; + else if (Rotation == 11) + return 7908; + else if (Rotation == 12) + return 7909; + else if (Rotation == 13) + return 7910; + else if (Rotation == 14) + return 7911; + else + return 7912; +} +BlockState WhiteBanner(); +unsigned char Rotation(BlockState Block); +} // namespace WhiteBanner +namespace WhiteBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState WhiteBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1049; + else + return 1050; + else if (Part == Part::Head) + return 1051; + else + return 1052; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1053; + else + return 1054; + else if (Part == Part::Head) + return 1055; + else + return 1056; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1057; + else + return 1058; + else if (Part == Part::Head) + return 1059; + else + return 1060; + else if (Occupied) + if (Part == Part::Head) + return 1061; + else + return 1062; + else if (Part == Part::Head) + return 1063; + else + return 1064; +} +BlockState WhiteBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace WhiteBed +namespace WhiteCarpet +{ +constexpr BlockState WhiteCarpet() +{ + return 7866; +} +} // namespace WhiteCarpet +namespace WhiteConcrete +{ +constexpr BlockState WhiteConcrete() +{ + return 9438; +} +} // namespace WhiteConcrete +namespace WhiteConcretePowder +{ +constexpr BlockState WhiteConcretePowder() +{ + return 9454; +} +} // namespace WhiteConcretePowder +namespace WhiteGlazedTerracotta +{ +constexpr BlockState WhiteGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9374; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9375; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9376; + else + return 9377; +} +BlockState WhiteGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace WhiteGlazedTerracotta +namespace WhiteShulkerBox +{ +constexpr BlockState WhiteShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9278; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9279; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9280; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9281; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9282; + else + return 9283; +} +BlockState WhiteShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace WhiteShulkerBox +namespace WhiteStainedGlass +{ +constexpr BlockState WhiteStainedGlass() +{ + return 4095; +} +} // namespace WhiteStainedGlass +namespace WhiteStainedGlassPane +{ +constexpr BlockState WhiteStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 6865; + else + return 6866; + else if (West) + return 6869; + else + return 6870; + else if (South) + if (West) + return 6873; + else + return 6874; + else if (West) + return 6877; + else + return 6878; + else if (North) + if (South) + if (West) + return 6881; + else + return 6882; + else if (West) + return 6885; + else + return 6886; + else if (South) + if (West) + return 6889; + else + return 6890; + else if (West) + return 6893; + else + return 6894; +} +BlockState WhiteStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace WhiteStainedGlassPane +namespace WhiteTerracotta +{ +constexpr BlockState WhiteTerracotta() +{ + return 6847; +} +} // namespace WhiteTerracotta +namespace WhiteTulip +{ +constexpr BlockState WhiteTulip() +{ + return 1419; +} +} // namespace WhiteTulip +namespace WhiteWallBanner +{ +constexpr BlockState WhiteWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8153; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8154; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8155; + else + return 8156; +} +BlockState WhiteWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace WhiteWallBanner +namespace WhiteWool +{ +constexpr BlockState WhiteWool() +{ + return 1384; +} +} // namespace WhiteWool +namespace WitherRose +{ +constexpr BlockState WitherRose() +{ + return 1423; +} +} // namespace WitherRose +namespace WitherSkeletonSkull +{ +constexpr BlockState WitherSkeletonSkull(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6510; + else if (Rotation == 1) + return 6511; + else if (Rotation == 2) + return 6512; + else if (Rotation == 3) + return 6513; + else if (Rotation == 4) + return 6514; + else if (Rotation == 5) + return 6515; + else if (Rotation == 6) + return 6516; + else if (Rotation == 7) + return 6517; + else if (Rotation == 8) + return 6518; + else if (Rotation == 9) + return 6519; + else if (Rotation == 10) + return 6520; + else if (Rotation == 11) + return 6521; + else if (Rotation == 12) + return 6522; + else if (Rotation == 13) + return 6523; + else if (Rotation == 14) + return 6524; + else + return 6525; +} +BlockState WitherSkeletonSkull(); +unsigned char Rotation(BlockState Block); +} // namespace WitherSkeletonSkull +namespace WitherSkeletonWallSkull +{ +constexpr BlockState WitherSkeletonWallSkull(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6526; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6527; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6528; + else + return 6529; +} +BlockState WitherSkeletonWallSkull(); +eBlockFace Facing(BlockState Block); +} // namespace WitherSkeletonWallSkull +namespace YellowBanner +{ +constexpr BlockState YellowBanner(const unsigned char Rotation) +{ + if (Rotation == 0) + return 7961; + else if (Rotation == 1) + return 7962; + else if (Rotation == 2) + return 7963; + else if (Rotation == 3) + return 7964; + else if (Rotation == 4) + return 7965; + else if (Rotation == 5) + return 7966; + else if (Rotation == 6) + return 7967; + else if (Rotation == 7) + return 7968; + else if (Rotation == 8) + return 7969; + else if (Rotation == 9) + return 7970; + else if (Rotation == 10) + return 7971; + else if (Rotation == 11) + return 7972; + else if (Rotation == 12) + return 7973; + else if (Rotation == 13) + return 7974; + else if (Rotation == 14) + return 7975; + else + return 7976; +} +BlockState YellowBanner(); +unsigned char Rotation(BlockState Block); +} // namespace YellowBanner +namespace YellowBed +{ +enum class Part +{ + Head, + Foot +}; +constexpr BlockState YellowBed(const eBlockFace Facing, const bool Occupied, const enum Part Part) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + if (Occupied) + if (Part == Part::Head) + return 1113; + else + return 1114; + else if (Part == Part::Head) + return 1115; + else + return 1116; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + if (Occupied) + if (Part == Part::Head) + return 1117; + else + return 1118; + else if (Part == Part::Head) + return 1119; + else + return 1120; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + if (Occupied) + if (Part == Part::Head) + return 1121; + else + return 1122; + else if (Part == Part::Head) + return 1123; + else + return 1124; + else if (Occupied) + if (Part == Part::Head) + return 1125; + else + return 1126; + else if (Part == Part::Head) + return 1127; + else + return 1128; +} +BlockState YellowBed(); +eBlockFace Facing(BlockState Block); +bool Occupied(BlockState Block); +enum Part Part(BlockState Block); +} // namespace YellowBed +namespace YellowCarpet +{ +constexpr BlockState YellowCarpet() +{ + return 7870; +} +} // namespace YellowCarpet +namespace YellowConcrete +{ +constexpr BlockState YellowConcrete() +{ + return 9442; +} +} // namespace YellowConcrete +namespace YellowConcretePowder +{ +constexpr BlockState YellowConcretePowder() +{ + return 9458; +} +} // namespace YellowConcretePowder +namespace YellowGlazedTerracotta +{ +constexpr BlockState YellowGlazedTerracotta(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9390; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9391; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9392; + else + return 9393; +} +BlockState YellowGlazedTerracotta(); +eBlockFace Facing(BlockState Block); +} // namespace YellowGlazedTerracotta +namespace YellowShulkerBox +{ +constexpr BlockState YellowShulkerBox(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 9302; + else if (Facing == eBlockFace::BLOCK_FACE_XP) + return 9303; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 9304; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 9305; + else if (Facing == eBlockFace::BLOCK_FACE_YP) + return 9306; + else + return 9307; +} +BlockState YellowShulkerBox(); +eBlockFace Facing(BlockState Block); +} // namespace YellowShulkerBox +namespace YellowStainedGlass +{ +constexpr BlockState YellowStainedGlass() +{ + return 4099; +} +} // namespace YellowStainedGlass +namespace YellowStainedGlassPane +{ +constexpr BlockState YellowStainedGlassPane(const bool East, const bool North, const bool South, const bool West) +{ + if (East) + if (North) + if (South) + if (West) + return 6993; + else + return 6994; + else if (West) + return 6997; + else + return 6998; + else if (South) + if (West) + return 7001; + else + return 7002; + else if (West) + return 7005; + else + return 7006; + else if (North) + if (South) + if (West) + return 7009; + else + return 7010; + else if (West) + return 7013; + else + return 7014; + else if (South) + if (West) + return 7017; + else + return 7018; + else if (West) + return 7021; + else + return 7022; +} +BlockState YellowStainedGlassPane(); +bool East(BlockState Block); +bool North(BlockState Block); +bool South(BlockState Block); +bool West(BlockState Block); +} // namespace YellowStainedGlassPane +namespace YellowTerracotta +{ +constexpr BlockState YellowTerracotta() +{ + return 6851; +} +} // namespace YellowTerracotta +namespace YellowWallBanner +{ +constexpr BlockState YellowWallBanner(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 8169; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 8170; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 8171; + else + return 8172; +} +BlockState YellowWallBanner(); +eBlockFace Facing(BlockState Block); +} // namespace YellowWallBanner +namespace YellowWool +{ +constexpr BlockState YellowWool() +{ + return 1388; +} +} // namespace YellowWool +namespace ZombieHead +{ +constexpr BlockState ZombieHead(const unsigned char Rotation) +{ + if (Rotation == 0) + return 6530; + else if (Rotation == 1) + return 6531; + else if (Rotation == 2) + return 6532; + else if (Rotation == 3) + return 6533; + else if (Rotation == 4) + return 6534; + else if (Rotation == 5) + return 6535; + else if (Rotation == 6) + return 6536; + else if (Rotation == 7) + return 6537; + else if (Rotation == 8) + return 6538; + else if (Rotation == 9) + return 6539; + else if (Rotation == 10) + return 6540; + else if (Rotation == 11) + return 6541; + else if (Rotation == 12) + return 6542; + else if (Rotation == 13) + return 6543; + else if (Rotation == 14) + return 6544; + else + return 6545; +} +BlockState ZombieHead(); +unsigned char Rotation(BlockState Block); +} // namespace ZombieHead +namespace ZombieWallHead +{ +constexpr BlockState ZombieWallHead(const eBlockFace Facing) +{ + if (Facing == eBlockFace::BLOCK_FACE_ZM) + return 6546; + else if (Facing == eBlockFace::BLOCK_FACE_ZP) + return 6547; + else if (Facing == eBlockFace::BLOCK_FACE_XM) + return 6548; + else + return 6549; } +BlockState ZombieWallHead(); +eBlockFace Facing(BlockState Block); +} // namespace ZombieWallHead +} // namespace Block |