猫史档案馆


复制地图建筑或者地形升级版

用户:烟魂烟魂查看:1 回复:6 评论:1 创建时间:2023-02-11T17:18:30


hi!

大家好我是soul

复制地图代码有事会有报错所以我升级一下

 

这是代码(要输入到控制台):

world.say('欢迎使用复制地形工具!\nsoul与反研发不可抄袭');
const dxxyz = [
    '32',
    '喵',
    '128',
    '256',
    '512',
    '704',
    '1024',
];
global.asd = 0;
console.clear();
world.onChat(async function ({ entity, message }) {
    if (message == '/复制') {
        while (true) {
            const result = await select(
                entity,
                `请选着模式`,
                `请选择地形大小`,
                [
                    '复制地形模式',
                    '复制建筑模式',
                    '清空控制台',
                    '退出'
                ]
            );
            if (result) {
                if (result.value == '复制地形模式') {
                    world.say(`${entity.player.name} 正在复制地形`);
                    if (asd == 0) {
                        while (true) {
                            const result = await select(
                                entity,
                                `复制地形选着`,
                                `请选择地形大小`,
                                [
                                    '128*x*128(x数值自定义)',
                                    '256*x*256(x数值自定义)',
                                    '512*x*512(x数值自定义)',
                                    '704*x*704(x数值自定义)',
                                    '自定义',
                                    '退出'
                                ]
                            );
                            if (result) {
                                if (result.value == '128*x*128(x数值自定义)' || result.value == '256*x*256(x数值自定义)' || result.value == '512*x*512(x数值自定义)' || result.value == '704*x*704(x数值自定义)') {
                                    const results = await select(
                                        entity,
                                        `${result.value}`,
                                        `请选择`,
                                        dxxyz
                                    );
                                    if (results) {
                                        world.say(`${entity.player.name} 正在复制地形,大小为${Number(result.value.split('*')[0])}*${Number(results.value)}*${Number(result.value.split('*')[0])}*`);
                                        asd = 1;
                                        world.say('列表复制地形开启');
                                        console.clear();
                                        let item = [];
                                        for (var x = 0; x <= Number(result.value.split('*')[0]); x++) {
                                            for (var y = 0; y <= Number(results.value); y++) {
                                                for (var z = 0; z <= Number(result.value.split('*')[0]); z++) {
                                                    if (voxels.getVoxelId(x, y, z) > 0) {
                                                        item.push(`[${x}, ${y}, ${z}, ${voxels.getVoxelId(x, y, z)}]`);
                                                    };
                                                };
                                            };
                                            await sleep(10)
                                        };
                                        console.log(`(async function (){for (let i = 0; i <= 254; i++) {for (let j = 0; j <= 254; j++) {for (let k = 0; k <= 8; k++) {voxels.setVoxel(i, k, j, 0);await sleep(0.1);};};};var sx = { x: 0, y: 0, z: 0 }; const ts = [${item}];; sx.x -= ts[0][0]; sx.y -= ts[0][1]; sx.z -= ts[0][2]; 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]);await sleep(1)  } })()`);
                                        asd = 0;
                                        world.say('速建代码已完成!!!\n请打开控制台复制吧!!!');
                                        text(
                                            entity,
                                            '代码生成完成!\n请使用F12输入代码复制地形速建代码吧!!!'
                                        )
                                    };
                                };
                                if (result.value == '退出') {
                                    return;
                                };
                                if (result.value == '自定义') {
                                    const resultx = await input(
                                        entity,
                                        result.value,
                                        `请输入x坐标`,
                                        ``,
                                        `输入完成`,
                                    );
                                    if (resultx) {
                                        const resulty = await input(
                                            entity,
                                            result.value,
                                            `请输入y坐标`,
                                            ``,
                                            `输入完成`,
                                        );
                                        if (resulty) {
                                            const resultz = await input(
                                                entity,
                                                result.value,
                                                `请输入z坐标`,
                                                ``,
                                                `输入完成`,
                                            );
                                            if (resultz) {
                                                world.say(`${entity.player.name} 正在复制地形,大小为${resultx}*${resulty}*${resultz}`);
                                                asd = 1;
                                                world.say('列表复制地形开启');
                                                console.clear();
                                                let item = [];
                                                for (var x = 0; x <= resultx; x++) {
                                                    for (var y = 0; y <= resulty; y++) {
                                                        for (var z = 0; z <= resultz; z++) {
                                                            if (voxels.getVoxelId(x, y, z) > 0) {
                                                                item.push(`[${x}, ${y}, ${z}, ${voxels.getVoxelId(x, y, z)}]`);
                                                            };
                                                        };
                                                    };
                                                    await sleep(10)
                                                };
                                                console.log(`for (let i = 0; i <= ${resultx}; i++) {for (let j = 0; j <= ${resultz}; j++) {for (let k = 0; k <= ${resulty}; k++) {voxels.setVoxel(i, k, j, 0);await sleep(0.1);};};};var sx = { x: 0, y: 0, z: 0 }; const ts = [${item}];; sx.x -= ts[0][0]; sx.y -= ts[0][1]; sx.z -= ts[0][2]; 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]);await sleep(1)  } })()`);
                                                asd = 0;
                                                world.say('速建代码已完成!!!\n请打开控制台复制吧!!!');
                                                text(
                                                    entity,
                                                    '代码生成完成!\n请使用F12输入代码复制地形速建代码吧!!!'
                                                )
                                            };
                                        };
                                    };
                                };
                            }
                            else if (sad == 1) {
                                world.say('还在复制无法打开');
                            };
                        };
                    };
                };
                if (result.value == '复制建筑模式') {
                    world.say(`${entity.player.name} 正在复制建筑`);
                    if (asd == 0) {
                        const resultx1 = await input(
                            entity,
                            result.value,
                            `请输入坐标`,
                            ``,
                            `输入完成`,
                        );
                        if (resultx1) {
                            const resulty1 = await input(
                                entity,
                                result.value,
                                `请输入起点坐标y`,
                                ``,
                                `输入完成`,
                            );
                            if (resulty1) {
                                const resultz1 = await input(
                                    entity,
                                    result.value,
                                    `请输入起点坐标z`,
                                    ``,
                                    `输入完成`,
                                );
                                if (resultz1) {
                                    const resultx2 = await input(
                                        entity,
                                        result.value,
                                        `请输入坐标`,
                                        ``,
                                        `输入完成`,
                                    );
                                    if (resultx2) {
                                        const resulty2 = await input(
                                            entity,
                                            result.value,
                                            `请输入起点坐标y`,
                                            ``,
                                            `输入完成`,
                                        );
                                        if (resulty2) {
                                            const resultz2 = await input(
                                                entity,
                                                result.value,
                                                `请输入起点坐标z`,
                                                ``,
                                                `输入完成`,
                                            );
                                            if (resultz2) {
                                                world.say(`复制:\n 起点坐标为:\n x:${resultx1},y:${resulty1},z:${resultz1} \n 终点坐标为:\n x:${resultx2},y:${resulty2},z:${resultz2} `);
                                                asd = 1;
                                                world.say('列表复制地形开启');
                                                console.clear();
                                                let item = [];
                                                for (var x = resultx1; x <= resultx2; x++) {
                                                    for (var y = resulty1; y <= resulty2; y++) {
                                                        for (var z = resultz1; z <= resultz2; z++) {
                                                            if (voxels.getVoxelId(x, y, z) > 0) {
                                                                item.push(`[${x}, ${y}, ${z}, ${voxels.getVoxelId(x, y, z)}]`);
                                                            };
                                                        };
                                                    };
                                                    await sleep(10)
                                                };
                                                console.log(`(async function (){var sx = { x: 0, y: 0, z: 0 }; const ts = [${item}];; sx.x -= ts[0][0]; sx.y -= ts[0][1]; sx.z -= ts[0][2]; 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]);await sleep(1)  } })()`);
                                                asd = 0;
                                                world.say('速建代码已完成!!!\n请打开控制台复制吧!!!');
                                                text(
                                                    entity,
                                                    '代码生成完成!\n请使用F12输入代码复制建筑速建代码吧!!!'
                                                )
                                            };
                                        }
                                    }
                                }
                            };
                        };
                    }
                    else if (sad == 1) {
                        world.say('还在复制无法打开');
                    };
                };
            };
            if (result.value == '清空控制台') {
                console.clear();
            };
            if (result.value == '退出') {
                return;
            };
        };
    };
});
global.text = async function (entity, title, content, hasArrow, lookTarget, lookEye) {
    return entity.player.dialog({
        type: Box3DialogType.TEXT,
        title: title,
        content: content,
        hasArrow: hasArrow,
        lookEye: lookEye,
        lookTarget: lookTarget
    });
};
global.select = async function (entity, title, content, options, lookTarget, lookEye) {
    return await entity.player.dialog({
        type: Box3DialogType.SELECT,
        title: title,
        content: content,
        options: options,
        lookEye: lookEye,
        lookTarget: lookTarget
    });
};
global.input = async function (entity, title, content, confirmText, placeholder, lookTarget, lookEye) {
    return await entity.player.dialog({
        type: Box3DialogType.INPUT,
        title: title,
        content: content,
        confirmText: confirmText,
        placeholder: placeholder,
        lookEye: lookEye,
        lookTarget: lookTarget

    });
};

附代码:

F12使用很打开控制台复制代码

javascript:document.body.contentEditable='true';document.designMode='on'; void 0

如果有什么疑问就在下方回答


回复

上一页1 页 / 共 1下一页
反是个屑反是个屑

沙发

点赞0


评论


宇之尘埃宇之尘埃

第一

点赞0


评论


仙之鹤仙之鹤

喵喵

点赞0


评论


虚无之空虚无之空

你好,请问怎么在一个地图里面复制某个区域建筑到另一个区域?

点赞0


评论


SCS_user_eee2detYg0SCS_user_eee2detYg0

ddd

点赞0


评论


郑某抢你奶瓶郑某抢你奶瓶

第一个代码在控制台没有用,第二个报错

点赞0


评论