【我的世界】全自動(dòng)遞歸地皮

(視頻里的地皮高度:150,傳送到坐標(biāo)0 150 0輸指令)
記錄坐標(biāo)1:對(duì)角臺(tái)階后5格位置
記錄坐標(biāo)2:地皮內(nèi)部任意坐標(biāo)
一、建造地皮模板(聊天欄輸入)
填充道路:/fill ~~~ ~59~~59 calcite
填充拒絕:/fill ~~-2~ ~59~-2~59 deny
填充草塊:/fill ~~-1~ ~49~-6~49 grass
填充基巖:/fill ~~-7~ ~49~-7~49 bedrock
填充臺(tái)階:/fill ~~~ ~49~~49 stone_slab3 2
填充空氣:/fill ~1~~1 ~48~~48 air
填充邊界:/fill ~~-8~ ~49~-8~49 border_block
填充空氣:/fill ~1~-8~1 ~48~-8~48 air
填充墻面:/fill ~~~ ~59~4~ quartz_block
關(guān)閉邊界方塊粒子:/gamerule showbordereffect false
二、建密碼門(mén):
①execute @p ~~~ detect ~ y ~ bedrock 0 tp @s ~-4 ~~ (y是地皮高度減6)
②testforblocks ~~3~ ~~3~ ~1~~
③setblock ~~4~ chest 4 destroy
④kill @e[type=item,x=~,y=~5,z=~,r=2,name=箱子]
⑤tp @e[type=item,x=~,y=~7,z=~,r=2] ~5 ~6 ~
⑥tp @p ~5~7~
⑦title @p[x=~5,y=~8,z=~,r=2] actionbar §l§a密碼正確
禁物品和實(shí)體(不建議做)
①execute @a[dx=60,dy=100,dz=55] ~~~ clear @s chorus_fruit
②execute @a[dx=60,dy=100,dz=55] ~~~ clear @s ender_pearl
③kill @e[type=tnt,dx=60,dy=100,dz=55]
④kill @e[type=boat,dx=60,dy=100,dz=55]
⑤tp @e[type=wither,dx=60,dy=100,dz=55] ~ -65 ~
⑥kill @e[type=ender_pearl,dx=60,dy=100,dz=55]
放結(jié)構(gòu)方塊,/give @s structure_block 然后再確保密碼門(mén)上下兩個(gè)箱子都是空的,xyz調(diào)成60 50 55 偏移調(diào)為0 1 0,命名為地皮模板,保存結(jié)構(gòu)。
三、購(gòu)買(mǎi)地皮(需要先做金幣系統(tǒng))
地皮id=0 : 沒(méi)買(mǎi)過(guò)地皮的人
地皮id=1.. : 買(mǎi)過(guò)地皮的人
①title @p[scores={金幣=..999,地皮id=0},r=5] title §l§c金幣不足!
②execute @p[scores={地皮id=1..},r=5] ~~~ title @s title §l§c您已買(mǎi)過(guò)地皮!
③execute @p[scores={金幣=1000..,地皮id=0},r=5] ~~~ tag @s add 創(chuàng)建
④execute @p[tag=創(chuàng)建] ~~~ scoreboard players remove @s 金幣 1000
⑤execute @p[tag=創(chuàng)建] ~~~ scoreboard players add 地皮數(shù)量 地皮id 1
⑥scoreboard players operation @p[tag=創(chuàng)建] 地皮id = 地皮數(shù)量 地皮id
⑦tp @p[tag=創(chuàng)建] x y z(坐標(biāo)1的z坐標(biāo)減55)
⑧execute @p[tag=創(chuàng)建] ~~~ scoreboard players operation @s 地皮傳送 = @s 地皮id
⑨t(yī)ag @p[tag=創(chuàng)建] add 生成
⑩tag @a remove 創(chuàng)建
四、返回地皮
①tag @p[scores={地皮id=1..},r=5] add 返回
②tp @a[tag=返回] x y z(坐標(biāo)2的z坐標(biāo)-55)
③execute @a[tag=返回] ~~~ scoreboard players operation @s 地皮傳送 = @s 地皮id
④title @a[tag=返回] title §l§aWelcome back
⑤title @a[tag=返回] subtitle §7- §d@a[tag=返回] §7-
⑥tag @a remove 返回
五、指令區(qū)(這部分都要放在常加載區(qū))
前置指令:
①/scoreboard objectives add 地皮id dummy
②/scoreboard objectives add 地皮傳送 dummy
③/scoreboard players set 地皮數(shù)量 地皮id 0
生成地皮:
①scoreboard players add @a 地皮id 0
②execute @a[scores={地皮傳送=1..}] ~~~ tp @s ~ y ~55(y是地皮高度+1,55是地皮邊長(zhǎng)50+道路寬度5=55)
③execute @a[scores={地皮傳送=1..}] ~~~ scoreboard players remove @s 地皮傳送 1
④execute @a[tag=生成,scores={地皮傳送=0}] ~~~ structure load 地皮模板 ~~-8~
⑤execute @a[tag=生成,scores={地皮傳送=0}] ~~~ tp @s ~15~15~15
⑥execute @a[tag=生成,scores={地皮傳送=0}] ~~~ tellraw @s {"rawtext":[{"text":"§l§a創(chuàng)建地皮成功!§r
-請(qǐng)及時(shí)在地皮門(mén)口下方的箱子里放入物品充當(dāng)鑰匙。
-設(shè)置完密碼可以用草方塊堵上箱子。
-地皮區(qū)禁用末影珍珠、紫頌果、船、TNT和召喚凋零。"}]}
⑦execute @a[tag=生成,scores={地皮傳送=0}] ~~~ effect @s slow_falling 10 255 true
⑧tag @a[scores={地皮傳送=0}] remove 生成
重置地皮(慎用):
①scoreboard players reset * 地皮id
②scoreboard players reset * 地皮傳送
③scoreboard players set 地皮數(shù)量 地皮id 0
六、訪客傳送(選做)
①/scoreboard objectives add 輸入 dummy
②/scoreboard players set 十 輸入 10
③scoreboard players operation @p 輸入 *= 十 輸入
④scoreboard players add @p 輸入 數(shù)字
⑤scoreboard players operation @p 輸入 /= 十 輸入
數(shù)字過(guò)大重置:
①execute @a[scores={輸入=99999..}] ~~~ title @s title §l§d輸入數(shù)字過(guò)大!
②execute @a[scores={輸入=99999..}] ~~~
scoreboard players reset @s 輸入
范圍顯示:execute @a[r=6] ~~~ titleraw @s actionbar {"rawtext":[{"text":"§l§b當(dāng)前輸入訪問(wèn)的地皮id§f: "},{"score":{"name":"@s","objective":"輸入"}},{"text":"\n§d您的地皮id§f: "},{"score":{"name":"@s","objective":"地皮id"}}]}
確定傳送:
①execute @p[scores={輸入=1..}] ~~~ scoreboard players operation 地皮數(shù)量 輸入 = @s 輸入
②scoreboard players operation 地皮數(shù)量 輸入 -= 地皮數(shù)量 地皮id
③scoreboard players test 地皮數(shù)量 輸入 1 *
④title @p[scores={輸入=1..}] title §l§d您輸入的地皮id不存在!
⑤scoreboard players test 地皮數(shù)量 輸入 * 0
⑥tag @p[scores={輸入=1..}] add 訪客
⑦tp @a[tag=訪客] x y z(坐標(biāo)1的z坐標(biāo)減55)
⑧scoreboard players operation @a[tag=訪客] 地皮傳送 = @a[tag=訪客] 輸入
⑨t(yī)itle @a[tag=訪客] title §l§a傳送成功!
⑩tag @a remove 訪客
?scoreboard players reset @a 輸入
?scoreboard players reset 地皮數(shù)量 輸入
關(guān)閉傳送指令刷屏:/gamerule sendcommandfeedback false