From 7fd3899796fbea45c5ff0a9bd45ce0a1feb73c2b Mon Sep 17 00:00:00 2001 From: Bond-009 Date: Fri, 30 Jun 2017 10:46:58 +0200 Subject: Added 1.12 blocks (#3760) --- src/BlockEntities/NoteEntity.cpp | 37 ++++++++++++++++++++++++-- src/BlockEntities/NoteEntity.h | 7 ++++- src/BlockID.h | 56 +++++++++++++++++++++++++++++++++++++++- src/Items/ItemPickaxe.h | 19 +++++++++++++- src/Items/ItemShovel.h | 1 + src/Simulator/SandSimulator.cpp | 10 ++++--- 6 files changed, 122 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/BlockEntities/NoteEntity.cpp b/src/BlockEntities/NoteEntity.cpp index 54b04e15a..a3638164d 100644 --- a/src/BlockEntities/NoteEntity.cpp +++ b/src/BlockEntities/NoteEntity.cpp @@ -127,11 +127,9 @@ void cNoteEntity::MakeSound(void) case E_BLOCK_BLACK_SHULKER_BOX: case E_BLOCK_BLOCK_OF_COAL: case E_BLOCK_BLUE_SHULKER_BOX: - case E_BLOCK_BONE_BLOCK: case E_BLOCK_BRICK: case E_BLOCK_BRICK_STAIRS: case E_BLOCK_BROWN_SHULKER_BOX: - case E_BLOCK_CLAY: case E_BLOCK_COAL_ORE: case E_BLOCK_COBBLESTONE: case E_BLOCK_COBBLESTONE_STAIRS: @@ -202,6 +200,41 @@ void cNoteEntity::MakeSound(void) break; } + case E_BLOCK_CLAY: + { + instrument = E_INST_FLUTE; + sampleName = "block.note.flute"; + break; + } + + case E_BLOCK_GOLD_BLOCK: + { + instrument = E_INST_BELL; + sampleName = "block.note.bell"; + break; + } + + case E_BLOCK_WOOL: + { + instrument = E_INST_GUITAR; + sampleName = "block.note.guitar"; + break; + } + + case E_BLOCK_PACKED_ICE: + { + instrument = E_INST_CHIME; + sampleName = "block.note.chime"; + break; + } + + case E_BLOCK_BONE_BLOCK: + { + instrument = E_INST_XYLOPHONE; + sampleName = "block.note.xylophone"; + break; + } + default: { instrument = E_INST_HARP_PIANO; diff --git a/src/BlockEntities/NoteEntity.h b/src/BlockEntities/NoteEntity.h index 87305b087..8798759a7 100644 --- a/src/BlockEntities/NoteEntity.h +++ b/src/BlockEntities/NoteEntity.h @@ -13,7 +13,12 @@ enum ENUM_NOTE_INSTRUMENTS E_INST_DOUBLE_BASS = 1, E_INST_SNARE_DRUM = 2, E_INST_CLICKS = 3, - E_INST_BASS_DRUM = 4 + E_INST_BASS_DRUM = 4, + E_INST_FLUTE = 5, + E_INST_BELL = 6, + E_INST_GUITAR = 7, + E_INST_CHIME = 8, + E_INST_XYLOPHONE = 9 }; diff --git a/src/BlockID.h b/src/BlockID.h index 0f66026b6..8454cd3da 100644 --- a/src/BlockID.h +++ b/src/BlockID.h @@ -248,12 +248,30 @@ enum ENUM_BLOCK_ID : BLOCKTYPE E_BLOCK_GREEN_SHULKER_BOX = 232, E_BLOCK_RED_SHULKER_BOX = 233, E_BLOCK_BLACK_SHULKER_BOX = 234, + E_BLOCK_WHITE_GLAZED_TERRACOTTA = 235, + E_BLOCK_ORANGE_GLAZED_TERRACOTTA = 236, + E_BLOCK_MAGENTA_GLAZED_TERRACOTTA = 237, + E_BLOCK_LIGHT_BLUE_GLAZED_TERRACOTTA = 238, + E_BLOCK_YELLOW_GLAZED_TERRACOTTA = 239, + E_BLOCK_LIME_GLAZED_TERRACOTTA = 240, + E_BLOCK_PINK_GLAZED_TERRACOTTA = 241, + E_BLOCK_GRAY_GLAZED_TERRACOTTA = 242, + E_BLOCK_LIGHT_GRAY_GLAZED_TERRACOTTA = 243, + E_BLOCK_CYAN_GLAZED_TERRACOTTA = 244, + E_BLOCK_PURPLE_GLAZED_TERRACOTTA = 245, + E_BLOCK_BLUE_GLAZED_TERRACOTTA = 246, + E_BLOCK_BROWN_GLAZED_TERRACOTTA = 247, + E_BLOCK_GREEN_GLAZED_TERRACOTTA = 248, + E_BLOCK_RED_GLAZED_TERRACOTTA = 249, + E_BLOCK_BLACK_GLAZED_TERRACOTTA = 250, + E_BLOCK_CONCRETE = 251, + E_BLOCK_CONCRETE_POWDER = 252, // ... E_BLOCK_STRUCTURE_BLOCK = 255, // Keep these two as the last values. Update the last block value to the last block with an id less than 255 when adding another block // IsValidBlock() depends on this (255 gets checked additionally because there is a gap. See http://minecraft.gamepedia.com/Data_values#Block_IDs - E_BLOCK_NUMBER_OF_TYPES = E_BLOCK_BLACK_SHULKER_BOX + 1, ///< Number of individual (different) blocktypes + E_BLOCK_NUMBER_OF_TYPES = E_BLOCK_CONCRETE_POWDER + 1, ///< Number of individual (different) blocktypes E_BLOCK_MAX_TYPE_ID = E_BLOCK_NUMBER_OF_TYPES - 1, ///< Maximum BlockType number used // Synonym or ID compatibility @@ -573,6 +591,42 @@ enum ENUM_BLOCK_META : NIBBLETYPE E_META_CHEST_FACING_XM = 4, E_META_CHEST_FACING_XP = 5, + // E_BLOCK_CONCRETE metas: + E_META_CONCRETE_WHITE = 0, + E_META_CONCRETE_ORANGE = 1, + E_META_CONCRETE_MAGENTA = 2, + E_META_CONCRETE_LIGHTBLUE = 3, + E_META_CONCRETE_YELLOW = 4, + E_META_CONCRETE_LIGHTGREEN = 5, + E_META_CONCRETE_PINK = 6, + E_META_CONCRETE_GRAY = 7, + E_META_CONCRETE_LIGHTGRAY = 8, + E_META_CONCRETE_CYAN = 9, + E_META_CONCRETE_PURPLE = 10, + E_META_CONCRETE_BLUE = 11, + E_META_CONCRETE_BROWN = 12, + E_META_CONCRETE_GREEN = 13, + E_META_CONCRETE_RED = 14, + E_META_CONCRETE_BLACK = 15, + + // E_BLOCK_CONCRETE_POWDER metas: + E_META_CONCRETE_POWDER_WHITE = 0, + E_META_CONCRETE_POWDER_ORANGE = 1, + E_META_CONCRETE_POWDER_MAGENTA = 2, + E_META_CONCRETE_POWDER_LIGHTBLUE = 3, + E_META_CONCRETE_POWDER_YELLOW = 4, + E_META_CONCRETE_POWDER_LIGHTGREEN = 5, + E_META_CONCRETE_POWDER_PINK = 6, + E_META_CONCRETE_POWDER_GRAY = 7, + E_META_CONCRETE_POWDER_LIGHTGRAY = 8, + E_META_CONCRETE_POWDER_CYAN = 9, + E_META_CONCRETE_POWDER_PURPLE = 10, + E_META_CONCRETE_POWDER_BLUE = 11, + E_META_CONCRETE_POWDER_BROWN = 12, + E_META_CONCRETE_POWDER_GREEN = 13, + E_META_CONCRETE_POWDER_RED = 14, + E_META_CONCRETE_POWDER_BLACK = 15, + // E_BLOCK_DIRT metas: E_META_DIRT_NORMAL = 0, E_META_DIRT_GRASSLESS = 1, diff --git a/src/Items/ItemPickaxe.h b/src/Items/ItemPickaxe.h index 4152deed8..5c460421d 100644 --- a/src/Items/ItemPickaxe.h +++ b/src/Items/ItemPickaxe.h @@ -59,17 +59,22 @@ public: } case E_BLOCK_ANVIL: - case E_BLOCK_BONE_BLOCK: + case E_BLOCK_BLACK_GLAZED_TERRACOTTA: case E_BLOCK_BLOCK_OF_COAL: case E_BLOCK_BLOCK_OF_REDSTONE: + case E_BLOCK_BLUE_GLAZED_TERRACOTTA: + case E_BLOCK_BONE_BLOCK: case E_BLOCK_BREWING_STAND: case E_BLOCK_BRICK: case E_BLOCK_BRICK_STAIRS: + case E_BLOCK_BROWN_GLAZED_TERRACOTTA: case E_BLOCK_CAULDRON: case E_BLOCK_COAL_ORE: case E_BLOCK_COBBLESTONE: case E_BLOCK_COBBLESTONE_STAIRS: case E_BLOCK_COBBLESTONE_WALL: + case E_BLOCK_CONCRETE: + case E_BLOCK_CYAN_GLAZED_TERRACOTTA: case E_BLOCK_DISPENSER: case E_BLOCK_DROPPER: case E_BLOCK_DOUBLE_RED_SANDSTONE_SLAB: @@ -78,14 +83,20 @@ public: case E_BLOCK_END_BRICKS: case E_BLOCK_END_STONE: case E_BLOCK_FURNACE: + case E_BLOCK_GRAY_GLAZED_TERRACOTTA: + case E_BLOCK_GREEN_GLAZED_TERRACOTTA: case E_BLOCK_HARDENED_CLAY: case E_BLOCK_HEAVY_WEIGHTED_PRESSURE_PLATE: case E_BLOCK_HOPPER: case E_BLOCK_IRON_BARS: case E_BLOCK_IRON_DOOR: case E_BLOCK_IRON_TRAPDOOR: + case E_BLOCK_LIGHT_BLUE_GLAZED_TERRACOTTA: + case E_BLOCK_LIGHT_GRAY_GLAZED_TERRACOTTA: case E_BLOCK_LIGHT_WEIGHTED_PRESSURE_PLATE: case E_BLOCK_LIT_FURNACE: + case E_BLOCK_LIME_GLAZED_TERRACOTTA: + case E_BLOCK_MAGENTA_GLAZED_TERRACOTTA: case E_BLOCK_MOB_SPAWNER: case E_BLOCK_MOSSY_COBBLESTONE: case E_BLOCK_MAGMA: @@ -95,7 +106,10 @@ public: case E_BLOCK_NETHER_QUARTZ_ORE: case E_BLOCK_NETHERRACK: case E_BLOCK_OBSERVER: + case E_BLOCK_ORANGE_GLAZED_TERRACOTTA: case E_BLOCK_PRISMARINE_BLOCK: + case E_BLOCK_PINK_GLAZED_TERRACOTTA: + case E_BLOCK_PURPLE_GLAZED_TERRACOTTA: case E_BLOCK_PURPUR_BLOCK: case E_BLOCK_PURPUR_DOUBLE_SLAB: case E_BLOCK_PURPUR_PILLAR: @@ -103,6 +117,7 @@ public: case E_BLOCK_PURPUR_STAIRS: case E_BLOCK_QUARTZ_BLOCK: case E_BLOCK_QUARTZ_STAIRS: + case E_BLOCK_RED_GLAZED_TERRACOTTA: case E_BLOCK_RED_NETHER_BRICK: case E_BLOCK_RED_SANDSTONE: case E_BLOCK_RED_SANDSTONE_STAIRS: @@ -113,6 +128,8 @@ public: case E_BLOCK_STONE_BRICK_STAIRS: case E_BLOCK_STONE_PRESSURE_PLATE: case E_BLOCK_STONE_SLAB: + case E_BLOCK_WHITE_GLAZED_TERRACOTTA: + case E_BLOCK_YELLOW_GLAZED_TERRACOTTA: { return PickaxeLevel() >= 1; } diff --git a/src/Items/ItemShovel.h b/src/Items/ItemShovel.h index 6db96095d..b26522b33 100644 --- a/src/Items/ItemShovel.h +++ b/src/Items/ItemShovel.h @@ -64,6 +64,7 @@ public: switch (a_Block) { case E_BLOCK_CLAY: + case E_BLOCK_CONCRETE_POWDER: case E_BLOCK_DIRT: case E_BLOCK_FARMLAND: case E_BLOCK_GRASS: diff --git a/src/Simulator/SandSimulator.cpp b/src/Simulator/SandSimulator.cpp index 63fd8477d..903dbf53d 100644 --- a/src/Simulator/SandSimulator.cpp +++ b/src/Simulator/SandSimulator.cpp @@ -83,15 +83,19 @@ bool cSandSimulator::IsAllowedBlock(BLOCKTYPE a_BlockType) { switch (a_BlockType) { - case E_BLOCK_SAND: - case E_BLOCK_GRAVEL: case E_BLOCK_ANVIL: + case E_BLOCK_CONCRETE_POWDER: case E_BLOCK_DRAGON_EGG: + case E_BLOCK_GRAVEL: + case E_BLOCK_SAND: { return true; } + default: + { + return false; + } } - return false; } -- cgit v1.2.3