-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path方块物理代码.js
56 lines (56 loc) · 3.07 KB
/
方块物理代码.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
var x;
var y;
var z;
world.onTick(({ tick }) => {
if(tick%1==0){
for (x = 0; x <= 128; x++){
for (y = 0; y <= 128; y++){
for (z = 0; z <= 128; z++){
if(voxels.getVoxelId(x,y,z)==voxels.id('sand')&&voxels.getVoxelId(x,y-1,z)==voxels.id('air')&&y>0){
voxels.setVoxel(x,y-1,z,voxels.id('sand'));
voxels.setVoxel(x,y,z,0);
}
if(voxels.getVoxelId(x,y,z)==voxels.id('dirt')&&voxels.getVoxelId(x,y-1,z)==voxels.id('air')&&y>0){
voxels.setVoxel(x,y-1,z,voxels.id('dirt'));
voxels.setVoxel(x,y,z,0);
}
if(voxels.getVoxelId(x,y,z)==voxels.id('grass')&&voxels.getVoxelId(x,y-1,z)==voxels.id('air')&&y>0){
voxels.setVoxel(x,y-1,z,voxels.id('grass'));
voxels.setVoxel(x,y,z,0);
}
if(voxels.getVoxelId(x,y,z)==voxels.id('white_grass')&&voxels.getVoxelId(x,y-1,z)==voxels.id('air')&&y>0){
voxels.setVoxel(x,y-1,z,voxels.id('white_grass'));
voxels.setVoxel(x,y,z,0);
}
if(voxels.getVoxelId(x,y,z)==voxels.id('dirt')&&voxels.getVoxelId(x,y+1,z)==voxels.id('air')){
voxels.setVoxel(x,y,z,voxels.id('grass'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('grass')&&voxels.getVoxelId(x,y+1,z)!=voxels.id('air')){
voxels.setVoxel(x,y,z,voxels.id('dirt'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('blue_surface_01')&&voxels.getVoxelId(x,y+1,z)==voxels.id('air')){
voxels.setVoxel(x,y,z,voxels.id('snowland'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('snowland')&&voxels.getVoxelId(x,y+1,z)!=voxels.id('air')){
voxels.setVoxel(x,y,z,voxels.id('blue_surface_01'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x,y-1,z)==voxels.id('air')){
voxels.setVoxel(x,y-1,z,voxels.id('water'));
}else if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x,y-1,z)!=voxels.id('water')){
if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x-1,y,z)==voxels.id('air')){
voxels.setVoxel(x-1,y,z,voxels.id('water'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x+1,y,z)==voxels.id('air')){
voxels.setVoxel(x+1,y,z,voxels.id('water'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x,y,z-1)==voxels.id('air')){
voxels.setVoxel(x,y,z-1,voxels.id('water'));
}
if(voxels.getVoxelId(x,y,z)==voxels.id('water')&&voxels.getVoxelId(x,y,z+1)==voxels.id('air')){
voxels.setVoxel(x,y,z+1,voxels.id('water'));
}}
}
}
}
}
});