Theme
↑Back to Home

minecraft PC版1.13.1 木こりmodを1コマンドで再現

木こりの皆様に更なるお知らせをお届けします。

木こりmodの再現をコマンド1つで可能にしました!いくつものコマンドを用意する必要はありません。

スニーク状態で斧を使って原木を壊したときに、下方向を除く周囲の原木のみを破壊します。

大木も回収できます。パーティクルが多い(ジャングルの大木で最大4000)ので負荷がかかりますが、

前回のコマンドよりも破壊範囲が限定されているので若干軽いです。

マルチでも使えないことはないですが、やはり負荷が心配なところです。

 

■ 注意

 

コマンドを間違えるとワールドに入れなくなる事故に繋がる恐れがあります。コピー・ペーストで正確に設定してください。

 

■ コマンド

 

こちらのサイトでコマンドを1つにしました。ツールを公開してくださったmrgarretto氏に感謝!

私のfirefoxでは出力ボタンを押しても反応しませんでした。chromeなどで使用しましょう。

Command Combiner 1.13

(https://mrgarretto.com/cmdcombiner)

 

そしてコマンドがこちら ↓↓↓

 

 

 

 

 

summon falling_block ~ ~1 ~ {BlockState:{Name:stone},Time:1,Passengers:[{id:falling_block,BlockState:{Name:redstone_block},Time:1,Passengers:[{id:falling_block,BlockState:{Name:activator_rail},Time:1,Passengers:[{id:command_block_minecart,Command:"gamerule commandBlockOutput false"},{id:command_block_minecart,Command:"fill ~2 ~-3 ~-2 ~7 ~2 ~2 light_gray_terracotta hollow"},{id:command_block_minecart,Command:"fill ~2 ~-2 ~-2 ~7 ~1 ~2 purple_stained_glass replace light_gray_terracotta"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_sneak minecraft.custom:minecraft.sneak_time"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedOak minecraft.mined:minecraft.oak_log"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedSpruce minecraft.mined:minecraft.spruce_log"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedBirch minecraft.mined:minecraft.birch_log"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedJungle minecraft.mined:minecraft.jungle_log"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedAcacia minecraft.mined:minecraft.acacia_log"},{id:command_block_minecart,Command:"/scoreboard objectives add ZZCA_minedDark minecraft.mined:minecraft.dark_oak_log"},{id:command_block_minecart,Command:"setblock ~1 ~ ~ wall_sign[facing=west]{Text1:\"{\\\"text\\\":\\\"木こりコマンド装置\\\",\\\"bold\\\":true}\",Text2:\"{\\\"text\\\":\\\"\\\"}\",Text3:\"{\\\"text\\\":\\\"右クリで装置破壊\\\",\\\"color\\\":\\\"dark_red\\\",\\\"bold\\\":true,\\\"underlined\\\":true}\",Text4:\"{\\\"text\\\":\\\"\\\",\\\"clickEvent\\\":{\\\"action\\\":\\\"run_command\\\",\\\"value\\\":\\\"fill ~ ~-3 ~-2 ~6 ~2 ~2 air\\\"}}\"}"},{id:command_block_minecart,Command:"fill ~3 ~-2 ~-1 ~6 ~1 ~1 chain_command_block[facing=east]"},{id:command_block_minecart,Command:"setblock ~3 ~1 ~-1 chain_command_block[facing=up]"},{id:command_block_minecart,Command:"fill ~6 ~1 ~-1 ~4 ~1 ~-1 chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~1 ~ chain_command_block[facing=north]"},{id:command_block_minecart,Command:"setblock ~3 ~1 ~1 chain_command_block[facing=north]"},{id:command_block_minecart,Command:"fill ~6 ~1 ~1 ~4 ~1 ~1 chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~ ~1 chain_command_block[facing=up]"},{id:command_block_minecart,Command:"setblock ~3 ~ ~ chain_command_block[facing=south]"},{id:command_block_minecart,Command:"fill ~6 ~ ~ ~4 ~ ~ chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~ ~-1 chain_command_block[facing=south]"},{id:command_block_minecart,Command:"setblock ~3 ~-1 ~-1 chain_command_block[facing=up]"},{id:command_block_minecart,Command:"fill ~6 ~-1 ~-1 ~4 ~-1 ~-1 chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~-1 ~ chain_command_block[facing=north]"},{id:command_block_minecart,Command:"setblock ~3 ~-1 ~1 chain_command_block[facing=north]"},{id:command_block_minecart,Command:"fill ~6 ~-1 ~1 ~4 ~-1 ~1 chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~-2 ~1 chain_command_block[facing=up]"},{id:command_block_minecart,Command:"setblock ~3 ~-2 ~ chain_command_block[facing=south]"},{id:command_block_minecart,Command:"fill ~6 ~-2 ~ ~4 ~-2 ~ chain_command_block[facing=west]"},{id:command_block_minecart,Command:"setblock ~6 ~-2 ~-1 chain_command_block[facing=south]"},{id:command_block_minecart,Command:"setblock ~3 ~-2 ~-1 repeating_command_block[facing=east]"},{id:command_block_minecart,Command:"data merge block ~3 ~1 ~-1 {auto:1,Command:\"/tag @a[tag=ZZCA_usedAxes] remove ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~1 ~-1 {auto:1,Command:\"/tag @a[tag=ZZCA_minedLogs] remove ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~1 ~-1 {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedDark=1..}] ZZCA_minedDark\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~1 ~-1 {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedAcacia=1..}] ZZCA_minedAcacia\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~1 ~ {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedJungle=1..}] ZZCA_minedJungle\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~1 ~ {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedBirch=1..}] ZZCA_minedBirch\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~1 ~ {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedSpruce=1..}] ZZCA_minedSpruce\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~1 ~ {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_minedOak=1..}] ZZCA_minedOak\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~1 ~1 {auto:1,Command:\"/scoreboard players reset @a[scores={ZZCA_sneak=1..}] ZZCA_sneak\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~1 ~1 {auto:1,Command:\"/kill @e[tag=ZZCA_cutterRoot]\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~1 ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~1 ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~ ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~ ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~ ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~ ~1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~ ~ {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~ ~ {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~ ~ {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~ ~ {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~ ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~ ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~ ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~ ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-1 ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-1 ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-1 ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-1 ~-1 {auto:1,Command:\"/execute as @e[tag=ZZCA_cutterRoot] at @s if block ~ ~ ~ #minecraft:logs run setblock ~ ~ ~ minecraft:air destroy\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-1 ~ {auto:1,Command:\"/tag @e[type=armor_stand,name=\\\"ZZCA_cutter\\\"] add ZZCA_cutterRoot\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-1 ~ {auto:1,Command:\"/execute as @e[tag=ZZCA_logs] at @s run tp @s @p\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-1 ~ {auto:1,Command:\"/execute as @p[tag=ZZCA_usedAxes] at @s run execute as @e[distance=1..6,tag=ZZCA_logs] at @s align xyz run summon armor_stand ~ ~ ~ {CustomName:\\\"\\\\\\\"ZZCA_cutter\\\\\\\"\\\",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-1 ~ {auto:1,Command:\"/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:\\\"minecraft:diamond_axe\\\"}}] add ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-1 ~1 {auto:1,Command:\"/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:\\\"minecraft:golden_axe\\\"}}] add ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-1 ~1 {auto:1,Command:\"/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:\\\"minecraft:iron_axe\\\"}}] add ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-1 ~1 {auto:1,Command:\"/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:\\\"minecraft:stone_axe\\\"}}] add ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-1 ~1 {auto:1,Command:\"/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:\\\"minecraft:wooden_axe\\\"}}] add ZZCA_usedAxes\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-2 ~1 {auto:1,Command:\"/tag @p[scores={ZZCA_minedDark=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-2 ~1 {auto:1,Command:\"/tag @p[scores={ZZCA_minedAcacia=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-2 ~1 {auto:1,Command:\"/tag @p[scores={ZZCA_minedJungle=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-2 ~1 {auto:1,Command:\"/tag @p[scores={ZZCA_minedBirch=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-2 ~ {auto:1,Command:\"/tag @p[scores={ZZCA_minedSpruce=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-2 ~ {auto:1,Command:\"/tag @p[scores={ZZCA_minedOak=1}] add ZZCA_minedLogs\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-2 ~ {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:dark_oak_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-2 ~ {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:acacia_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"data merge block ~6 ~-2 ~-1 {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:jungle_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"data merge block ~5 ~-2 ~-1 {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:birch_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"data merge block ~4 ~-2 ~-1 {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:spruce_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"data merge block ~3 ~-2 ~-1 {auto:1,Command:\"/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:\\\"minecraft:oak_log\\\"}}] add ZZCA_logs\"}"},{id:command_block_minecart,Command:"setblock ~ ~ ~1 command_block{Command:\"fill ~ ~-3 ~-1 ~ ~ ~ air\"}"},{id:command_block_minecart,Command:"setblock ~ ~-1 ~1 redstone_block"},{id:command_block_minecart,Command:"kill @e[type=command_block_minecart,distance=..1]"}]}]}]}

 

 

 

 

 

(文字数: 15402)

 

上記のコマンドをImpulseコマンドブロックを使って実行すると、東側に木こり装置が出現します。

十分なスペースを確保してください。

 

Command Combinerに入力したコマンドはこちらです。

木こり装置のサイズやデザインを自分で指定したいときや、使用する斧の限定などの改造をしたいときにお使いください。

 

/*INIT:
/scoreboard objectives add ZZCA_sneak minecraft.custom:minecraft.sneak_time
/scoreboard objectives add ZZCA_minedOak minecraft.mined:minecraft.oak_log
/scoreboard objectives add ZZCA_minedSpruce minecraft.mined:minecraft.spruce_log
/scoreboard objectives add ZZCA_minedBirch minecraft.mined:minecraft.birch_log
/scoreboard objectives add ZZCA_minedJungle minecraft.mined:minecraft.jungle_log
/scoreboard objectives add ZZCA_minedAcacia minecraft.mined:minecraft.acacia_log
/scoreboard objectives add ZZCA_minedDark minecraft.mined:minecraft.dark_oak_log
*/
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:oak_log"}}] add ZZCA_logs
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:spruce_log"}}] add ZZCA_logs
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:birch_log"}}] add ZZCA_logs
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:jungle_log"}}] add ZZCA_logs
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:acacia_log"}}] add ZZCA_logs
/tag @e[tag=!ZZCA_logs,type=item,nbt={Item:{id:"minecraft:dark_oak_log"}}] add ZZCA_logs
/tag @p[scores={ZZCA_minedOak=1}] add ZZCA_minedLogs
/tag @p[scores={ZZCA_minedSpruce=1}] add ZZCA_minedLogs
/tag @p[scores={ZZCA_minedBirch=1}] add ZZCA_minedLogs
/tag @p[scores={ZZCA_minedJungle=1}] add ZZCA_minedLogs
/tag @p[scores={ZZCA_minedAcacia=1}] add ZZCA_minedLogs
/tag @p[scores={ZZCA_minedDark=1}] add ZZCA_minedLogs
/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:"minecraft:wooden_axe"}}] add ZZCA_usedAxes
/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:"minecraft:stone_axe"}}] add ZZCA_usedAxes
/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:"minecraft:iron_axe"}}] add ZZCA_usedAxes
/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:"minecraft:golden_axe"}}] add ZZCA_usedAxes
/tag @p[tag=ZZCA_minedLogs,scores={ZZCA_sneak=1..},nbt={SelectedItem:{id:"minecraft:diamond_axe"}}] add ZZCA_usedAxes
/execute as @p[tag=ZZCA_usedAxes] at @s run execute as @e[distance=1..6,tag=ZZCA_logs] at @s align xyz run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_logs] at @s run tp @s @p
/tag @e[type=armor_stand,name="ZZCA_cutter"] add ZZCA_cutterRoot
/execute as @e[tag=ZZCA_cutterRoot] at @s if block ~ ~ ~ #minecraft:logs run setblock ~ ~ ~ minecraft:air destroy
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~ ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~-1 ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~ ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~-1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~ align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/execute as @e[tag=ZZCA_cutterRoot] at @s positioned ~1 ~1 ~1 align xyz if block ~ ~ ~ #minecraft:logs unless entity @e[type=armor_stand,distance=0] run summon armor_stand ~ ~ ~ {CustomName:"\"ZZCA_cutter\"",NoGravity:true,Invisible:true,Invulnerable:true,Small:true}
/kill @e[tag=ZZCA_cutterRoot]
/scoreboard players reset @a[scores={ZZCA_sneak=1..}] ZZCA_sneak
/scoreboard players reset @a[scores={ZZCA_minedOak=1..}] ZZCA_minedOak
/scoreboard players reset @a[scores={ZZCA_minedSpruce=1..}] ZZCA_minedSpruce
/scoreboard players reset @a[scores={ZZCA_minedBirch=1..}] ZZCA_minedBirch
/scoreboard players reset @a[scores={ZZCA_minedJungle=1..}] ZZCA_minedJungle
/scoreboard players reset @a[scores={ZZCA_minedAcacia=1..}] ZZCA_minedAcacia
/scoreboard players reset @a[scores={ZZCA_minedDark=1..}] ZZCA_minedDark
/tag @a[tag=ZZCA_minedLogs] remove ZZCA_minedLogs
/tag @a[tag=ZZCA_usedAxes] remove ZZCA_usedAxes

 

