猫史档案馆


[每日一氵]非常食用的建图小工具

用户:伴雪纷飞伴雪纷飞查看:16 回复:22 评论:16 创建时间:2023-01-09T19:00:21


为了方便大家复制( )

代码在防一遍

*分三次输入到控制台

1.

ctrl=['add','subtract','multiply','pound'];
assist=['zero'];
pl=[];
for (y = 0; y <= voxels.shape.y*2; y++) {
for (x = 0; x <= voxels.shape.x*2; x++) {
for (z = 0; z <= voxels.shape.z*2; z++) {
    if(ctrl.includes(voxels.name(voxels.getVoxelId(x,y,z)))){
        pl.push([x,y,z,voxels.name(voxels.getVoxelId(x,y,z))]);
    }
    if(assist.includes(voxels.name(voxels.getVoxelId(x,y,z)))){
        voxels.setVoxel(x,y,z,'');
}}}}
temp={
    add:undefined,
    subtract:undefined,
    circle:undefined,
}

2.

pl.forEach((item)=>{
    switch(item[3]){
        case "add":
            if(!temp.add){
                temp.add=item;
                voxels.setVoxel(item[0],item[1]+1,item[2],'');
                return;
            }
            epos=new Box3Vector3(Math.max(item[0],temp.add[0]),Math.max(item[1],temp.add[1]),Math.max(item[2],temp.add[2]));
            spos=new Box3Vector3(Math.min(item[0],temp.add[0]),Math.min(item[1],temp.add[1]),Math.min(item[2],temp.add[2]));
            for(i=spos.x;i<=epos.x;i++){for(j=spos.z;j<=epos.z;j++){for(k=spos.y;k<=epos.y;k++){
                voxels.setVoxel(i,k,j,voxels.name(voxels.getVoxelId(item[0],item[1]+1,item[2])));
            }}}
            voxels.setVoxel(item[0],item[1]+1,item[2],'');
            
        break;

        case "subtract":
            
            if(!temp.subtract){ 
                temp.subtract=item;
                voxels.setVoxel(item[0],item[1]+1,item[2],'');
                return;
            }
            
            epos=new Box3Vector3(Math.max(item[0],temp.subtract[0]),Math.max(item[1],temp.subtract[1]),Math.max(item[2],temp.subtract[2]));
            spos=new Box3Vector3(Math.min(item[0],temp.subtract[0]),Math.min(item[1],temp.subtract[1]),Math.min(item[2],temp.subtract[2]));
            
            for(i=spos.x;i<=epos.x;i++){for(j=spos.z;j<=epos.z;j++){for(k=spos.y;k<=epos.y;k++){
                if(i==spos.x||j==spos.z||i==epos.x||j==epos.z){
                voxels.setVoxel(i,k,j,voxels.name(voxels.getVoxelId(item[0],item[1]+1,item[2])));
            }}}}
            voxels.setVoxel(item[0],item[1]+1,item[2],'');
        break;
    }
})

3.

function circle(item,_item){
    radius=Math.sqrt(Math.pow(item[0]-_item[0],2)+Math.pow(item[2]-_item[2],2));
            vox=voxels.name(voxels.getVoxelId(item[0],item[1]+1,item[2]));
    cx=item[0];
    cz=item[2];
    for(x=cx-radius; x<=cx+radius; x++){
    for(z=cz-radius; z<=cz+radius; z++){
        dx = x-cx;dz = z-cz;
        if(Math.round(Math.sqrt(dx*dx+dz*dz)) <= radius){
            voxels.setVoxel(x,item[1],z,vox);

        }
    }}


}
pl.forEach((item)=>{
    switch(item[3]){
        case "multiply":
            if(!temp.circle){
                temp.circle=item;
                return;
            }
            circle(item,temp.circle);
            voxels.setVoxel(item[0],item[1]+1,item[2],'');
            
        break;
        case "pound":
            
            if(!temp.circle){ 
                temp.circle=item;
                return;
            }
            circle(temp.circle,item);
            voxels.setVoxel(item[0],item[1]+1,item[2],'');
        break;
        case "equal":
            
            if(!temp.face){
                temp.face=item;
            }
            else if(temp.face[1]>item[1]){
                temp.face=item;
            }
            voxels.setVoxel(item[0],item[1]+1,item[2],'');
        break;   

    }
    
})

 

因为编创协的md编辑器发不了贴了( )

就将md转图片发了


回复

上一页1 页 / 共 1下一页
伴雪纷飞伴雪纷飞

因为转图片了

颜色高亮没有了

烦请逐字阅读 awa( )

点赞0


评论


云游box3der尖头叉子云游box3der尖头叉子

沙发+支持()

点赞1


评论


名探酱名探酱

非常有用()ddd()

点赞0


评论


ficfrkficfrk

qp()

点赞0


评论


_HHHHHHHHHH__HHHHHHHHHH_

点赞0


评论


碗家乐碗家乐

棒棒

点赞0


评论


时光紫烟时光紫烟

world.say('吉吉喵 进入了地图');

点赞1


评论


云游box3der尖头叉子云游box3der尖头叉子

《每日》今天的和昨天的呢doge

点赞2


评论


Bamshine竹潇Bamshine竹潇

👍👍👍👍

点赞0


评论


YLG_個YLG_個

收藏——

点赞0


评论


1086爱编程1086爱编程

《复制方块》

点赞0


评论


AokenAoken

收藏

点赞0


评论


ZNS_哪吒ZNS_哪吒

夹吃灰()

点赞0


评论


raearaea

收藏

点赞0


评论


外向的雷电猴-LHA外向的雷电猴-LHA

收藏

点赞0


评论


一只飞鸽一只飞鸽

最上面一句不大对劲)

点赞0


评论


YLG_個YLG_個

第二段的代码复制后就能建造了)第三段有什么用呢)

点赞0


评论


yee剑走天下yee剑走天下

不明觉厉

点赞0


评论


Dang的猫猫Dang的猫猫

主机:我_*/#*@@!!##/?--/&/[}{>>|}]

点赞0


评论


AokenAoken

喵d

点赞0


评论


AokenAoken

ddd

点赞0


评论


AokenAoken

center_image

点赞2


评论