LTDV10Test/packet/kubejs/server_scripts/Create Ore/cluster.js
3944Realms 67a395b765
Some checks failed
Deploy to Remote Server / deploy (push) Failing after 1m11s
初始化
2026-04-14 18:20:56 +08:00

113 lines
4.9 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ServerEvents.recipes((event) => {
event.remove({ mod: "createoreexcavation", type: "createoreexcavation:vein" })
event.remove({ mod: "createoreexcavation", type: "createoreexcavation:drilling" })
//主世界金属矿簇
event.recipes.createoreexcavation
.vein(
'{"text": "主世界金属矿簇"}',
"createdelight:overworld_metal_ore_cluster",
)
.placement(64, 8, 114514)
.biomeWhitelist("minecraft:is_overworld")
.id("kubejs:overworld_metal_ore_cluster_ore");
//主世界贵金属矿簇
event.recipes.createoreexcavation
.vein(
'{"text": "主世界贵金属矿簇"}',
"createdelight:overworld_noble_metal_ore_cluster",
)
.placement(128, 16, 721)
.biomeWhitelist("minecraft:is_overworld")
.id("kubejs:overworld_noble_metal_ore_cluster_ore");
//下界矿簇
event.recipes.createoreexcavation
.vein('{"text": "下界矿簇"}', "createdelight:nether_ore_cluster")
.placement(64, 8, 114514)
.biomeWhitelist("minecraft:is_nether")
.id("kubejs:nether_ore_cluster");
//月球矿簇
event.recipes.createoreexcavation
.vein('{"text": "月球矿簇"}', "createdelight:moon_ore_cluster")
.placement(64, 8, 114514)
.biomeWhitelist("createdelight:is_moon")
.id("kubejs:moon_ore_cluster_ore");
//火星矿簇
event.recipes.createoreexcavation
.vein('{"text": "火星矿簇"}', "createdelight:mars_ore_cluster")
.placement(64, 8, 114514)
.biomeWhitelist("createdelight:is_mars")
.id("kubejs:mars_ore_cluster_ore");
//火星宝石矿簇
event.recipes.createoreexcavation
.vein('{"text": "火星宝石矿簇"}', "createdelight:mars_gemstone_cluster")
.placement(128, 16, 721)
.biomeWhitelist("createdelight:is_mars")
.id("kubejs:mars_gemstone_cluster_ore");
//水星矿簇
event.recipes.createoreexcavation
.vein('{"text": "水星矿簇"}', "createdelight:mercury_ore_cluster")
.placement(64, 8, 114514)
.biomeWhitelist("createdelight:is_mercury")
.id("kubejs:mercury_ore_cluster_ore");
//金星矿簇
event.recipes.createoreexcavation
.vein('{"text": "金星矿簇"}', "createdelight:venus_ore_cluster")
.placement(128, 16, 721)
.biomeWhitelist("createdelight:is_venus")
.id("kubejs:venus_ore_cluster_ore")
//霜原星矿簇
event.recipes.createoreexcavation
.vein('{"text": "霜原星矿簇"}', "createdelight:glacio_ore_cluster")
.placement(128, 16, 721)
.biomeWhitelist("createdelight:is_glacio")
.id("kubejs:glacio_ore_cluster_ore");
/**
*
* @param {OutputItem_|OutputItem_[]} output //矿脉产出
* @param {string} veinId //矿脉id
* @param {Internal.FluidStackJS} baseFluid //基础流体必须要用Fluid.xx指定流体量
* @param {number} baseStress //基础应力消耗
* @param {number} baseProcessingTime //基础工作时间
* @param {number} level //所需润滑油的最低等级()
*/
function drilling(output, veinId, baseFluid, baseStress, baseProcessingTime, level) {
let fluidArr = ["createdelight:ice_lubricating_oil", "createdelight:lubricating_oil", baseFluid]
let l = fluidArr.length + 1 - level
let processingTimeMulti = [0.1, 0.2, 1]
let stressMulti = [0.5, 0.75, 1]
let fluidAmountMulti = [0.05, 0.1, 1]
let drill = ["createoreexcavation:netherite_drill", "createoreexcavation:diamond_drill", "createoreexcavation:drill"]
for (let index = 0; index < l; index++) {
let fluid = Fluid.of(fluidArr[index], baseFluid.amount * fluidAmountMulti[index]);
event.recipes.createoreexcavation
.drilling(
output,
veinId,
baseProcessingTime * processingTimeMulti[index],
)
.fluid(fluid)
.drill(drill[index])
.stress(baseStress * stressMulti[index])
.id(`kubejs:${output.split(":")[1]}_using_${fluid.id.split(":")[1]}`)
}
}
drilling("createdelight:overworld_metal_ore_cluster", "kubejs:overworld_metal_ore_cluster_ore", Fluid.water(500), 1024, 8000, 1)
drilling("createdelight:overworld_noble_metal_ore_cluster", "kubejs:overworld_noble_metal_ore_cluster_ore", Fluid.water(500), 1536, 10000, 1)
drilling("createdelight:nether_ore_cluster", "kubejs:nether_ore_cluster", Fluid.lava(500), 2048, 12000, 1)
drilling("createdelight:moon_ore_cluster", "kubejs:moon_ore_cluster_ore", Fluid.of("netherexp:ectoplasm", 500), 1024, 4000, 1)
drilling("createdelight:mars_ore_cluster", "kubejs:mars_ore_cluster_ore", Fluid.of("netherexp:ectoplasm", 500), 1536, 4000, 2)
drilling("createdelight:mars_gemstone_cluster", "kubejs:mars_gemstone_cluster_ore", Fluid.of("netherexp:ectoplasm", 500), 2048, 4000, 2)
drilling("createdelight:mercury_ore_cluster", "kubejs:mercury_ore_cluster_ore", Fluid.lava(1000), 2048, 2000, 3)
drilling("createdelight:venus_ore_cluster", "kubejs:venus_ore_cluster_ore", Fluid.lava(500), 2048, 8000, 3)
drilling("createdelight:glacio_ore_cluster", "kubejs:glacio_ore_cluster_ore", Fluid.of("netherexp:ectoplasm", 1000), 2048, 2000, 3)
});