用户:
屑代码师查看:1 回复:11 评论:1 创建时间:2023-05-29T21:30:11
哈嗨嗨
此贴是闲来无事发滴()
话不多说上代码()
//跨地图复制建筑代码(可移动位置)~
//阿流出品,必属精品doge
async function a(){
console.clear()
const s=[79,9,73] //这里填起始点坐标
const f=[124,9,118]//这里填终止点坐标
const item=[]
for(let x=s[0];x<f[0]+1;x++){
for(let y=s[1];y<f[1]+1;y++){
for(let z=s[2];z<f[2]+1;z++){
if (`${voxels.getVoxelId(x, y, z)}` > 0) {
item.push(`[${x-s[0]},${y-s[1]},${z-s[2]},${voxels.getVoxelId(x, y, z)}]`);
};
}
}
world.say(`已复制${x-s[0]}/${f[0]-s[0]}`)
await sleep(500)
}
world.say('代码生成中……')
await sleep(500)
console.log(`var sx = {x : 79, y : 24, z : 99};`);//填写另一个地图开始复制的起始点坐标
console.log(`const ts = [${item}];for (let i = 0; i < ts.length; i++) {voxels.setVoxel(sx.x+ts[i][0],sx.y+ts[i][1],sx.z+ts[i][2],ts[i][3])}`);
world.say('速建代码已完成!!!,请打开控制台复制吧!!!建议先运行另一个地图,再放进控制台,确认无误后再结束运行放进控制台!');
}
这里一共有 3 处地方要填写
1 复制的建筑起始点坐标
2 复制的建筑终止点坐标
3 另一地图要复制的起始点坐标
好了没了
真没了
啊啊
———————————————————————————————————————————————————————
// 跨地图复制建筑代码(可移动位置)
// 阿流出品,必属精品doge
async function copyBuilding(start, end, newStart) {
console.clear();
const items = [];
// 遍历立方体区域
for (let x = start[0]; x <= end[0]; x++) {
for (let y = start[1]; y <= end[1]; y++) {
for (let z = start[2]; z <= end[2]; z++) {
const voxelId = voxels.getVoxelId(x, y, z);
// 只复制非空的方块
if (voxelId > 0) {
items.push(`[${x - start[0]},${y - start[1]},${z - start[2]},${voxelId}]`);
}
}
}
world.say(`已复制 ${x - start[0]}/${end[0] - start[0]}`);
await sleep(500);
}
world.say('代码生成中……');
await sleep(500);
console.log(`var sx = {x : ${newStart[0]}, y : ${newStart[1]}, z : ${newStart[2]}};`);
console.log(`const ts = [${items}]; for (let i = 0; i < ts.length; i++) { voxels.setVoxel(sx.x + ts[i][0], sx.y + ts[i][1], sx.z + ts[i][2], ts[i][3]); }`);
world.say('速建代码已完成!!!请打开控制台复制吧!!!建议先运行另一个地图,再放进控制台,确认无误后再结束运行放进控制台!');
}
// 使用示例
const startPoint = [79, 9, 73]; // 起始点坐标
const endPoint = [124, 9, 118]; // 终止点坐标
const newStartPoint = [79, 24, 99]; // 新地图的起始点坐标
copyBuilding(startPoint, endPoint, newStartPoint)
点赞0
评论