116 lines
6.5 KiB
JavaScript
116 lines
6.5 KiB
JavaScript
Ponder.registry((event) => {
|
||
event
|
||
.create(["kubejs:infinity_fetching_pool", "kubejs:saline_water_bucket", "kubejs:cryogen_bucket", "minecraft:lava_bucket"])
|
||
.tag("kubejs:machine_and_multiblock")
|
||
.scene(
|
||
"kubejs:use_infinity_fetching_pool",
|
||
"无限取液",
|
||
"kubejs:infinity_fetching_pool",
|
||
(scene, utils) => {
|
||
scene.configureBasePlate(0, 0, 9);
|
||
scene.showStructure(0);
|
||
scene.scaleSceneView(0.7);
|
||
const Layer = [[2, 1, 2], [3, 1, 2], [4, 1, 2], [5, 1, 2], [6, 1, 2], [2, 1, 3], [3, 1, 3], [4, 1, 3], [5, 1, 3], [6, 1, 3], [2, 1, 4], [3, 1, 4], [4, 1, 4], [5, 1, 4], [6, 1, 4], [2, 1, 5], [3, 1, 5], [4, 1, 5], [5, 1, 5], [6, 1, 5], [2, 1, 6], [3, 1, 6], [4, 1, 6], [5, 1, 6], [6, 1, 6], [2, 2, 2], [4, 2, 2], [6, 2, 2], [4, 2, 3], [2, 2, 4], [3, 2, 4], [4, 2, 4], [5, 2, 4], [6, 2, 4], [4, 2, 5], [2, 2, 6], [4, 2, 6], [6, 2, 6], [3, 3, 3], [4, 3, 3], [5, 3, 3], [3, 3, 4], [4, 3, 4], [5, 3, 4], [3, 3, 5], [4, 3, 5], [5, 3, 5], [3, 4, 2], [4, 4, 2], [5, 4, 2], [2, 4, 3], [6, 4, 3], [2, 4, 4], [6, 4, 4], [2, 4, 5], [6, 4, 5], [3, 4, 6], [4, 4, 6], [5, 4, 6]]
|
||
for (let i of Layer) {
|
||
scene.world.showSection(i, Direction.down);
|
||
}
|
||
scene.idle(20);
|
||
scene.addKeyframe();
|
||
scene.text(60, "你也许已经厌倦了建造一万格流体池,那么无限取液池会是你的好选择!");
|
||
scene.idle(80);
|
||
scene.addKeyframe();
|
||
scene.text(60, "首先,核心附近必须修建正确的结构");
|
||
scene.idle(80);
|
||
scene.addKeyframe();
|
||
scene.text(60, "接着,你需要将对应的液体桶放入核心的过滤槽中");
|
||
scene.overlay.showOutline("green", {}, [4, 2, 4], 60);
|
||
scene.showControls(15, [4, 2, 4], "up").withItem("kubejs:saline_water_bucket")
|
||
scene.idle(30);
|
||
scene.showControls(15, [4, 2, 4], "up").withItem("kubejs:cryogen_bucket")
|
||
scene.idle(30);
|
||
scene.showControls(15, [4, 2, 4], "up").withItem("minecraft:lava_bucket")
|
||
scene.idle(50);
|
||
scene.addKeyframe();
|
||
scene.text(60, "最后,你需要向蓄电池提供的电力(如果电力充足,那么可以以3倍的速度产生流体!)");
|
||
scene.idle(40);
|
||
scene.overlay.showOutline("green", {}, [3, 1, 3, 5, 1, 5], 60);
|
||
scene.world.setBlock([3, 2, 3], "createaddition:creative_energy", true);
|
||
scene.world.showSection([3, 2, 3], Direction.down);
|
||
scene.idle(15);
|
||
for (let i of [[5, 4, 3], [5, 4, 4], [5, 4, 5], [4, 4, 3], [4, 4, 4], [4, 4, 5], [3, 4, 3], [3, 4, 4], [3, 4, 5]]) {
|
||
scene.world.showSection(i, Direction.down);
|
||
scene.idle(1);
|
||
}
|
||
scene.addKeyframe();
|
||
scene.text(60, "...如此,无限取液池便会在其上方产生对应流体");
|
||
scene.overlay.showOutline("green", {}, [3, 4, 3, 5, 4, 5], 60);
|
||
scene.idle(80);
|
||
scene.text(60, "你可以在液池上方修建用于取出液体的管道,从而达成自动化");
|
||
scene.world.showSection([3, 5, 3, 5, 7, 5], Direction.down);
|
||
scene.idle(20);
|
||
scene.world.hideSection([3, 4, 3, 5, 4, 5], Direction.up);
|
||
scene.idle(20);
|
||
scene.world.hideSection([3, 5, 3, 5, 7, 5], Direction.up);
|
||
scene.idle(40);
|
||
}
|
||
)
|
||
.scene(
|
||
"kubejs:infinity_fetching_pool",
|
||
"建造无限取液池",
|
||
"kubejs:infinity_fetching_pool",
|
||
(scene, utils) => {
|
||
scene.configureBasePlate(0, 0, 9);
|
||
scene.showStructure(0);
|
||
scene.scaleSceneView(0.7);
|
||
const Layer = [[2, 1, 2], [3, 1, 2], [4, 1, 2], [5, 1, 2], [6, 1, 2], [2, 1, 3], [3, 1, 3], [4, 1, 3], [5, 1, 3], [6, 1, 3], [2, 1, 4], [3, 1, 4], [4, 1, 4], [5, 1, 4], [6, 1, 4], [2, 1, 5], [3, 1, 5], [4, 1, 5], [5, 1, 5], [6, 1, 5], [2, 1, 6], [3, 1, 6], [4, 1, 6], [5, 1, 6], [6, 1, 6], [2, 2, 2], [4, 2, 2], [6, 2, 2], [4, 2, 3], [2, 2, 4], [3, 2, 4], [4, 2, 4], [5, 2, 4], [6, 2, 4], [4, 2, 5], [2, 2, 6], [4, 2, 6], [6, 2, 6], [3, 3, 3], [4, 3, 3], [5, 3, 3], [3, 3, 4], [4, 3, 4], [5, 3, 4], [3, 3, 5], [4, 3, 5], [5, 3, 5], [3, 4, 2], [4, 4, 2], [5, 4, 2], [2, 4, 3], [6, 4, 3], [2, 4, 4], [6, 4, 4], [2, 4, 5], [6, 4, 5], [3, 4, 6], [4, 4, 6], [5, 4, 6]]
|
||
for (let i of Layer) {
|
||
scene.world.showSection(i, Direction.down);
|
||
}
|
||
const Layer1 = [[2, 1, 2], [3, 1, 2], [4, 1, 2], [5, 1, 2], [6, 1, 2], [2, 1, 3], [3, 1, 3], [4, 1, 3], [5, 1, 3], [6, 1, 3], [2, 1, 4], [3, 1, 4], [4, 1, 4], [5, 1, 4], [6, 1, 4], [2, 1, 5], [3, 1, 5], [4, 1, 5], [5, 1, 5], [6, 1, 5], [2, 1, 6], [3, 1, 6], [4, 1, 6], [5, 1, 6], [6, 1, 6]]
|
||
const Layer2 = [[2, 2, 2], [4, 2, 2], [6, 2, 2], [4, 2, 3], [2, 2, 4], [3, 2, 4], [4, 2, 4], [5, 2, 4], [6, 2, 4], [4, 2, 5], [2, 2, 6], [4, 2, 6], [6, 2, 6]]
|
||
const Layer3 = [[3, 3, 3], [4, 3, 3], [5, 3, 3], [3, 3, 4], [4, 3, 4], [5, 3, 4], [3, 3, 5], [4, 3, 5], [5, 3, 5]]
|
||
const Layer4 = [[3, 4, 2], [4, 4, 2], [5, 4, 2], [2, 4, 3], [6, 4, 3], [2, 4, 4], [6, 4, 4], [2, 4, 5], [6, 4, 5], [3, 4, 6], [4, 4, 6], [5, 4, 6]]
|
||
scene.text(60, "你需要在无限取液池核心附近建造结构来完成无限取液池");
|
||
scene.idle(80);
|
||
scene.addKeyframe();
|
||
scene.text(30, "...建造如下结构");
|
||
for (let i of Layer) {
|
||
scene.world.hideSection(i, Direction.up);
|
||
}
|
||
scene.idle(40);
|
||
scene.text(60, "如果你对方块种类有疑问,可以点击放大镜图标");
|
||
scene.idle(80);
|
||
scene.addKeyframe();
|
||
scene.text(30, "第 1 层:", [3, 1, 3])
|
||
for (let i of Layer1) {
|
||
scene.idle(1);
|
||
scene.world.showSection(i, Direction.down);
|
||
};
|
||
scene.idle(48);
|
||
scene.addKeyframe();
|
||
scene.text(30, "第 2 层:", [3, 2, 3])
|
||
for (let i of Layer2) {
|
||
scene.idle(2);
|
||
scene.world.showSection(i, Direction.down);
|
||
};
|
||
scene.idle(40);
|
||
scene.text(40, "核心在此(朝向任意!)", [4, 2, 4]);
|
||
scene.overlay.showOutline("green", {}, [4, 2, 4], 40);
|
||
scene.idle(60);
|
||
scene.addKeyframe();
|
||
scene.text(30, "第 3 层:", [3, 3, 3])
|
||
for (let i of Layer3) {
|
||
scene.idle(2);
|
||
scene.world.showSection(i, Direction.down);
|
||
};
|
||
scene.idle(40);
|
||
scene.addKeyframe();
|
||
scene.text(30, "第 4 层:", [3, 4, 3])
|
||
for (let i of Layer4) {
|
||
scene.idle(2);
|
||
scene.world.showSection(i, Direction.down);
|
||
};
|
||
scene.idle(40);
|
||
}
|
||
);
|
||
}); |