diff --git a/blocks.py b/blocks.py index 9d788ff..eb66e5b 100644 --- a/blocks.py +++ b/blocks.py @@ -28,10 +28,6 @@ EMERALD_BLOCK = 5407 TEST_BLOCK = (616, 78, 496) -WATER = [ - 'water', -] - AVOID = [ 'lava', 'water', @@ -263,89 +259,37 @@ INDEXED = [ 'barrel', ] + BEDS +def get_set(ids): + result = set() + for block_name in ids: + for state in JSON_BLOCKS['minecraft:' + block_name]['states']: + result.add(state['id']) + return result -NON_SOLID_IDS = set([SINGLE_SNOW]) -for block_name in NON_SOLID: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - NON_SOLID_IDS.add(state['id']) - -AVOID_IDS = set() -for block_name in AVOID: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - AVOID_IDS.add(state['id']) - -WATER_IDS = set() -for block_name in WATER: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - WATER_IDS.add(state['id']) - -LOG_IDS = set() -for block_name in LOGS: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - LOG_IDS.add(state['id']) - -LEAF_IDS = set() -for block_name in LEAVES: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - LEAF_IDS.add(state['id']) - -CHEST_IDS = set() -for block_name in ['chest']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - CHEST_IDS.add(state['id']) - -BARREL_IDS = set() -for block_name in ['barrel']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - BARREL_IDS.add(state['id']) - -TRAPPED_CHEST_IDS = set() -for block_name in ['trapped_chest']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - TRAPPED_CHEST_IDS.add(state['id']) - -NETHERWART_IDS = set() -for block_name in ['nether_wart']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - NETHERWART_IDS.add(state['id']) - -WHEAT_IDS = set() -for block_name in ['wheat']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - WHEAT_IDS.add(state['id']) - -POTATO_IDS = set() -for block_name in ['potatoes']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - POTATO_IDS.add(state['id']) - -CARROT_IDS = set() -for block_name in ['carrots']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - CARROT_IDS.add(state['id']) - -BEETROOT_IDS = set() -for block_name in ['beetroots']: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - BEETROOT_IDS.add(state['id']) - -SAPLING_IDS = set() -for block_name in SAPLINGS: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - SAPLING_IDS.add(state['id']) - -BED_IDS = set() -for block_name in BEDS: - for state in JSON_BLOCKS['minecraft:' + block_name]['states']: - BED_IDS.add(state['id']) - +NON_SOLID_IDS = get_set(NON_SOLID) +NON_SOLID_IDS.add(SINGLE_SNOW) +AVOID_IDS = get_set(AVOID) +WATER_IDS = get_set(['water']) +LOG_IDS = get_set(LOGS) +LEAF_IDS = get_set(LEAVES) +CHEST_IDS = get_set(['chest']) +BARREL_IDS = get_set(['barrel']) +TRAPPED_CHEST_IDS = get_set(['trapped_chest']) +NETHERWART_IDS = get_set(['nether_wart']) +WHEAT_IDS = get_set(['wheat']) +POTATO_IDS = get_set(['potatoes']) +CARROT_IDS = get_set(['carrots']) +BEETROOT_IDS = get_set(['beetroots']) +SAPLING_IDS = get_set(SAPLINGS) +BED_IDS = get_set(BEDS) INDEXED_IDS = set() for block_name in INDEXED: for state in JSON_BLOCKS['minecraft:' + block_name]['states']: INDEXED_IDS.add(state['id']) + MATURE_WHEAT_ID = max(WHEAT_IDS) MATURE_POTATO_ID = max(POTATO_IDS) MATURE_CARROT_ID = max(CARROT_IDS) diff --git a/items.py b/items.py index c03bd83..41da781 100644 --- a/items.py +++ b/items.py @@ -67,34 +67,25 @@ LOGS = [ 'dark_oak_log', ] -BED_IDS = set() -for item_name in BEDS: - BED_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) -SHOVEL_IDS = set() -for item_name in SHOVELS: - SHOVEL_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) +def get_set(ids): + result = set() + for item_name in ids: + result.add(ITEMS['minecraft:'+item_name]['protocol_id']) + return result -AXE_IDS = set() -for item_name in AXES: - AXE_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) - -FOOD_IDS = set() -for item_name in FOOD: - FOOD_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) - -SAPLING_IDS = set() -for item_name in SAPLINGS: - SAPLING_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) - -LOG_IDS = set() -for item_name in LOGS: - LOG_IDS.add(ITEMS['minecraft:'+item_name]['protocol_id']) +BED_IDS = get_set(BEDS) +SHOVEL_IDS = get_set(SHOVELS) +AXE_IDS = get_set(AXES) +FOOD_IDS = get_set(FOOD) +SAPLING_IDS = get_set(SAPLINGS) +LOG_IDS = get_set(LOGS) ITEM_NAMES = {} for item_name, item in ITEMS.items(): ITEM_NAMES[ITEMS[item_name]['protocol_id']] = item_name.replace('minecraft:', '') + def get_id(name): return ITEMS['minecraft:' + name]['protocol_id'] @@ -115,7 +106,9 @@ BERRIES_ID = get_id('sweet_berries') IRON_INGOT_ID = get_id('iron_ingot') -INIT_NEEDED_ITEMS = BED_IDS | FOOD_IDS | set([CHEST_ID]) +INIT_NEEDED_ITEMS = BED_IDS | FOOD_IDS +INIT_NEEDED_ITEMS.add(CHEST_ID) + NEEDED_ITEMS = INIT_NEEDED_ITEMS INIT_WANTED_ITEMS = set()