Added Entity, Item and Block palletes for 1.17/1 and 1.18/1. Added pallete generators as a command line option. Fixed a minor warning with AttackBot

This commit is contained in:
Dusan Milutinovic 2022-02-13 01:10:10 +01:00
parent 6986902938
commit 61a682a69b
16 changed files with 4488 additions and 72 deletions

View file

@ -23,6 +23,17 @@ namespace MinecraftClient.Mapping.BlockPalettes
/// </remarks>
public static class BlockPaletteGenerator
{
/// <summary>
/// Generate mapping from Minecraft blocks.json
/// </summary>
/// <param name="blocksJsonFile">path to blocks.json</param>
/// <remarks>java -cp minecraft_server.jar net.minecraft.data.Main --reports</remarks>
/// <returns>state => block name mappings</returns>
public static void GenerateBlockPallete(string blocksJsonFile)
{
BlockPaletteGenerator.JsonToClass(blocksJsonFile, "Palette", "Material");
}
/// <summary>
/// Generate mapping from Minecraft blocks.json
/// </summary>
@ -33,6 +44,9 @@ namespace MinecraftClient.Mapping.BlockPalettes
/// <returns>state => block name mappings</returns>
public static void JsonToClass(string blocksJsonFile, string outputClass, string outputEnum = null)
{
string outputPalettePath = Path.Combine(Path.GetDirectoryName(blocksJsonFile), outputClass + "XXX.cs");
string outputEnumPath = Path.Combine(Path.GetDirectoryName(blocksJsonFile), outputEnum + "XXX.cs");
HashSet<int> knownStates = new HashSet<int>();
Dictionary<string, HashSet<int>> blocks = new Dictionary<string, HashSet<int>>();
@ -70,7 +84,7 @@ namespace MinecraftClient.Mapping.BlockPalettes
"",
"namespace MinecraftClient.Mapping.BlockPalettes",
"{",
" public class PaletteXXX : PaletteMapping",
" public class PaletteXXX : BlockPalette",
" {",
" private static Dictionary<int, Material> materials = new Dictionary<int, Material>();",
"",
@ -121,7 +135,7 @@ namespace MinecraftClient.Mapping.BlockPalettes
"}"
});
File.WriteAllLines(outputClass, outFile);
File.WriteAllLines(outputPalettePath, outFile);
if (outputEnum != null)
{
@ -138,7 +152,7 @@ namespace MinecraftClient.Mapping.BlockPalettes
" }",
"}"
});
File.WriteAllLines(outputEnum, outFile);
File.WriteAllLines(outputEnumPath, outFile);
}
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,132 @@
using System;
using System.Collections.Generic;
namespace MinecraftClient.Mapping.EntityPalettes
{
public class EntityPalette117 : EntityPalette
{
private static Dictionary<int, EntityType> mappings = new Dictionary<int, EntityType>();
static EntityPalette117()
{
mappings[0] = EntityType.AreaEffectCloud;
mappings[1] = EntityType.ArmorStand;
mappings[2] = EntityType.Arrow;
mappings[3] = EntityType.Axolotl;
mappings[4] = EntityType.Bat;
mappings[5] = EntityType.Bee;
mappings[6] = EntityType.Blaze;
mappings[7] = EntityType.Boat;
mappings[8] = EntityType.Cat;
mappings[9] = EntityType.CaveSpider;
mappings[10] = EntityType.Chicken;
mappings[11] = EntityType.Cod;
mappings[12] = EntityType.Cow;
mappings[13] = EntityType.Creeper;
mappings[14] = EntityType.Dolphin;
mappings[15] = EntityType.Donkey;
mappings[16] = EntityType.DragonFireball;
mappings[17] = EntityType.Drowned;
mappings[18] = EntityType.ElderGuardian;
mappings[19] = EntityType.EndCrystal;
mappings[20] = EntityType.EnderDragon;
mappings[21] = EntityType.Enderman;
mappings[22] = EntityType.Endermite;
mappings[23] = EntityType.Evoker;
mappings[24] = EntityType.EvokerFangs;
mappings[25] = EntityType.ExperienceOrb;
mappings[26] = EntityType.EyeOfEnder;
mappings[27] = EntityType.FallingBlock;
mappings[28] = EntityType.FireworkRocket;
mappings[29] = EntityType.Fox;
mappings[30] = EntityType.Ghast;
mappings[31] = EntityType.Giant;
mappings[32] = EntityType.GlowItemFrame;
mappings[33] = EntityType.GlowSquid;
mappings[34] = EntityType.Goat;
mappings[35] = EntityType.Guardian;
mappings[36] = EntityType.Hoglin;
mappings[37] = EntityType.Horse;
mappings[38] = EntityType.Husk;
mappings[39] = EntityType.Illusioner;
mappings[40] = EntityType.IronGolem;
mappings[41] = EntityType.Item;
mappings[42] = EntityType.ItemFrame;
mappings[43] = EntityType.Fireball;
mappings[44] = EntityType.LeashKnot;
mappings[45] = EntityType.LightningBolt;
mappings[46] = EntityType.Llama;
mappings[47] = EntityType.LlamaSpit;
mappings[48] = EntityType.MagmaCube;
mappings[49] = EntityType.Marker;
mappings[50] = EntityType.Minecart;
mappings[51] = EntityType.ChestMinecart;
mappings[52] = EntityType.CommandBlockMinecart;
mappings[53] = EntityType.FurnaceMinecart;
mappings[54] = EntityType.HopperMinecart;
mappings[55] = EntityType.SpawnerMinecart;
mappings[56] = EntityType.TntMinecart;
mappings[57] = EntityType.Mule;
mappings[58] = EntityType.Mooshroom;
mappings[59] = EntityType.Ocelot;
mappings[60] = EntityType.Painting;
mappings[61] = EntityType.Panda;
mappings[62] = EntityType.Parrot;
mappings[63] = EntityType.Phantom;
mappings[64] = EntityType.Pig;
mappings[65] = EntityType.Piglin;
mappings[66] = EntityType.PiglinBrute;
mappings[67] = EntityType.Pillager;
mappings[68] = EntityType.PolarBear;
mappings[69] = EntityType.Tnt;
mappings[70] = EntityType.Pufferfish;
mappings[71] = EntityType.Rabbit;
mappings[72] = EntityType.Ravager;
mappings[73] = EntityType.Salmon;
mappings[74] = EntityType.Sheep;
mappings[75] = EntityType.Shulker;
mappings[76] = EntityType.ShulkerBullet;
mappings[77] = EntityType.Silverfish;
mappings[78] = EntityType.Skeleton;
mappings[79] = EntityType.SkeletonHorse;
mappings[80] = EntityType.Slime;
mappings[81] = EntityType.SmallFireball;
mappings[82] = EntityType.SnowGolem;
mappings[83] = EntityType.Snowball;
mappings[84] = EntityType.SpectralArrow;
mappings[85] = EntityType.Spider;
mappings[86] = EntityType.Squid;
mappings[87] = EntityType.Stray;
mappings[88] = EntityType.Strider;
mappings[89] = EntityType.Egg;
mappings[90] = EntityType.EnderPearl;
mappings[91] = EntityType.ExperienceBottle;
mappings[92] = EntityType.Potion;
mappings[93] = EntityType.Trident;
mappings[94] = EntityType.TraderLlama;
mappings[95] = EntityType.TropicalFish;
mappings[96] = EntityType.Turtle;
mappings[97] = EntityType.Vex;
mappings[98] = EntityType.Villager;
mappings[99] = EntityType.Vindicator;
mappings[100] = EntityType.WanderingTrader;
mappings[101] = EntityType.Witch;
mappings[102] = EntityType.Wither;
mappings[103] = EntityType.WitherSkeleton;
mappings[104] = EntityType.WitherSkull;
mappings[105] = EntityType.Wolf;
mappings[106] = EntityType.Zoglin;
mappings[107] = EntityType.Zombie;
mappings[108] = EntityType.ZombieHorse;
mappings[109] = EntityType.ZombieVillager;
mappings[110] = EntityType.ZombifiedPiglin;
mappings[111] = EntityType.Player;
mappings[112] = EntityType.FishingBobber;
}
protected override Dictionary<int, EntityType> GetDict()
{
return mappings;
}
}
}

