257 lines
7.7 KiB
JavaScript
257 lines
7.7 KiB
JavaScript
/**
|
|
* Block Registry - defines ID, name,
|
|
* block properties, and block tags of custom blocks.
|
|
*/
|
|
StartupEvents.registry("block", event => {
|
|
|
|
// Compressed Blocks
|
|
event.create("compressed_sand")
|
|
.displayName("Compressed Sand")
|
|
.soundType("sand")
|
|
.resistance(1).hardness(1)
|
|
.tagBlock("mineable/shovel").requiresTool(true)
|
|
.property(BlockProperties.FALLING);
|
|
|
|
event.create("double_compressed_sand")
|
|
.displayName("Double Compressed Sand")
|
|
.soundType("sand")
|
|
.resistance(2).hardness(2)
|
|
.tagBlock("mineable/shovel").requiresTool(true)
|
|
.property(BlockProperties.FALLING);
|
|
|
|
event.create("compressed_red_sand")
|
|
.displayName("Compressed Red Sand")
|
|
.soundType("sand")
|
|
.resistance(1).hardness(1)
|
|
.tagBlock("mineable/shovel").requiresTool(true)
|
|
.property(BlockProperties.FALLING);
|
|
|
|
event.create("double_compressed_red_sand")
|
|
.displayName("Double Compressed Red Sand")
|
|
.soundType("sand")
|
|
.resistance(2).hardness(2)
|
|
.tagBlock("mineable/shovel").requiresTool(true)
|
|
.property(BlockProperties.FALLING);
|
|
|
|
event.create("infinity_dust_block", "falling")
|
|
.displayName("Infinity Dust Block")
|
|
.soundType("sand")
|
|
.resistance(0.6).hardness(0.5)
|
|
.tagBlock("mineable/shovel").requiresTool(true);
|
|
|
|
event.create("compressed_infinity_dust_block", "falling")
|
|
.displayName("Compressed Infinity Dust Block")
|
|
.soundType("sand")
|
|
.resistance(1).hardness(1)
|
|
.tagBlock("mineable/shovel").requiresTool(true);
|
|
|
|
event.create("double_compressed_infinity_dust_block", "falling")
|
|
.displayName("Double Compressed Infinity Dust Block")
|
|
.soundType("sand")
|
|
.resistance(2).hardness(2)
|
|
.tagBlock("mineable/shovel").requiresTool(true);
|
|
|
|
|
|
// Micro Miner Cores/Frames
|
|
event.create("electrum_micro_miner_core")
|
|
.displayName("Electrum Micro Miner Engine Core")
|
|
.soundType("metal")
|
|
.resistance(3)
|
|
.hardness(3)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("signalum_micro_miner_core")
|
|
.displayName("Signalum Micro Miner Engine Core")
|
|
.soundType("metal")
|
|
.resistance(4)
|
|
.hardness(4)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("enderium_micro_miner_core")
|
|
.displayName("Enderium Micro Miner Engine Core")
|
|
.soundType("metal")
|
|
.resistance(5)
|
|
.hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("electrum_micro_miner_frame")
|
|
.displayName("Electrum Micro Miner Engine Frame")
|
|
.soundType("metal")
|
|
.resistance(3)
|
|
.hardness(3)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("signalum_micro_miner_frame")
|
|
.displayName("Signalum Micro Miner Engine Frame")
|
|
.soundType("metal")
|
|
.resistance(4)
|
|
.hardness(4)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("enderium_micro_miner_frame")
|
|
.displayName("Enderium Micro Miner Engine Frame")
|
|
.soundType("metal")
|
|
.resistance(5)
|
|
.hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true)
|
|
.defaultCutout();
|
|
|
|
event.create("warp_core")
|
|
.displayName("Warp Core")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
event.create("warp_controller")
|
|
.displayName("Warp Controller")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
event.create("universal_warp_core")
|
|
.displayName("Universal Warp Core")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
event.create("universal_warp_controller")
|
|
.displayName("Universal Warp Controller")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
|
|
// Dense Ores
|
|
const ores = [
|
|
"redstone",
|
|
"diamond",
|
|
"emerald",
|
|
"gold",
|
|
"lapis",
|
|
"iron",
|
|
"coal",
|
|
"copper",
|
|
"nether_quartz",
|
|
"oilsands"
|
|
]
|
|
|
|
ores.forEach(ore => {
|
|
event.create(`dense_${ore}_ore`)
|
|
.soundType("stone")
|
|
.resistance(6)
|
|
.hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBoth("forge:ores/dense")
|
|
.tagBoth(`forge:ores/dense/${ore}`)
|
|
.requiresTool(true);
|
|
});
|
|
|
|
event.create("dense_magma_block")
|
|
.soundType("stone")
|
|
.resistance(6)
|
|
.hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBoth("forge:ores/dense")
|
|
.tagBoth("forge:ores/dense/magma")
|
|
.requiresTool(true)
|
|
.lightLevel(1.0);
|
|
|
|
|
|
// Machine Casings
|
|
const casings = [
|
|
"microverse",
|
|
"dark_soularium",
|
|
"omnic_matrix_machine",
|
|
"dimensional_stabilization_netherite",
|
|
"cryolobus",
|
|
"bioalloy",
|
|
"bioalloy_fusion",
|
|
]
|
|
|
|
casings.forEach(casing => {
|
|
event.create(`${casing}_casing`)
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
});
|
|
|
|
|
|
// Misc
|
|
event.create("starry_diamond_block")
|
|
.displayName("Starry Diamatine Block")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe").requiresTool(true)
|
|
.textureAll("kubejs:block/microverse/starry_diamond_block");
|
|
|
|
event.create("dust", "falling")
|
|
.soundType("sand")
|
|
.resistance(0.4).hardness(0.4)
|
|
.tag("mineable/shovel").displayName("Dust Block")
|
|
.property(BlockProperties.FALLING);
|
|
|
|
event.create("dark_steel_machine_hull")
|
|
.displayName("Dark Steel Machine Hull")
|
|
.soundType("metal")
|
|
.resistance(6).hardness(5)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
event.create("excitationcoil", "cardinal")
|
|
.displayName("Excitation Coil")
|
|
.soundType("metal")
|
|
.renderType("cutout")
|
|
.box(3, 0, 3, 13, 1, 13)
|
|
.box(4, 1, 4, 12, 9, 12)
|
|
.tag("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.requiresTool(true);
|
|
|
|
event.create("omnic_matrix_coil_block", "gtceu:coil")
|
|
.temperature(12600)
|
|
.level(16)
|
|
.energyDiscount(16)
|
|
.tier(8)
|
|
.coilMaterial(() => GTMaterials.get("omnium"))
|
|
.hardness(5)
|
|
.requiresTool(true)
|
|
.tagBlock("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.soundType("metal")
|
|
|
|
event.create("meowni_plush", "cardinal")
|
|
.displayName("Meowni Plush")
|
|
.soundType("wool")
|
|
.renderType("cutout")
|
|
.tag("mineable/pickaxe")
|
|
.tagBlock("forge:mineable/wrench")
|
|
.defaultCutout();
|
|
});
|