用户:
YDS尹子查看:2332 回复:38 评论:41 创建时间:2020-08-06T15:54:24

更新内容:
1.没洞了(保证)
2.更圆了
注意事项:
pos是球心位置
r是球半径
block是球材质
var pos=new Box3Vector3(83,20,108);
var r=12;
var block="stone";
for(let i=pos.x-r;i<=pos.x+r;i++){
for(let j=pos.z-r;j<=pos.z+r;j++){
for(let k=pos.y-r;k<=pos.y+r;k++){
if(new Box3Vector3(i,k,j).distance(pos)<=r){
voxels.setVoxel(i,k,j,block);
}
}
}
}
YDS尹子空心球:
var pos=new Box3Vector3(83,20,108);
var r=12;
var block="stone";
for(let i=pos.x-r;i<=pos.x+r;i++){
for(let j=pos.z-r;j<=pos.z+r;j++){
for(let k=pos.y-r;k<=pos.y+r;k++){
if(Math.ceil(new Box3Vector3(i,k,j).distance(pos))==r){
voxels.setVoxel(i,k,j,block);
}
}
}
}
点赞0
评论
喵是什么
distan ce
我直接蒙对了。
看看我给你发的邮件
我用这个代码做了个房子。
ac?
nc?
???
来打一架 https://box3create.codemao.cn/games/a4930806eb0aacacc7cd?p=f5ZcOPBilR%2FLjGPSAQL3%喵GmwC9ojxnz6RXYotwaFfFA96%2F1km8LgVndWVzdA%3D%3D
什么情况打什么呀?
这代码是什么原理啊
喵d
尹子,怎么弄空心半球体
啊哈拍到我啦
点赞0
评论
tody大佬,能来帮个忙吗? https://box3create.codemao.cn/games/3196fe72c0b74583d14e?p=a2vLILtMmzQSLs63VvK8K2MrSriLSzPvqcgMvgODpBA9vf%2BUa8LgNnbHk%3D
可以呀!你是mc玩家吧
点赞0
评论
来打一架 https://box3create.codemao.cn/games/a4930806eb0aacacc7cd?p=f5ZcOPBilR%2FLjGPSAQL3%2BGmwC9ojxnz6RXYotwaFfFA96%2F1km8LgVndWVzdA%3D%3D
懂了
我说这位迷你玩家,咱能不能好好相处呀?我能跟你交个朋友吗
我?
嗯呐。能交个朋友吗(就是互关)?
不可以互关doge
//稍加改良做出来的TNT破坏效果
async function sphere(vox, cx, cy, cz, radius){//参数分别是方块、x,y,z和圆的半径
let xend = cx+radius
let yend = cy+radius
let zend = cz+radius
for(let x=cx-radius;x<=xend;x++){
for(let y=cy-radius;y<=yend;y++){
for(let z=cz-radius;z<=zend;z++){
let dx = x-cx;
let dy = y-cy;
let dz = z-cz;
if(Math.round(Math.sqrt(dx*dx+dy*dy+dz*dz)) <= radius){
voxels.setVoxel(x,y,z,vox)
}
}}}
}
world.onPress(async({ button, entity, raycast }) => { //事件
if(button ==='action0'){
const ball =world.createEntity({//放个模型
mesh:"mesh/tnt.vb",
collides:true,
meshScale:[0.06,0.06,0.06],
position:[entity.position.x+raycast.direction.x, entity.position.y+raycast.direction.y, entity.position.z+raycast.direction.z],
})
ball.onVoxelContact(({ x, y, z, voxel }) => {//TNT碰到了方块
sphere('air',ball.position.x,ball.position.y,ball.position.z,3)//造一个空气球
ball.destroy()//删除TNT
});
ball.velocity.x += raycast.direction.x*2; ball.velocity.y += raycast.direction.y*2; ball.velocity.z += raycast.direction.z*2;
}
})点赞1
评论
利用了原本的原理,但是改成了不同的样子
需要的自取啊
()()()
收藏!