View file

@ -17,59 +17,62 @@ namespace MinecraftClient.Mapping
AreaEffectCloud,
ArmorStand,
Arrow,
Axolotl,
Bat,
Bee,
Blaze,
Boat,
Cat,
CaveSpider,
ChestMinecart,
Chicken,
Cod,
CommandBlockMinecart,
Cow,
Creeper,
Dolphin,
Donkey,
DragonFireball,
Drowned,
Egg,
ElderGuardian,
EndCrystal,
EnderDragon,
Enderman,
Endermite,
EnderPearl,
Evoker,
EvokerFangs,
ExperienceBottle,
ExperienceOrb,
EyeOfEnder,
FallingBlock,
Fireball,
FireworkRocket,
FishingBobber,
Fox,
FurnaceMinecart,
Ghast,
Giant,
GlowItemFrame,
GlowSquid,
Goat,
Guardian,
Hoglin,
HopperMinecart,
Horse,
Husk,
Illusioner,
IronGolem,
Item,
ItemFrame,
Fireball,
LeashKnot,
LightningBolt,
Llama,
LlamaSpit,
MagmaCube,
Marker,
Minecart,
Mooshroom,
ChestMinecart,
CommandBlockMinecart,
FurnaceMinecart,
HopperMinecart,
SpawnerMinecart,
TntMinecart,
Mule,
Mooshroom,
Ocelot,
Painting,
Panda,
@ -79,9 +82,8 @@ namespace MinecraftClient.Mapping
Piglin,
PiglinBrute,
Pillager,
Player,
PolarBear,
Potion,
Tnt,
Pufferfish,
Rabbit,
Ravager,
@ -94,18 +96,19 @@ namespace MinecraftClient.Mapping
SkeletonHorse,
Slime,
SmallFireball,
Snowball,
SnowGolem,
SpawnerMinecart,
Snowball,
SpectralArrow,
Spider,
Squid,
Stray,
Strider,
Tnt,
TntMinecart,
TraderLlama,
Egg,
EnderPearl,
ExperienceBottle,
Potion,
Trident,
TraderLlama,
TropicalFish,
Turtle,
Vex,
@ -122,5 +125,7 @@ namespace MinecraftClient.Mapping
ZombieHorse,
ZombieVillager,
ZombifiedPiglin,
Player,
FishingBobber,
}
}

