Minecraft(我的世界)中文论坛

标题: [1.12.2]能不能在所有指定方块下面放置一种方块

作者: 猜猜谁是谁    时间: 2018-1-15 20:07
标题: [1.12.2]能不能在所有指定方块下面放置一种方块
异想天开系列
如题 好像没什么好说的了emmmm

作者: pineapple_    时间: 2018-1-15 20:07
楼主说可以指定范围,然而问题还是太抽象,我就按照我自己的理解来写了

按你说的

比如要以 x y z为基点,长宽高10 20 30大小的长方体体积内,在所有命令方块下放一个命令方块

xyz均为某实体[tag=pos]在XYZ记分版的分数

  1. gamerule gameLoopFucntion a:b

  2. a\b.mcfunction:
  3. summon area_effect_cloud ~ ~ ~ {Tags:["marker"]}
  4. tp @e[tag=marker] 0 0 0
  5. function a:c
  6. function a:d
  7. function a:e

  8. a\c.mcfunction:
  9. tp @e[tag=marker] ~1 ~ ~
  10. scoreboard players add @e[tag=pos,score_X=-1] X 1
  11. scoreboard players remove @e[tag=pos,score_X_min=1] X 1
  12. function a:c unless @e[tag=pos,score_X_min=0,score_X=0]

  13. a\d.mcfunction:
  14. tp @e[tag=marker] ~ ~1 ~
  15. scoreboard players add @e[tag=pos,score_Y=-1] Y 1
  16. scoreboard players remove @e[tag=pos,score_Y_min=1] Y 1
  17. function a:d unless @e[tag=pos,score_Y_min=0,score_Y=0]

  18. a\e.mcfunction:
  19. tp @e[tag=marker] ~ ~ ~1
  20. scoreboard players add @e[tag=pos,score_Z=-1] Z 1
  21. scoreboard players remove @e[tag=pos,score_Z_min=1] Z 1
  22. function a:e unless @e[tag=pos,score_Z_min=0,score_Z=0]

  23. a\b.mcfunction续:
  24. summon area_effect_cloud ~ ~ ~ {Tags:["pos2"]}
  25. scoreboard players set @e[tag=pos2] X 9
  26. scoreboard players set @e[tag=pos2] Y 19
  27. scoreboard players set @e[tag=pos2] Z 29
  28. function a:f
  29. function a:g
  30. function a:h

  31. a\f.mcfunction:
  32. execute @e[tag=pos] ~1 ~ ~ function a:i unless @e[tag=pos,r=1]
  33. a\i.mcfunction:
  34. summon area_effect_cloud ~ ~ ~ {Tags:["pos"]}
  35. a\f.mcfuntion续:
  36. scoreboard players remove @e[tag=pos2] X 1
  37. function a:f if @e[tag=pos2,score_X_min=1]

  38. a\g.mcfunction:
  39. execute @e[tag=pos] ~ ~1 ~ function a:i unless @e[tag=pos,r=1]
  40. scoreboard players remove @e[tag=pos2] Y 1
  41. function a:g if @e[tag=pos2,score_Y_min=1]

  42. a\h.mcfunction
  43. execute @e[tag=pos] ~ ~ ~1 function a:i unless @e[tag=pos,r=1]
  44. scoreboard players remove @e[tag=pos2] Z 1
  45. function a:h if @e[tag=pos2,score_Z_min=1]

  46. a\b.mcfunction续:
  47. execute @e[tag=pos] ~ ~ ~ detect ~ ~1 ~ commond_block -1 setblock ~ ~ ~ command_block 0 replace
  48. kill @e[tag=pos]
  49. kill @e[tag=pos2]
复制代码

作者: 2544673738    时间: 2018-1-15 20:18
能能能能能能能能能能能能能能能能能能能能能能
作者: pineapple_    时间: 2018-1-15 20:43
告诉我什么叫所有指定方块,怎么指定的,指定什么了
作者: pineapple_    时间: 2018-1-15 21:40
pineapple_ 发表于 2018-1-15 21:32
楼主说可以指定范围,然而问题还是太抽象,我就按照我自己的理解来写了

按你说的

写gamerule写习惯了,把gamerule gameLoopFunction改成/function
作者: ruhuasiyu    时间: 2018-1-15 22:32
pineapple_ 发表于 2018-1-15 20:07
楼主说可以指定范围,然而问题还是太抽象,我就按照我自己的理解来写了

按你说的

为啥不用替换掉落大法?先replace 成诸如半个门,然后在门下放置,杀死门
作者: pineapple_    时间: 2018-1-15 22:39
abcdef.rar (2.04 KB, 下载次数: 0)
上面的命令有点问题,修改了一下,直接丢function了,内附说明
作者: pineapple_    时间: 2018-1-15 22:40
ruhuasiyu 发表于 2018-1-15 22:32
为啥不用替换掉落大法?先replace 成诸如半个门,然后在门下放置,杀死门

那原来的方块不就没了……
作者: ruhuasiyu    时间: 2018-1-15 22:41
pineapple_ 发表于 2018-1-15 22:40
那原来的方块不就没了……

没了再放回去呗……
作者: ruhuasiyu    时间: 2018-1-15 22:57
pineapple_ 发表于 2018-1-15 22:40
那原来的方块不就没了……

带nbt的可以克隆走再克隆回来