■ コマンド解説

 

1 アイテム化した原木をすべてタグ付け

2 各種原木ブロックを壊したプレイヤーをタグ付け

3 そのタグが付いていて、スニークしていて、手に各種斧を持っているプレイヤーをタグ付け

(スニークしながら斧を使って木を壊したプレイヤーを特定)

4 そのプレイヤーから1~6ブロック離れた原木アイテムの位置に小さいアーマースタンドを召喚

5 原木を近くのプレイヤーに集める (アーマースタンドが誤った位置に召喚されるのを防ぐため)

6 現在召喚されているアーマースタンドにタグ付け (これを基準とし、これから召喚するアーマースタンドと区別するため)

7 アーマースタンドの位置の原木を破壊(処理ループ2回目から機能する)

8 基準となるアーマースタンドから3*2*3の範囲で原木の位置にすでにアーマースタンドが召喚されていなければ召喚

なおアーマースタンドがあるかどうか調べないと、2*2の大木で万単位のアーマースタンドを出すことになりワールド終了(1敗)

9 基準のアーマースタンドを撤去 (残ったアーマースタンドは次tickに基準となる)

10 各スコア・タグのリセット

残っている木は次のtickで6からの流れで処理されていく

 

より軽量化させるなら、6からの木を破壊する処理に間隔をつけてパーティクルの同時発生を抑える感じでしょうか。

 

それでは快適な木こりを (forgeか、もしくはRiftでmodが新しく作られれば・・・)

Share on Twitter