View file

@ -62,6 +62,7 @@ namespace MinecraftClient.Mapping
{
switch (e)
{
case EntityType.GlowItemFrame:
case EntityType.Item:
case EntityType.ItemFrame:
case EntityType.EyeOfEnder:

View file

@ -46,8 +46,11 @@
RedSand,
Gravel,
GoldOre,
DeepslateGoldOre,
IronOre,
DeepslateIronOre,
CoalOre,
DeepslateCoalOre,
NetherGoldOre,
OakLog,
SpruceLog,
@ -79,10 +82,13 @@
JungleLeaves,
AcaciaLeaves,
DarkOakLeaves,
AzaleaLeaves,
FloweringAzaleaLeaves,
Sponge,
WetSponge,
Glass,
LapisOre,
DeepslateLapisOre,
LapisBlock,
Dispenser,
Sandstone,
@ -164,6 +170,7 @@
Chest,
RedstoneWire,
DiamondOre,
DeepslateDiamondOre,
DiamondBlock,
CraftingTable,
Wheat,
@ -195,6 +202,7 @@
AcaciaPressurePlate,
DarkOakPressurePlate,
RedstoneOre,
DeepslateRedstoneOre,
RedstoneTorch,
RedstoneWallTorch,
StoneButton,
@ -264,6 +272,7 @@
PumpkinStem,
MelonStem,
Vine,
GlowLichen,
OakFenceGate,
BrickStairs,
StoneBrickStairs,
@ -276,6 +285,9 @@
EnchantingTable,
BrewingStand,
Cauldron,
WaterCauldron,
LavaCauldron,
PowderSnowCauldron,
EndPortal,
EndPortalFrame,
EndStone,
@ -284,6 +296,7 @@
Cocoa,
SandstoneStairs,
EmeraldOre,
DeepslateEmeraldOre,
EnderChest,
TripwireHook,
Tripwire,
@ -393,6 +406,7 @@
DarkOakStairs,
SlimeBlock,
Barrier,
Light,
IronTrapdoor,
Prismarine,
PrismarineBricks,
@ -777,5 +791,126 @@
ChiseledNetherBricks,
CrackedNetherBricks,
QuartzBricks,
Candle,
WhiteCandle,
OrangeCandle,
MagentaCandle,
LightBlueCandle,
YellowCandle,
LimeCandle,
PinkCandle,
GrayCandle,
LightGrayCandle,
CyanCandle,
PurpleCandle,
BlueCandle,
BrownCandle,
GreenCandle,
RedCandle,
BlackCandle,
CandleCake,
WhiteCandleCake,
OrangeCandleCake,
MagentaCandleCake,
LightBlueCandleCake,
YellowCandleCake,
LimeCandleCake,
PinkCandleCake,
GrayCandleCake,
LightGrayCandleCake,
CyanCandleCake,
PurpleCandleCake,
BlueCandleCake,
BrownCandleCake,
GreenCandleCake,
RedCandleCake,
BlackCandleCake,
AmethystBlock,
BuddingAmethyst,
AmethystCluster,
LargeAmethystBud,
MediumAmethystBud,
SmallAmethystBud,
Tuff,
Calcite,
TintedGlass,
PowderSnow,
SculkSensor,
OxidizedCopper,
WeatheredCopper,
ExposedCopper,
CopperBlock,
CopperOre,
DeepslateCopperOre,
OxidizedCutCopper,
WeatheredCutCopper,
ExposedCutCopper,
CutCopper,
OxidizedCutCopperStairs,
WeatheredCutCopperStairs,
ExposedCutCopperStairs,
CutCopperStairs,
OxidizedCutCopperSlab,
WeatheredCutCopperSlab,
ExposedCutCopperSlab,
CutCopperSlab,
WaxedCopperBlock,
WaxedWeatheredCopper,
WaxedExposedCopper,
WaxedOxidizedCopper,
WaxedOxidizedCutCopper,
WaxedWeatheredCutCopper,
WaxedExposedCutCopper,
WaxedCutCopper,
WaxedOxidizedCutCopperStairs,
WaxedWeatheredCutCopperStairs,
WaxedExposedCutCopperStairs,
WaxedCutCopperStairs,
WaxedOxidizedCutCopperSlab,
WaxedWeatheredCutCopperSlab,
WaxedExposedCutCopperSlab,
WaxedCutCopperSlab,
LightningRod,
PointedDripstone,
DripstoneBlock,
CaveVines,
CaveVinesPlant,
SporeBlossom,
Azalea,
FloweringAzalea,
MossCarpet,
MossBlock,
BigDripleaf,
BigDripleafStem,
SmallDripleaf,
HangingRoots,
RootedDirt,
Deepslate,
CobbledDeepslate,
CobbledDeepslateStairs,
CobbledDeepslateSlab,
CobbledDeepslateWall,
PolishedDeepslate,
PolishedDeepslateStairs,
PolishedDeepslateSlab,
PolishedDeepslateWall,
DeepslateTiles,
DeepslateTileStairs,
DeepslateTileSlab,
DeepslateTileWall,
DeepslateBricks,
DeepslateBrickStairs,
DeepslateBrickSlab,
DeepslateBrickWall,
ChiseledDeepslate,
CrackedDeepslateBricks,
CrackedDeepslateTiles,
InfestedDeepslate,
SmoothBasalt,
RawIronBlock,
RawCopperBlock,
RawGoldBlock,
PottedAzaleaBush,
PottedFloweringAzaleaBush,
}
}

