用户:
YDS尹子查看:21 回复:18 评论:21 创建时间:2020-07-01T14:04:00
这个代码实现的效果:
用指定方块填充两个坐标点之间区域。
注意事项:
1.起始点的坐标数值均需要比终止点坐标数值小,否则会卡bug。
2.如果由于数据填错而导致地图损毁,我(YDS尹子)概不负责。
3.保证代码没有问题。
操作说明:
start结构体存放起始点坐标数据,end结构体存放终止点坐标数据,block变量存放方块名。
详细的操作说明会在评论区展出。
代码:
var start={x:0,y:0,z:0};
var end={x:0,y:0,z:0};
var block="grass";
for(let i=start.x;i<=end.x;i++){for(let j=start.z;j<=end.z;j++){for(let k=start.y;k<=end.y;k++){
voxels.setVoxel(i,k,j,block);
}}}
YDS尹子http://www.yxtnt.cn/img/%E6%95%99%E7%A8%8B.mp4
教程地址
可能会有些卡,我服务器带宽不是很大。。。
看的时候注意视频下方控制台,那才是重点
点赞0
评论
YDS尹子升级啦!没有坐标位置要求了!
var start={x:0,y:0,z:0};
var end={x:0,y:0,z:0};
function reorder(){
if(start.x>end.x){
var a=start.x;start.x=end.x;end.x=a;
}
if(start.y>end.y){
var a=start.y;start.y=end.y;end.y=a;
}
if(start.z>end.z){
var a=start.z;start.z=end.z;end.z=a;
}
}
reorder()
var block="grass";
for(let i=start.x;i<=end.x;i++){for(let j=start.z;j<=end.z;j++){for(let k=start.y;k<=end.y;k++){
voxels.setVoxel(i,k,j,block);
}}}
点赞0
评论
YDS尹子升级版2
var start={x:0,y:0,z:0};
var end={x:0,y:0,z:0};
var block="grass";
function reorder(){
if(start.x>end.x){
var a=start.x;start.x=end.x;end.x=a;
}
if(start.y>end.y){
var a=start.y;start.y=end.y;end.y=a;
}
if(start.z>end.z){
var a=start.z;start.z=end.z;end.z=a;
}
}
reorder();
for(let i=start.x;i<=end.x;i++){for(let j=start.z;j<=end.z;j++){for(let k=start.y;k<=end.y;k++){
voxels.setVoxel(i,k,j,block);
}}}点赞1
评论