summaryrefslogtreecommitdiffstats
path: root/src/BlockID.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/BlockID.h')
-rw-r--r--src/BlockID.h290
1 files changed, 220 insertions, 70 deletions
diff --git a/src/BlockID.h b/src/BlockID.h
index 45e71d85d..24de2dc8a 100644
--- a/src/BlockID.h
+++ b/src/BlockID.h
@@ -1,7 +1,13 @@
#pragma once
+// The following hackery is to allow typed C++ enum for C++ code, yet have ToLua process the values.
+// ToLua doesn't understand typed enums, so we use preprocessor to hide it from ToLua.
+
+enum ENUM_BLOCK_ID : BLOCKTYPE
+#if 0
+enum ENUM_BLOCK_ID // tolua_export
+#endif
// tolua_begin
-enum ENUM_BLOCK_ID
{
E_BLOCK_AIR = 0,
E_BLOCK_STONE = 1,
@@ -186,6 +192,9 @@ enum ENUM_BLOCK_ID
E_BLOCK_BLOCK_OF_COAL = 173,
E_BLOCK_PACKED_ICE = 174,
E_BLOCK_BIG_FLOWER = 175,
+ E_BLOCK_STANDING_BANNER = 176,
+ E_BLOCK_WALL_BANNER = 177,
+ E_BLOCK_INVERTED_DAYLIGHT_SENSOR = 178,
E_BLOCK_RED_SANDSTONE = 179,
E_BLOCK_RED_SANDSTONE_STAIRS = 180,
E_BLOCK_DOUBLE_NEW_STONE_SLAB= 181,
@@ -218,6 +227,10 @@ enum ENUM_BLOCK_ID
};
// tolua_end
+
+
+
+
// tolua_begin
enum ENUM_ITEM_ID
{
@@ -442,7 +455,22 @@ enum
////////////////////////////////////////////////////////////////////////////////
// Block metas:
- // E_BLOCK_BIG_FLOWER metas
+ // E_BLOCK_ANVIL metas
+ E_BLOCK_ANVIL_Z = 0,
+ E_BLOCK_ANVIL_X = 1,
+ E_BLOCK_ANVIL_NO_DAMAGE = 0,
+ E_BLOCK_ANVIL_LOW_DAMAGE = 4,
+ E_BLOCK_ANVIL_HIGH_DAMAGE = 8,
+
+ // E_BLOCK_BED metas:
+ E_BLOCK_BED_ZP = 0,
+ E_BLOCK_BED_XM = 1,
+ E_BLOCK_BED_ZM = 2,
+ E_BLOCK_BED_XP = 3,
+ E_BLOCK_BED_OCCUPIED = 4,
+ E_BLOCK_BED_BED_HEAD = 8,
+
+ // E_BLOCK_BIG_FLOWER metas:
E_META_BIG_FLOWER_SUNFLOWER = 0,
E_META_BIG_FLOWER_LILAC = 1,
E_META_BIG_FLOWER_DOUBLE_TALL_GRASS = 2,
@@ -450,6 +478,20 @@ enum
E_META_BIG_FLOWER_ROSE_BUSH = 4,
E_META_BIG_FLOWER_PEONY = 5,
+ // E_BLOCK_BREWING_STAND metas
+ E_META_BREWING_STAND_FILLED_SLOT_XP = 1,
+ E_META_BREWING_STAND_FILLED_SLOT_XM_ZP = 2,
+ E_META_BREWING_STAND_FILLED_SLOT_XM_ZM = 4,
+
+ // E_BLOCK_BUTTON metas
+ E_BLOCK_BUTTON_YM = 0,
+ E_BLOCK_BUTTON_XP = 1,
+ E_BLOCK_BUTTON_XM = 2,
+ E_BLOCK_BUTTON_ZP = 3,
+ E_BLOCK_BUTTON_ZM = 4,
+ E_BLOCK_BUTTON_YP = 5,
+ E_BLOCK_BUTTON_PRESSED = 8,
+
// E_BLOCK_CARPET metas:
E_META_CARPET_WHITE = 0,
E_META_CARPET_ORANGE = 1,
@@ -477,6 +519,7 @@ enum
// E_BLOCK_DIRT metas:
E_META_DIRT_NORMAL = 0,
E_META_DIRT_GRASSLESS = 1,
+ E_META_DIRT_COARSE = 1,
E_META_DIRT_PODZOL = 2,
// E_BLOCK_DISPENSER / E_BLOCK_DROPPER metas:
@@ -488,16 +531,19 @@ enum
E_META_DROPSPENSER_FACING_XP = 5,
// E_BLOCK_DOUBLE_STONE_SLAB metas:
- E_META_DOUBLE_STONE_SLAB_STONE = 0,
- E_META_DOUBLE_STONE_SLAB_SANDSTONE = 1,
- E_META_DOUBLE_STONE_SLAB_WOODEN = 2,
- E_META_DOUBLE_STONE_SLAB_COBBLESTONE = 3,
- E_META_DOUBLE_STONE_SLAB_BRICK = 4,
- E_META_DOUBLE_STONE_SLAB_STONE_BRICK = 5,
- E_META_DOUBLE_STONE_SLAB_NETHER_BRICK = 6,
- E_META_DOUBLE_STONE_SLAB_STONE_SECRET = 7,
-
- // E_BLOCK_FLOWER metas
+ E_META_DOUBLE_STONE_SLAB_STONE = 0,
+ E_META_DOUBLE_STONE_SLAB_SANDSTON = 1,
+ E_META_DOUBLE_STONE_SLAB_WOODEN = 2,
+ E_META_DOUBLE_STONE_SLAB_COBBLESTONE = 3,
+ E_META_DOUBLE_STONE_SLAB_BRICK = 4,
+ E_META_DOUBLE_STONE_SLAB_STONE_BRICK = 5,
+ E_META_DOUBLE_STONE_SLAB_NETHER_BRICK = 6,
+ E_META_DOUBLE_STONE_SLAB_QUARTZ = 7,
+ E_META_DOUBLE_STONE_SLAB_SMOOTH_STONE = 8,
+ E_META_DOUBLE_STONE_SLAB_SMOOTH_SANDSTONE = 9,
+ E_META_DOUBLE_STONE_SLAB_TILE_QUARTZ = 10,
+
+ // E_BLOCK_FLOWER metas:
E_META_FLOWER_POPPY = 0,
E_META_FLOWER_BLUE_ORCHID = 1,
E_META_FLOWER_ALLIUM = 2,
@@ -507,9 +553,9 @@ enum
E_META_FLOWER_PINK_TULIP = 7,
E_META_FLOWER_OXEYE_DAISY = 8,
- // E_BLOCK_JUKEBOX metas
- E_META_JUKEBOX_OFF = 0,
- E_META_JUKEBOX_ON = 1,
+ // E_BLOCK_JUKEBOX metas:
+ E_META_JUKEBOX_OFF = 0,
+ E_META_JUKEBOX_ON = 1,
// E_BLOCK_HOPPER metas:
E_META_HOPPER_FACING_YM = 0,
@@ -520,10 +566,26 @@ enum
E_META_HOPPER_FACING_XP = 5,
// E_BLOCK_LEAVES metas:
- E_META_LEAVES_APPLE = 0,
- E_META_LEAVES_CONIFER = 1,
- E_META_LEAVES_BIRCH = 2,
- E_META_LEAVES_JUNGLE = 3,
+ E_META_LEAVES_APPLE = 0,
+ E_META_LEAVES_CONIFER = 1,
+ E_META_LEAVES_BIRCH = 2,
+ E_META_LEAVES_JUNGLE = 3,
+ E_META_LEAVES_APPLE_NO_DECAY = 4,
+ E_META_LEAVES_CONIFER_NO_DECAY = 5,
+ E_META_LEAVES_BIRCH_NO_DECAY = 6,
+ E_META_LEAVES_JUNGLE_NO_DECAY = 7,
+ E_META_LEAVES_APPLE_CHECK_DECAY = 8,
+ E_META_LEAVES_CONIFER_CHECK_DECAY = 9,
+ E_META_LEAVES_BIRCH_CHECK_DECAY = 10,
+ E_META_LEAVES_JUNGLE_CHECK_DECAY = 11,
+
+ // E_BLOCK_LEAVES meta cont. (Block ID 161):
+ E_META_NEWLEAVES_ACACIA = 0,
+ E_META_NEWLEAVES_DARK_OAK = 1,
+ E_META_NEWLEAVES_ACACIA_NO_DECAY = 4,
+ E_META_NEWLEAVES_DARK_OAK_NO_DECAY = 5,
+ E_META_NEWLEAVES_ACACIA_CHECK_DECAY = 8,
+ E_META_NEWLEAVES_DARK_OAK_CHECK_DECAY = 9,
// E_BLOCK_LOG metas:
E_META_LOG_APPLE = 0,
@@ -531,40 +593,62 @@ enum
E_META_LOG_BIRCH = 2,
E_META_LOG_JUNGLE = 3,
- // E_BLOCK_NEW_LEAVES metas
+ // E_BLOCK_NEW_LEAVES metas:
E_META_NEW_LEAVES_ACACIA_WOOD = 0,
E_META_NEW_LEAVES_DARK_OAK_WOOD = 1,
- // E_BLOCK_NEW_LOG metas
- E_META_NEW_LOG_ACACIA_WOOD = 0,
- E_META_NEW_LOG_DARK_OAK_WOOD = 1,
+ // E_BLOCK_NEW_LOG metas:
+ E_META_NEW_LOG_ACACIA_WOOD = 0,
+ E_META_NEW_LOG_DARK_OAK_WOOD = 1,
+ // E_BLOCK_PISTON metas:
+ E_META_PISTON_DOWN = 0,
+ E_META_PISTON_U = 1,
+ E_META_PISTON_ZM = 2,
+ E_META_PISTON_ZP = 3,
+ E_META_PISTON_XM = 4,
+ E_META_PISTON_XP = 5,
+ E_META_PISTON_HEAD_STICKY = 8,
+ E_META_PISTON_EXTENDED = 8,
+
// E_BLOCK_PLANKS metas:
- E_META_PLANKS_APPLE = 0,
- E_META_PLANKS_CONIFER = 1,
- E_META_PLANKS_BIRCH = 2,
- E_META_PLANKS_JUNGLE = 3,
+ E_META_PLANKS_APPLE = 0,
+ E_META_PLANKS_CONIFER = 1,
+ E_META_PLANKS_BIRCH = 2,
+ E_META_PLANKS_JUNGLE = 3,
+ E_META_PLANKS_ACACIA = 4,
+ E_META_PLANKS_DARK_OAK = 5,
// E_BLOCK_(XXX_WEIGHTED)_PRESSURE_PLATE metas:
- E_META_PRESSURE_PLATE_RAISED = 0,
+ E_META_PRESSURE_PLATE_RAISED = 0,
E_META_PRESSURE_PLATE_DEPRESSED = 1,
+ // E_BLOCK_PRISMARINE_BLOCK metas:
+ E_META_PRISMARINE_BLOCK_ROUGH = 0,
+ E_META_PRISMARINE_BLOCK_BRICKS = 1,
+ E_META_PRISMARINE_BLOCK_DARK = 2,
+
// E_BLOCK_QUARTZ_BLOCK metas:
- E_META_QUARTZ_NORMAL = 0,
+ E_META_QUARTZ_NORMAL = 0,
E_META_QUARTZ_CHISELLED = 1,
- E_META_QUARTZ_PILLAR = 2,
+ E_META_QUARTZ_PILLAR = 2,
// E_BLOCK_RAIL metas
- E_META_RAIL_ZM_ZP = 0,
- E_META_RAIL_XM_XP = 1,
- E_META_RAIL_ASCEND_XP = 2,
- E_META_RAIL_ASCEND_XM = 3,
- E_META_RAIL_ASCEND_ZM = 4,
- E_META_RAIL_ASCEND_ZP = 5,
- E_META_RAIL_CURVED_ZP_XP = 6,
- E_META_RAIL_CURVED_ZP_XM = 7,
- E_META_RAIL_CURVED_ZM_XM = 8,
- E_META_RAIL_CURVED_ZM_XP = 9,
+ E_META_RAIL_ZM_ZP = 0,
+ E_META_RAIL_XM_XP = 1,
+ E_META_RAIL_ASCEND_XP = 2,
+ E_META_RAIL_ASCEND_XM = 3,
+ E_META_RAIL_ASCEND_ZM = 4,
+ E_META_RAIL_ASCEND_ZP = 5,
+ E_META_RAIL_CURVED_ZP_XP = 6,
+ E_META_RAIL_CURVED_ZP_XM = 7,
+ E_META_RAIL_CURVED_ZM_XM = 8,
+ E_META_RAIL_CURVED_ZM_XP = 9,
+
+ // E_BLOCK_RED_SANDSTONE metas:
+ E_META_RED_SANDSTONE_NORMAL = 0,
+ E_META_RED_SANDSTONE_ORNAMENT = 1,
+ E_META_RED_SANDSTONE_SMOOTH = 2,
// E_BLOCK_SAND metas:
E_META_SAND_NORMAL = 0,
@@ -598,7 +682,7 @@ enum
E_META_SNOW_LAYER_SEVEN = 6,
E_META_SNOW_LAYER_EIGHT = 7,
- // E_BLOCK_STAINED_CLAY metas
+ // E_BLOCK_STAINED_CLAY metas:
E_META_STAINED_CLAY_WHITE = 0,
E_META_STAINED_CLAY_ORANGE = 1,
E_META_STAINED_CLAY_MAGENTA = 2,
@@ -616,7 +700,7 @@ enum
E_META_STAINED_CLAY_RED = 14,
E_META_STAINED_CLAY_BLACK = 15,
- // E_BLOCK_STAINED_GLASS metas
+ // E_BLOCK_STAINED_GLASS metas:
E_META_STAINED_GLASS_WHITE = 0,
E_META_STAINED_GLASS_ORANGE = 1,
E_META_STAINED_GLASS_MAGENTA = 2,
@@ -634,7 +718,7 @@ enum
E_META_STAINED_GLASS_RED = 14,
E_META_STAINED_GLASS_BLACK = 15,
- // E_BLOCK_STAINED_GLASS_PANE metas
+ // E_BLOCK_STAINED_GLASS_PANE metas:
E_META_STAINED_GLASS_PANE_WHITE = 0,
E_META_STAINED_GLASS_PANE_ORANGE = 1,
E_META_STAINED_GLASS_PANE_MAGENTA = 2,
@@ -652,6 +736,22 @@ enum
E_META_STAINED_GLASS_PANE_RED = 14,
E_META_STAINED_GLASS_PANE_BLACK = 15,
+ // E_BLOCK_STAIRS metas:
+ E_BLOCK_STAIRS_XP = 0,
+ E_BLOCK_STAIRS_XM = 1,
+ E_BLOCK_STAIRS_ZP = 2,
+ E_BLOCK_STAIRS_ZM = 3,
+ E_BLOCK_STAIRS_UPSIDE_DOWN = 4,
+
+ // E_BLOCK_STONE metas:
+ E_META_STONE_STONE = 0,
+ E_META_STONE_GRANITE = 1,
+ E_META_STONE_POLISHED_GRANITE = 2,
+ E_META_STONE_DIORITE = 3,
+ E_META_STONE_POLISHED_DIORITE = 4,
+ E_META_STONE_ANDESITE = 5,
+ E_META_STONE_POLISHED_ANDESITE = 6,
+
// E_BLOCK_STONE_SLAB metas:
E_META_STONE_SLAB_STONE = 0,
E_META_STONE_SLAB_SANDSTONE = 1,
@@ -660,18 +760,19 @@ enum
E_META_STONE_SLAB_BRICK = 4,
E_META_STONE_SLAB_STONE_BRICK = 5,
E_META_STONE_SLAB_NETHER_BRICK = 6,
- E_META_STONE_SLAB_STONE_SECRET = 7,
+ E_META_STONE_SLAB_QUARTZ = 7,
// E_BLOCK_STONE_BRICKS metas:
- E_META_STONE_BRICK_NORMAL = 0,
- E_META_STONE_BRICK_MOSSY = 1,
- E_META_STONE_BRICK_CRACKED = 2,
- E_META_STONE_BRICK_ORNAMENT = 3,
+ E_META_STONE_BRICK_NORMAL = 0,
+ E_META_STONE_BRICK_MOSSY = 1,
+ E_META_STONE_BRICK_CRACKED = 2,
+ E_META_STONE_BRICK_ORNAMENT = 3,
// E_BLOCK_TALL_GRASS metas:
E_META_TALL_GRASS_DEAD_SHRUB = 0,
E_META_TALL_GRASS_GRASS = 1,
E_META_TALL_GRASS_FERN = 2,
+ E_META_TALL_GRASS_BIOME = 3,
// E_BLOCK_TORCH, E_BLOCK_REDSTONE_TORCH_OFF, E_BLOCK_REDSTONE_TORCH_ON metas:
E_META_TORCH_EAST = 1, // east face of the block, pointing east
@@ -679,26 +780,55 @@ enum
E_META_TORCH_SOUTH = 3,
E_META_TORCH_NORTH = 4,
E_META_TORCH_FLOOR = 5,
- E_META_TORCH_XM = 1, // Torch attached to the XM side of its block
- E_META_TORCH_XP = 2, // Torch attached to the XP side of its block
- E_META_TORCH_ZM = 3, // Torch attached to the ZM side of its block
- E_META_TORCH_ZP = 4, // Torch attached to the ZP side of its block
-
+ E_META_TORCH_XM = 1, // Torch attached to the XM side of its block
+ E_META_TORCH_XP = 2, // Torch attached to the XP side of its block
+ E_META_TORCH_ZM = 3, // Torch attached to the ZM side of its block
+ E_META_TORCH_ZP = 4, // Torch attached to the ZP side of its block
+
+ // E_META_LOG metas:
+ E_META_LOG_OAK_UP_DOWN = 0,
+ E_META_LOG_SPRUCE_UP_DOWN = 1,
+ E_META_LOG_BIRCH_UP_DOWN = 2,
+ E_META_LOG_JUNGLE_UP_DOWN = 3,
+ E_META_LOG_OAK_X = 4,
+ E_META_LOG_SPRUCE_X = 5,
+ E_META_LOG_BIRCH_X = 6,
+ E_META_LOG_JUNGLE_X = 7,
+ E_META_LOG_OAK_Z = 8,
+ E_META_LOG_SPRUCE_Z = 9,
+ E_META_LOG_BIRCH_Z = 10,
+ E_META_LOG_JUNGLE_Z = 11,
+ E_META_LOG_OAK_BARK_ONLY = 12,
+ E_META_LOG_SPRUCE_BARK_ONLY = 13,
+ E_META_LOG_BIRCH_BARK_ONLY = 14,
+ E_META_LOG_JUNGLE_BARK_ONLY = 15,
+
+ // E_META_LOG metas cont. (Block ID 162):
+ E_META_NEWLOG_ACACIA_UP_DOWN = 0,
+ E_META_NEWLOG_DARK_OAK_UP_DOWN = 1,
+ E_META_NEWLOG_ACACIA_X = 4,
+ E_META_NEWLOG_DARK_OAK_X = 5,
+ E_META_NEWLOG_ACACIA_Z = 8,
+ E_META_NEWLOG_DARK_OAK_Z = 9,
+ E_META_NEWLOG_ACACIA_BARK_ONLY = 12,
+ E_META_NEWLOG_DARK_OAK_BARK_ONLY = 13,
+
// E_BLOCK_WOODEN_DOUBLE_SLAB metas:
- E_META_WOODEN_DOUBLE_SLAB_APPLE = 0,
- E_META_WOODEN_DOUBLE_SLAB_CONIFER = 1,
- E_META_WOODEN_DOUBLE_SLAB_BIRCH = 2,
- E_META_WOODEN_DOUBLE_SLAB_JUNGLE = 3,
- E_META_WOODEN_DOUBLE_SLAB_ACACIA = 4,
- E_META_WOODEN_DOUBLE_SLAB_DARK_OAK = 5,
+ E_META_WOODEN_DOUBLE_SLAB_APPLE = 0,
+ E_META_WOODEN_DOUBLE_SLAB_CONIFER = 1,
+ E_META_WOODEN_DOUBLE_SLAB_BIRCH = 2,
+ E_META_WOODEN_DOUBLE_SLAB_JUNGLE = 3,
+ E_META_WOODEN_DOUBLE_SLAB_ACACIA = 4,
+ E_META_WOODEN_DOUBLE_SLAB_DARK_OAK = 5,
// E_BLOCK_WOODEN_SLAB metas:
- E_META_WOODEN_SLAB_APPLE = 0,
- E_META_WOODEN_SLAB_CONIFER = 1,
- E_META_WOODEN_SLAB_BIRCH = 2,
- E_META_WOODEN_SLAB_JUNGLE = 3,
- E_META_WOODEN_SLAB_ACACIA = 4,
- E_META_WOODEN_SLAB_DARK_OAK = 5,
+ E_META_WOODEN_SLAB_APPLE = 0,
+ E_META_WOODEN_SLAB_CONIFER = 1,
+ E_META_WOODEN_SLAB_BIRCH = 2,
+ E_META_WOODEN_SLAB_JUNGLE = 3,
+ E_META_WOODEN_SLAB_ACACIA = 4,
+ E_META_WOODEN_SLAB_DARK_OAK = 5,
+ E_META_WOODEN_SLAB_UPSIDE_DOWN = 8,
// E_BLOCK_WOOL metas:
E_META_WOOL_WHITE = 0,
@@ -721,6 +851,24 @@ enum
////////////////////////////////////////////////////////////////////////////////
// Item metas:
+ // E_ITEM_BANNER metas:
+ E_META_BANNER_BLACK = 0,
+ E_META_BANNER_RED = 1,
+ E_META_BANNER_GREEN = 2,
+ E_META_BANNER_BROWN = 3,
+ E_META_BANNER_BLUE = 4,
+ E_META_BANNER_PURPLE = 5,
+ E_META_BANNER_CYAN = 6,
+ E_META_BANNER_LIGHTGRAY = 7,
+ E_META_BANNER_GRAY = 8,
+ E_META_BANNER_PINK = 9,
+ E_META_BANNER_LIGHTGREEN = 10,
+ E_META_BANNER_YELLOW = 11,
+ E_META_BANNER_LIGHTBLUE = 12,
+ E_META_BANNER_MAGENTA = 13,
+ E_META_BANNER_ORANGE = 14,
+ E_META_BANNER_WHITE = 15,
+
// E_ITEM_COAL metas:
E_META_COAL_NORMAL = 0,
E_META_COAL_CHARCOAL = 1,
@@ -747,6 +895,13 @@ enum
E_META_GOLDEN_APPLE_NORMAL = 0,
E_META_GOLDEN_APPLE_ENCHANTED = 1,
+ // E_ITEM_HEAD metas:
+ E_META_HEAD_SKELETON = 0,
+ E_META_HEAD_WITHER = 1,
+ E_META_HEAD_ZOMBIE = 2,
+ E_META_HEAD_PLAYER = 3,
+ E_META_HEAD_CREEPER = 4,
+
// E_ITEM_RAW_FISH metas:
E_META_RAW_FISH_FISH = 0,
E_META_RAW_FISH_SALMON = 1,
@@ -756,8 +911,6 @@ enum
// E_ITEM_COOKED_FISH metas:
E_META_COOKED_FISH_FISH = 0,
E_META_COOKED_FISH_SALMON = 1,
- E_META_COOKED_FISH_CLOWNFISH = 2,
- E_META_COOKED_FISH_PUFFERFISH = 3,
// E_ITEM_MINECART_TRACKS metas:
E_META_TRACKS_X = 1,
@@ -957,9 +1110,6 @@ extern AString ItemTypeToString(short a_ItemType);
/// Translates a full item into a fully-specified string (including meta and count). If the ItemType is not recognized, the ItemType number is output into the string.
extern AString ItemToFullString(const cItem & a_Item);
-/// Translates a mob string ("ocelot") to mobtype (E_ENTITY_TYPE_OCELOT)
-extern int StringToMobType(const AString & a_MobString);
-
/// Translates a dimension string to dimension enum. Takes either a number or a dimension alias (built-in). Returns dimOverworld on failure
extern eDimension StringToDimension(const AString & a_DimensionString);