summaryrefslogtreecommitdiff
path: root/data/onechunk/functions/initialize.mcfunction
blob: 5d6766c064f5ee20a9088af069b3a32f1a3f0ef4 (plain)
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
scoreboard players set $chunkSize onechunk_data 16

execute store result score $posX onechunk_data run data get entity @p Pos[0]
execute store result score $posZ onechunk_data run data get entity @p Pos[2]

# posX - ( posX % 16 )
# posZ - ( posZ % 16 )
# = chunk start corner
# + 15 = chunk end corner

execute store result score $chunkStartX onechunk_data run scoreboard players get $posX onechunk_data
execute store result score $tmp onechunk_data run scoreboard players get $posX onechunk_data
scoreboard players operation $tmp onechunk_data %= $chunkSize onechunk_data
scoreboard players operation $chunkStartX onechunk_data -= $tmp onechunk_data

execute store result score $chunkStartZ onechunk_data run scoreboard players get $posZ onechunk_data
execute store result score $tmp onechunk_data run scoreboard players get $posZ onechunk_data
scoreboard players operation $tmp onechunk_data %= $chunkSize onechunk_data
scoreboard players operation $chunkStartZ onechunk_data -= $tmp onechunk_data

execute store result score $chunkCenterX onechunk_data run scoreboard players get $chunkStartX onechunk_data
scoreboard players set $tmp onechunk_data 8
scoreboard players operation $chunkCenterX onechunk_data += $tmp onechunk_data

execute store result score $chunkCenterZ onechunk_data run scoreboard players get $chunkStartZ onechunk_data
scoreboard players set $tmp onechunk_data 8
scoreboard players operation $chunkCenterZ onechunk_data += $tmp onechunk_data

summon armor_stand ~ ~ ~ {NoGravity:1,Invulnerable:1,Invisible:1,Tags:["teleport_target"]}
execute store result entity @e[tag=teleport_target,limit=1] Pos[0] double 1 run scoreboard players get $chunkCenterX onechunk_data
execute store result entity @e[tag=teleport_target,limit=1] Pos[2] double 1 run scoreboard players get $chunkCenterZ onechunk_data
execute store result entity @e[tag=teleport_target,limit=1] Pos[1] double 1 run data get entity @p Pos[1]

tp @p @e[tag=teleport_target,limit=1]
kill @e[tag=teleport_target]
execute as @p run worldborder center ~ ~
worldborder set 16

#fill 
#X-1 -64 Z-1 X+15+1 319 Z-1
#X-1 -64 Z-1 X-1 219 Z+15+1
#X+15+1 -64 Z-1 X+15+1 219 Z+15+1
#X-1 -64 Z+15+1 X+15+1 219 Z+15+1