View file

@ -43,8 +43,13 @@ namespace MinecraftClient.Mapping
Material.BrownShulkerBox,
Material.BrownTerracotta,
Material.Cauldron,
Material.WaterCauldron,
Material.LavaCauldron,
Material.PowderSnowCauldron,
Material.Chain,
Material.Calcite,
Material.ChippedAnvil,
Material.ChiseledDeepslate,
Material.ChiseledNetherBricks,
Material.ChiseledPolishedBlackstone,
Material.ChiseledQuartzBlock,
@ -53,11 +58,17 @@ namespace MinecraftClient.Mapping
Material.ChiseledStoneBricks,
Material.CoalBlock,
Material.CoalOre,
Material.CobbledDeepslateSlab,
Material.CobbledDeepslateStairs,
Material.CobbledDeepslateWall,
Material.CobbledDeepslate,
Material.Cobblestone,
Material.CobblestoneSlab,
Material.CobblestoneStairs,
Material.CobblestoneWall,
Material.Conduit,
Material.CrackedDeepslateBricks,
Material.CrackedDeepslateTiles,
Material.CrackedNetherBricks,
Material.CrackedPolishedBlackstoneBricks,
Material.CrackedStoneBricks,
@ -74,11 +85,22 @@ namespace MinecraftClient.Mapping
Material.DarkPrismarine,
Material.DarkPrismarineSlab,
Material.DarkPrismarineStairs,
Material.Deepslate,
Material.DeepslateBrickSlab,
Material.DeepslateBrickStairs,
Material.DeepslateBricks,
Material.DeepslateBrickWall,
Material.DeepslateCoalOre,
Material.DeepslateTileSlab,
Material.DeepslateTileStairs,
Material.DeepslateTiles,
Material.DeepslateTileWall,
Material.DetectorRail,
Material.Diorite,
Material.DioriteSlab,
Material.DioriteStairs,
Material.DioriteWall,
Material.DripstoneBlock,
Material.Dispenser,
Material.Dropper,
Material.EnchantingTable,
@ -160,6 +182,7 @@ namespace MinecraftClient.Mapping
Material.PinkShulkerBox,
Material.PinkTerracotta,
Material.Piston,
Material.PointedDripstone,
Material.PolishedAndesite,
Material.PolishedAndesiteSlab,
Material.PolishedAndesiteStairs,
@ -221,6 +244,7 @@ namespace MinecraftClient.Mapping
Material.SandstoneWall,
Material.ShulkerBox,
Material.Smoker,
Material.SmoothBasalt,
Material.SmoothQuartz,
Material.SmoothQuartzSlab,
Material.SmoothQuartzStairs,
@ -245,6 +269,7 @@ namespace MinecraftClient.Mapping
Material.StoneStairs,
Material.Stonecutter,
Material.Terracotta,
Material.Tuff,
Material.WarpedNylium,
Material.WhiteConcrete,
Material.WhiteGlazedTerracotta,
@ -253,26 +278,70 @@ namespace MinecraftClient.Mapping
Material.YellowConcrete,
Material.YellowGlazedTerracotta,
Material.YellowShulkerBox,
Material.YellowTerracotta
Material.YellowTerracotta,
};
// Minable by Stone, iron, diamond, netherite.
private static readonly List<Material> pickaxeTier1 = new List<Material>()
{
Material.CopperOre,
Material.CopperBlock,
Material.CutCopperSlab,
Material.CutCopperStairs,
Material.CutCopper,
Material.DeepslateCopperOre,
Material.DeepslateIronOre,
Material.DeepslateLapisOre,
Material.ExposedCopper,
Material.ExposedCutCopperSlab,
Material.ExposedCutCopperStairs,
Material.ExposedCutCopper,
Material.IronBlock,
Material.IronOre,
Material.LapisBlock,
Material.LapisOre,
Material.LightningRod,
Material.OxidizedCopper,
Material.OxidizedCutCopperSlab,
Material.OxidizedCutCopperStairs,
Material.OxidizedCutCopper,
Material.RawCopperBlock,
Material.RawIronBlock,
Material.Terracotta,
Material.WaxedCopperBlock,
Material.WaxedCutCopperSlab,
Material.WaxedCutCopperStairs,
Material.WaxedCutCopper,
Material.WaxedExposedCopper,
Material.WaxedExposedCutCopperSlab,
Material.WaxedExposedCutCopperStairs,
Material.WaxedExposedCutCopper,
Material.WaxedOxidizedCopper,
Material.WaxedOxidizedCutCopperSlab,
Material.WaxedOxidizedCutCopperStairs,
Material.WaxedOxidizedCutCopper,
Material.WaxedWeatheredCopper,
Material.WaxedWeatheredCutCopperSlab,
Material.WaxedWeatheredCutCopperStairs,
Material.WaxedWeatheredCutCopper,
Material.WeatheredCopper,
Material.WeatheredCutCopperSlab,
Material.WeatheredCutCopperStairs,
Material.WeatheredCutCopper,
};
// Minable by Iron, diamond, netherite.
private static readonly List<Material> pickaxeTier2 = new List<Material>()
{
Material.DeepslateDiamondOre,
Material.DeepslateEmeraldOre,
Material.DeepslateGoldOre,
Material.DeepslateRedstoneOre,
Material.DiamondBlock,
Material.DiamondOre,
Material.EmeraldBlock,
Material.EmeraldOre,
Material.GoldBlock,
Material.GoldOre,
Material.RawGoldBlock,
Material.RedstoneOre,
};
// Minable by Diamond, Netherite.
@ -314,13 +383,14 @@ namespace MinecraftClient.Mapping
Material.PurpleConcretePowder,
Material.RedConcretePowder,
Material.RedSand,
Material.RootedDirt,
Material.Sand,
Material.Snow,
Material.SnowBlock,
Material.SoulSand,
Material.SoulSoil,
Material.WhiteConcretePowder,
Material.YellowConcretePowder
Material.YellowConcretePowder,
};
// Every axe can mine every block (speed difference).
private static readonly List<Material> axe = new List<Material>()
@ -341,6 +411,7 @@ namespace MinecraftClient.Mapping
Material.Barrel,
Material.BeeNest,
Material.Beehive,
Material.BigDripleaf,
Material.BirchButton,
Material.BirchDoor,
Material.BirchFence,
@ -504,12 +575,13 @@ namespace MinecraftClient.Mapping
Material.WhiteBanner,
Material.WhiteWallBanner,
Material.YellowBanner,
Material.YellowWallBanner
Material.YellowWallBanner,
};
// Every block a shear can mine.
private static readonly List<Material> shears = new List<Material>()
{
Material.AcaciaLeaves,
Material.AzaleaLeaves,
Material.BirchLeaves,
Material.BlackWool,
Material.BlueWool,
@ -517,6 +589,7 @@ namespace MinecraftClient.Mapping
Material.Cobweb,
Material.CyanWool,
Material.DarkOakLeaves,
Material.FloweringAzaleaLeaves,
Material.GrayWool,
Material.GreenWool,
Material.JungleLeaves,
@ -539,6 +612,7 @@ namespace MinecraftClient.Mapping
Material.Bamboo,
Material.Cobweb,
Material.InfestedChiseledStoneBricks,
Material.InfestedDeepslate,
Material.InfestedCobblestone,
Material.InfestedCrackedStoneBricks,
Material.InfestedMossyStoneBricks,
@ -553,8 +627,10 @@ namespace MinecraftClient.Mapping
Material.DarkOakLeaves,
Material.HayBlock,
Material.JungleLeaves,
Material.MossBlock,
Material.NetherWartBlock,
Material.OakLeaves,
Material.SculkSensor,
Material.Shroomlight,
Material.Sponge,
Material.SpruceLeaves,

View file

@ -74,6 +74,8 @@ namespace MinecraftClient.Mapping
case Material.JungleLeaves:
case Material.AcaciaLeaves:
case Material.DarkOakLeaves:
case Material.AzaleaLeaves:
case Material.FloweringAzaleaLeaves:
case Material.Sponge:
case Material.WetSponge:
case Material.Glass:
@ -202,6 +204,9 @@ namespace MinecraftClient.Mapping
case Material.EnchantingTable:
case Material.BrewingStand:
case Material.Cauldron:
case Material.WaterCauldron:
case Material.LavaCauldron:
case Material.PowderSnowCauldron:
case Material.EndPortalFrame:
case Material.EndStone:
case Material.DragonEgg:
@ -518,6 +523,119 @@ namespace MinecraftClient.Mapping
case Material.Beehive:
case Material.HoneyBlock:
case Material.HoneycombBlock:
case Material.Candle:
case Material.WhiteCandle:
case Material.OrangeCandle:
case Material.MagentaCandle:
case Material.LightBlueCandle:
case Material.YellowCandle:
case Material.LimeCandle:
case Material.PinkCandle:
case Material.GrayCandle:
case Material.LightGrayCandle:
case Material.CyanCandle:
case Material.PurpleCandle:
case Material.BlueCandle:
case Material.BrownCandle:
case Material.GreenCandle:
case Material.RedCandle:
case Material.BlackCandle:
case Material.CandleCake:
case Material.WhiteCandleCake:
case Material.OrangeCandleCake:
case Material.MagentaCandleCake:
case Material.LightBlueCandleCake:
case Material.YellowCandleCake:
case Material.LimeCandleCake:
case Material.PinkCandleCake:
case Material.GrayCandleCake:
case Material.LightGrayCandleCake:
case Material.CyanCandleCake:
case Material.PurpleCandleCake:
case Material.BlueCandleCake:
case Material.BrownCandleCake:
case Material.GreenCandleCake:
case Material.RedCandleCake:
case Material.BlackCandleCake:
case Material.AmethystBlock:
case Material.BuddingAmethyst:
case Material.AmethystCluster:
case Material.LargeAmethystBud:
case Material.MediumAmethystBud:
case Material.SmallAmethystBud:
case Material.Tuff:
case Material.Calcite:
case Material.TintedGlass:
case Material.SculkSensor:
case Material.OxidizedCopper:
case Material.WeatheredCopper:
case Material.ExposedCopper:
case Material.CopperBlock:
case Material.CopperOre:
case Material.DeepslateCopperOre:
case Material.OxidizedCutCopper:
case Material.WeatheredCutCopper:
case Material.ExposedCutCopper:
case Material.CutCopper:
case Material.OxidizedCutCopperStairs:
case Material.WeatheredCutCopperStairs:
case Material.ExposedCutCopperStairs:
case Material.CutCopperStairs:
case Material.OxidizedCutCopperSlab:
case Material.WeatheredCutCopperSlab:
case Material.ExposedCutCopperSlab:
case Material.CutCopperSlab:
case Material.WaxedCopperBlock:
case Material.WaxedWeatheredCopper:
case Material.WaxedExposedCopper:
case Material.WaxedOxidizedCopper:
case Material.WaxedOxidizedCutCopper:
case Material.WaxedWeatheredCutCopper:
case Material.WaxedExposedCutCopper:
case Material.WaxedCutCopper:
case Material.WaxedOxidizedCutCopperStairs:
case Material.WaxedWeatheredCutCopperStairs:
case Material.WaxedExposedCutCopperStairs:
case Material.WaxedCutCopperStairs:
case Material.WaxedOxidizedCutCopperSlab:
case Material.WaxedWeatheredCutCopperSlab:
case Material.WaxedExposedCutCopperSlab:
case Material.WaxedCutCopperSlab:
case Material.LightningRod:
case Material.PointedDripstone:
case Material.DripstoneBlock:
case Material.Azalea:
case Material.FloweringAzalea:
case Material.MossCarpet:
case Material.MossBlock:
case Material.RootedDirt:
case Material.Deepslate:
case Material.CobbledDeepslate:
case Material.CobbledDeepslateStairs:
case Material.CobbledDeepslateSlab:
case Material.CobbledDeepslateWall:
case Material.PolishedDeepslate:
case Material.PolishedDeepslateStairs:
case Material.PolishedDeepslateSlab:
case Material.PolishedDeepslateWall:
case Material.DeepslateTiles:
case Material.DeepslateTileStairs:
case Material.DeepslateTileSlab:
case Material.DeepslateTileWall:
case Material.DeepslateBricks:
case Material.DeepslateBrickStairs:
case Material.DeepslateBrickSlab:
case Material.DeepslateBrickWall:
case Material.ChiseledDeepslate:
case Material.CrackedDeepslateBricks:
case Material.CrackedDeepslateTiles:
case Material.InfestedDeepslate:
case Material.SmoothBasalt:
case Material.RawIronBlock:
case Material.RawCopperBlock:
case Material.RawGoldBlock:
case Material.PottedAzaleaBush:
case Material.PottedFloweringAzaleaBush:
return true;
default:
return false;
@ -538,6 +656,7 @@ namespace MinecraftClient.Mapping
case Material.Lava:
case Material.MagmaBlock:
case Material.Campfire:
case Material.PowderSnow:
return true;
default:
return false;