the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
at main 62 lines 2.4 kB view raw
1#include "stdafx.h" 2#include "net.minecraft.world.level.tile.h" 3#include "PickaxeItem.h" 4 5TileArray PickaxeItem::diggables; 6 7void PickaxeItem::staticCtor() 8{ 9 PickaxeItem::diggables = TileArray( PICKAXE_DIGGABLES); 10 diggables.data[0] = Tile::cobblestone; 11 diggables.data[1] = Tile::stoneSlab; 12 diggables.data[2] = Tile::stoneSlabHalf; 13 diggables.data[3] = Tile::stone; 14 diggables.data[4] = Tile::sandStone; 15 diggables.data[5] = Tile::mossyCobblestone; 16 diggables.data[6] = Tile::ironOre; 17 diggables.data[7] = Tile::ironBlock; 18 diggables.data[8] = Tile::coalOre; 19 diggables.data[9] = Tile::goldBlock; 20 diggables.data[10] = Tile::goldOre; 21 diggables.data[11] = Tile::diamondOre; 22 diggables.data[12] = Tile::diamondBlock; 23 diggables.data[13] = Tile::ice; 24 diggables.data[14] = Tile::netherRack; 25 diggables.data[15] = Tile::lapisOre; 26 diggables.data[16] = Tile::lapisBlock; 27 diggables.data[17] = Tile::redStoneOre; 28 diggables.data[18] = Tile::redStoneOre_lit; 29 diggables.data[19] = Tile::rail; 30 diggables.data[20] = Tile::detectorRail; 31 diggables.data[21] = Tile::goldenRail; 32 diggables.data[21] = Tile::activatorRail; 33} 34 35PickaxeItem::PickaxeItem(int id, const Tier *tier) : DiggerItem(id, 2, tier, &diggables) 36{ 37} 38 39bool PickaxeItem::canDestroySpecial(Tile *tile) 40{ 41 if (tile == Tile::obsidian) return tier->getLevel() == 3; 42 if (tile == Tile::diamondBlock || tile == Tile::diamondOre) return tier->getLevel() >= 2; 43 if (tile == Tile::emeraldBlock || tile == Tile::emeraldOre) return tier->getLevel() >= 2; 44 if (tile == Tile::goldBlock || tile == Tile::goldOre) return tier->getLevel() >= 2; 45 if (tile == Tile::ironBlock || tile == Tile::ironOre) return tier->getLevel() >= 1; 46 if (tile == Tile::lapisBlock || tile == Tile::lapisOre) return tier->getLevel() >= 1; 47 if (tile == Tile::redStoneOre || tile == Tile::redStoneOre_lit) return tier->getLevel() >= 2; 48 if (tile->material == Material::stone) return true; 49 if (tile->material == Material::metal) return true; 50 if (tile->material == Material::heavyMetal) return true; 51 return false; 52} 53 54// 4J - brought forward from 1.2.3 55float PickaxeItem::getDestroySpeed(shared_ptr<ItemInstance> itemInstance, Tile *tile) 56{ 57 if (tile != NULL && (tile->material == Material::metal || tile->material == Material::heavyMetal || tile->material == Material::stone)) 58 { 59 return speed; 60 } 61 return DiggerItem::getDestroySpeed(itemInstance, tile); 62}