@@ -35,9 +35,12 @@
# east : ~0.01 ~-1 ~0.5 yaw -90
# east : ~0.01 ~-1 ~0.5 yaw -90
# west : ~0.99 ~-1 ~0.5 yaw 90
# west : ~0.99 ~-1 ~0.5 yaw 90
# ---- 비활성: 버튼 제거 + interaction 응답 차단 후 종료 ----
# ---- 비활성: 블록 + interaction × 3 + text_display 전부 제거 후 종료 ----
# data modify entity @e[...] 는 대상 1개 강제 → interaction 3개 모드에선
# 못 쓰므로 그냥 kill. 어차피 버튼 블록도 air 로 바꾸므로 라벨도 같이 제거.
$execute if score $ ( n ) buttons matches .. -2 run setblock $ ( x ) $ ( y ) $ ( z ) minecraft:air
$execute if score $ ( n ) buttons matches .. -2 run setblock $ ( x ) $ ( y ) $ ( z ) minecraft:air
$execute if score $ ( n ) buttons matches .. -2 run data modify entity @e [ type = minecraft:interaction , tag = mq , tag = $ ( n ) ] response set value 0b
$execute if score $ ( n ) buttons matches .. -2 run kill @e [ type = minecraft:interaction , tag = mq , tag = $ ( n ) ]
$execute if score $ ( n ) buttons matches .. -2 run kill @e [ type = minecraft:text_display , tag = mq , tag = $ ( n ) ]
$execute if score $ ( n ) buttons matches .. -2 run return 0
$execute if score $ ( n ) buttons matches .. -2 run return 0
# ---- 초기화: 블록 + interaction × 3 + text_display 보장 ----
# ---- 초기화: 블록 + interaction × 3 + text_display 보장 ----
@@ -48,25 +51,25 @@ $execute if score $(n) buttons matches -1 run kill @e[type=minecraft:text_displa
# south: 깊이축=z(+0.0625), 가로축=x, 3 타일 + 라벨
# south: 깊이축=z(+0.0625), 가로축=x, 3 타일 + 라벨
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.375 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.375 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.5 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.5 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.625 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.625 ~ 0.375 ~ 0.0625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.5 ~ -1 ~ 0.01 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 0 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " south " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.5 ~ -1 ~ 0.01 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 0 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
# north: 깊이축=z(+0.9375), 가로축=x, 3 타일 + 라벨
# north: 깊이축=z(+0.9375), 가로축=x, 3 타일 + 라벨
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.375 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.375 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.5 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.5 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.625 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.625 ~ 0.375 ~ 0.9375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.5 ~ -1 ~ 0.99 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 180 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " north " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.5 ~ -1 ~ 0.99 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 180 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
# east: 깊이축=x(+0.0625), 가로축=z, 3 타일 + 라벨
# east: 깊이축=x(+0.0625), 가로축=z, 3 타일 + 라벨
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.0625 ~ 0.375 ~ 0.625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.01 ~ -1 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ - 90 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " east " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.01 ~ -1 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ - 90 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
# west: 깊이축=x(+0.9375), 가로축=z, 3 타일 + 라벨
# west: 깊이축=x(+0.9375), 가로축=z, 3 타일 + 라벨
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.375 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:interaction ~ 0.9375 ~ 0.375 ~ 0.625 { Tags : [ " mq " , " $ ( n ) " ] , width : 0.125f , height : 0.25f , response : 0b }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.99 ~ -1 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 90 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }
$execute if score $ ( n ) buttons matches -1 unless data storage mq:tmp btn { label : " " } if data storage mq:tmp btn { f : " west " } positioned $ ( x ) $ ( y ) $ ( z ) run summon minecraft:text_display ~ 0.99 ~ -1 ~ 0.5 { Tags : [ " mq " , " $ ( n ) " ] , Rotation : [ 90 f , 0 f ] , background : 0 , text : ' {"text":"$(label)","color":"$(label_color)","font":"$(label_font)"} ' , transformation : { scale : [ $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f , $ ( l a b e l _ s c a l e ) f ] , translation : [ 0 f , 0 f , 0 f ] , left_rotation : [ 0 f , 0 f , 0 f , 1 f ] , right_rotation : [ 0 f , 0 f , 0 f , 1 f ] } }