[[분류:마인크래프트/명령어]] [include(틀:상위 문서, top1=마인크래프트/명령어)] [목차] == 개요 == 대상 선택 인자는 자세한 조건 하에서 개체를 선택하고자 할 때 이용할 수 있다. 인자들은 대소문자를 구분하며, 존재하지 않는 인자 값은 경고 출력 없이 무시된다. 또한 부정 인자를 지원하므로 {{{=}}} 뒤에 {{{!}}}를 붙이면 '''그 인자에 해당하는 개체를 제외한 개체'''가 대상이 된다. 일반 인자는 같은 인자에 겹칠 수 없지만 부정 인자는 같은 인자에 겹칠 수 있다. scores는 부정 인자가 불가능하다. *예시: 플레이어를 제외한 모든 개체를 죽임: {{{/kill @e[type=!player]}}} == 사용법 == {{{@x[인자=값,인자=값,인자=값,...] }}} 인자 뒤에 반드시 '''붙여서 대괄호 {{{[]}}} 를 이용'''해 써야 한다. 예를 들어, 범위를 2칸 이내로 설정하고자 한다면, {{{@a[distance=..2]}}}로 쓰면 된다. 대상 선택 인자의 값 설정은 {{{:}}}이 아니라 {{{=}}}로 한다. 여러 인자를 동시에 쓸 땐 {{{[type=@,name=@,gamemode=@]}}}와 같이 쉼표를 쓰면 된다. == 값이 될 수 있는 것 == 대상 선택 인자마다 값으로 가지는 고유한 유형이 존재하며 그 목록은 다음과 같다. *수: 어느 특정한 하나의 수이다. *예시) 3, 2.4, 62.34 *구간: 하나 이상의 수, 필요 시 {{{..}}}으로 정의되는 집합이다. 현재 자바에디션에서만 사용할 수 있다. 베드락 에디션의 경우 분리된 두 인자를 각각 수로 지정한다. 최소값보다 최대값이 작으면 안 된다. *예시) {{{..2}}} = (2 이하) / {{{6..}}} = (6 이상) / {{{4.5..9.3}}} = (4.5 이상 9.3 이하) / {{{5}}} = (정확히 5) *문자열: 말 그대로 특정한 단어이다. 영어를 제외한 다른 언어(한글 포함)를 포함한 문자열은 {{{"이름"}}}과 같이 큰따옴표(")로 감싸야 한다. 물론 영어에 큰따옴표를 써도 된다. *예시) {{{c}}}, {{{survival}}}, {{{zombie}}}, {{{"홍길동"}}} *식: 다른 식이다. 일반적으로 {{{{식}}}} 형태로 쓴다. 즉 중괄호({{{ {} }}})로 식을 감싼다. *예시) {{{{asdf=1}}}}, {{{{minecraft:adventure/summon_iron_golem=true}}}} == 대상 선택 인자 목록 == === JE === ||<-2> {{{+3 {{{#ffffff '''좌표'''}}}}}} || ||<-2> {{{x=수,y=수,z=수}}} || || {{{#ffffff '''기능'''}}} || {{{distance}}}이나 {{{dx}}}, {{{dy}}}, {{{dz}}} 대상 선택 인자의 기준을 설정한다. || || {{{#ffffff '''기본값'''}}} || {{{실행 주체의 좌표}}} || || {{{#ffffff '''예시'''}}} || {{{x=10, y=14, z=-13}}} || 기준을 설정하는 인자이기 때문에 단독으로 사용할 수는 없다. ---- ||<-2> {{{+3 {{{#ffffff '''반지름'''}}}}}} || ||<-2> {{{distance=구간}}} || || {{{#ffffff '''기능'''}}} || 구의 중심을 설정했던 {{{좌표}}}로, 반지름을 설정한 값 또는 구간으로 갖는 구들로 설명되는 집합을 범위로 만들어 개체가 그 범위 안에 있어야 인자에 포함시킨다.[* 원래는 설정한 값을 r이라 할 때, [math(\dfrac{\sqrt2}2r)]을 반지름으로 썼지만, 이제는 설정한 값을 그대로 쓴다.] || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{distance=..5}}} / {{{distance=5}}} / {{{distance=5..9}}} || ---- ||<-2> {{{+3 {{{#ffffff '''공간 범위'''}}}}}} || ||<-2> {{{dx=수,dy=수,dz=수}}} || || {{{#ffffff '''기능'''}}} || 설정했던 {{{좌표}}}로부터 dx, dy, dz를 더한 좌표와 실행 주체의 {{{좌표}}}를 두 점으로 하는 직육면체의 공간을 범위로 지정한 후, 그 범위 안에 있어야 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{dx=2, dy=-3, dz=11}}} || ---- ||<-2> {{{+3 {{{#ffffff '''점수판'''}}}}}} || ||<-2> {{{scores={식}}}} || || {{{#ffffff '''식 구성'''}}} || {{{문자열(점수판 이름)=구간(점수 범위)}}} || || {{{#ffffff '''기능'''}}} || 그 개체의 점수판을 검사하여 점수가 구간 내에 있는지 확인한 후, 구간 내에 있어야 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{scores={death=..1}}}} / {{{scores={death=1..}}}} || ---- ||<-2> {{{+3 {{{#ffffff '''태그'''}}}}}} || ||<-2> {{{tag=문자열(태그 이름)}}} || || {{{#ffffff '''기능'''}}} || 해당 태그를 갖고 있는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{tag="생존자"}}} / {{{tag=afk}}} || tag= 으로 태그 이름을 비울 경우 태그가 없는 개체를 대상으로 적용된다. ---- ||<-2> {{{+3 {{{#ffffff '''팀'''}}}}}} || ||<-2> {{{team=문자열(팀 이름)}}} || || {{{#ffffff '''기능'''}}} || 해당 팀에 소속되어 있는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{team="적"}}} / {{{team=red}}} || team= 으로 팀 이름을 비울 경우 팀이 없는 개체를 대상으로 적용된다. ---- ||<-2> {{{+3 {{{#ffffff '''수'''}}}}}} || ||<-2> {{{limit=수}}} || || {{{#ffffff '''기능'''}}} || 정렬된 개체 중 지정한 수만큼의 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{limit=5}}} || 일부 명령어는 단순히 대상 선택 인자를 통해 선택하여도 대상으로 선택되지 않는 경우가 있다. 이는 대상이 단 하나만 선택되어야 할 경우[* 예를 들어 tp 명령어의 경우, {{{/tp <대상1> <대상2>}}}로 사용하는데, {{{<대상1>}}}은 여럿이라도 상관 없지만 {{{<대상2>}}}는 하나여만 한다.]인데, 이는 limit 이라는 선택 인자를 사용해 대상을 단 하나로 지정함으로써 해결할 수 있다. * 예시 * {{{kill @e[type=zombie, sort=nearest, limit=2]}}} 명령어를 사용한 위치로부터 가장 가까운 순서로 좀비 2마리를 죽인다. * {{{tp @p @e[type=armor_stand, sort=random, limit=1]}}} 랜덤한 아머 스탠드로 플레이어를 순간이동 시킨다. ---- ||<-2> {{{+3 {{{#ffffff '''레벨'''}}}}}} || ||<-2> {{{level=구간}}} || || {{{#ffffff '''기능'''}}} || 개체의 레벨이 지정한 구간 내에 포함되어야만 그 개체를 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{level=15}}} / {{{level=2..3}}} || ---- ||<-2> {{{+3 {{{#ffffff '''게임모드'''}}}}}} || ||<-2> {{{gamemode=문자열(모드 이름)}}} || || {{{#ffffff '''기능'''}}} || 게임모드가 지정한 모드와 같은 플레이어만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{gamemode=survival}}} || ---- ||<-2> {{{+3 {{{#ffffff '''이름'''}}}}}} || ||<-2> {{{name=문자열(개체 이름)}}} || || {{{#ffffff '''기능'''}}} || 지정한 개체 이름을 이름으로 하고 있는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{name="홍길동"}}} / {{{name=Alex}}} || ---- ||<-2> {{{+3 {{{#ffffff '''수직 회전'''}}}}}} || ||<-2> {{{x_rotation=구간}}} || || {{{#ffffff '''기능'''}}} || 시선의 수직 방향 각도가 구간에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{x_rotation=0..90}}} || ---- ||<-2> {{{+3 {{{#ffffff '''수평 회전'''}}}}}} || ||<-2> {{{y_rotation=구간}}} || || {{{#ffffff '''기능'''}}} || 시선의 수평 방향 각도가 구간에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{y_rotation=0..30}}} || ---- ||<-2> {{{+3 {{{#ffffff '''개체 종류'''}}}}}} || ||<-2> {{{type=문자열(개체 종류 이름)}}} || || {{{#ffffff '''기능'''}}} || 개체가 지정한 종류에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{type=villager}}} || {{{type=#skeletons}}}나 {{{type=#raiders}}}처럼 비슷한 특성이 있는 여러 개체를 한 번에 지정할 수도 있다. ---- ||<-2> {{{+3 {{{#ffffff '''발전과제'''}}}}}} || ||<-2> {{{advancements=식}}} || || {{{#ffffff '''식 구성'''}}} || minecraft:(발전과제 분류)/(발전과제 id)=(논리값(true/false)) || || {{{#ffffff '''기능'''}}} || 개체가 해당 발전 과제를 깨야/깨지 않아야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{advancements={minecraft:adventure/summon_iron_golem=true}}}} || ---- ||<-2> {{{+3 {{{#ffffff '''NBT'''}}}}}} || ||<-2> {{{nbt=식}}} || || {{{#ffffff '''식 구성'''}}} || {{{ {NBT} }}} || || {{{#ffffff '''기능'''}}} || 지정한 NBT 조건을 만족하는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{nbt={OnGround:1b}}}} || ---- ||<-2> {{{+3 {{{#ffffff '''Predicate'''}}}}}} || ||<-2> {{{predicate=문자열}}} || || {{{#ffffff '''문자열 구성'''}}} || {{{네임스페이스:ID}}} || || {{{#ffffff '''기능'''}}} || 지정한 predicate에 해당하는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{predicate=namespace:asdf}}} || 데이터 팩의 일부인 [[https://minecraft.wiki/w/Predicate|Predicate]]를 이용해 대상 선택 인자로 사용할 수 있다. ---- ||<-2> {{{+3 {{{#ffffff '''정렬'''}}}}}} || ||<-2> {{{sort=문자열}}} || || {{{#ffffff '''기능'''}}} || {{{limit}}} 등으로 선정 개체 수에 한계를 두었을 때 어떤 것부터 우선적으로 선정할지 결정한다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{sort=nearest}}} || *{{{[sort=nearest]}}}는 거리가 가까운 순서에 따라 정렬한다. (@p의 기본값) *{{{[sort=furthest]}}}는 거리가 먼 순서에 따라 정렬한다. (c=-1) *{{{[sort=random]}}}은 무작위로 정렬한다. (@r의 기본값) *{{{[sort=arbitrary]}}}는 소환한 순서에 따라 정렬한다. === BE === JE와 대상 인자 이름이 조금씩 다르며 구간으로 정의하기 보다는 수 2개로 정의하려는 경향이 있다. 또한 {{{team}}}, {{{advancements}}} 등은 BE에 해당 기능이 없어서 대상 선택 인자로도 제공되지 않는다. ||<-2> {{{+3 {{{#ffffff '''좌표'''}}}}}} || ||<-2> {{{x=수,y=수,z=수}}} || || {{{#ffffff '''기능'''}}} || {{{r}}}이나 {{{dx}}}, {{{dy}}}, {{{dz}}} 대상 선택 인자의 기준을 설정한다. || || {{{#ffffff '''기본값'''}}} || {{{실행 주체의 좌표}}} || || {{{#ffffff '''예시'''}}} || {{{x=10, y=14, z=-13}}} || 기준을 설정하는 인자이기 때문에 단독으로 사용할 수는 없다. ---- ||<-2> {{{+3 {{{#ffffff '''반지름'''}}}}}} || ||<-2> {{{r=수}}}, {{{rm=수}}} || || {{{#ffffff '''기능'''}}} || 구의 중심을 설정했던 {{{좌표}}}로, 반지름을 설정한 구간의 블록으로 갖는 구들로 설명되는 집합을 범위로 만들어 개체가 그 범위 안에 있어야 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || (두 인자 중 하나를 지정한 경우)[br]{{{rm}}}=0, {{{r}}}=∞ || || {{{#ffffff '''예시'''}}} || {{{rm=3, r=5}}} || {{{rm}}}은 최소 반지름, {{{r}}}은 최대 반지름이다. ---- ||<-2> {{{+3 {{{#ffffff '''공간 범위'''}}}}}} || ||<-2> {{{dx=수,dy=수,dz=수}}} || || {{{#ffffff '''기능'''}}} || 설정했던 {{{좌표}}}로부터 dx, dy, dz를 더한 좌표와 실행 주체의 {{{좌표}}}를 두 점으로 하는 직육면체의 공간을 범위로 지정한 후, 그 범위 안에 있어야 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{dx=2, dy=-3, dz=11}}} || ---- ||<-2> {{{+3 {{{#ffffff '''점수판'''}}}}}} || ||<-2> {{{scores={식} }}} || || {{{#ffffff '''식 구성'''}}} || {{{문자열(점수판 이름)=구간(점수 범위)}}} || || {{{#ffffff '''기능'''}}} || 그 개체의 점수판을 검사하여 점수가 구간 내에 있는지 확인한 후, 구간 내에 있어야 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{scores={death=..1}}}} / {{{scores={death=1..}}}} || ---- ||<-2> {{{+3 {{{#ffffff '''태그'''}}}}}} || ||<-2> {{{tag=문자열(태그 이름)}}} || || {{{#ffffff '''기능'''}}} || 해당 태그를 갖고 있는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{tag="생존자"}}} / {{{tag=afk}}} || ---- ||<-2> {{{+3 {{{#ffffff '''수'''}}}}}} || ||<-2> {{{c=수}}} || || {{{#ffffff '''기능'''}}} || 정렬된 개체 중 지정한 수만큼의 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{c=5}}} || JE는 limit를 쓴다. ---- ||<-2> {{{+3 {{{#ffffff '''레벨'''}}}}}} || ||<-2> {{{l=수}}}, {{{lm=수}}} || || {{{#ffffff '''기능'''}}} || 개체의 레벨이 지정한 구간 내에 포함되어야만 그 개체를 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || (두 인자 중 하나를 지정한 경우)[br]{{{lm}}}=0, {{{l}}}=∞ || || {{{#ffffff '''예시'''}}} || {{{lm=2,l=7}}} || {{{lm}}}은 최소 수이고, {{{l}}}은 최대 수이다. ---- ||<-2> {{{+3 {{{#ffffff '''게임모드'''}}}}}} || ||<-2> {{{m=문자열(모드 이름) 또는 수(모드 번호)}}} || || {{{#ffffff '''기능'''}}} || 게임모드가 지정한 모드와 같은 플레이어만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{m=0}}} || JE에서는 {{{gamemode}}}로 쓴다. BE는 JE와 다르게 모드 번호 및 모드 단축 이름을 쓸 수 있다. ---- ||<-2> {{{+3 {{{#ffffff '''이름'''}}}}}} || ||<-2> {{{name=문자열(개체 이름)}}} || || {{{#ffffff '''기능'''}}} || 지정한 개체 이름을 이름으로 하고 있는 개체만 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{name="홍길동"}}}[* 이름에 띄어쓰기가 없으면 큰따옴표를 적지 않아도 된다.] / {{{name=Alex}}} || ---- ||<-2> {{{+3 {{{#ffffff '''수직 회전'''}}}}}} || ||<-2> {{{rxm=수,rx=수}}} || || {{{#ffffff '''기능'''}}} || 시선의 수직 방향 각도가 구간에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || (두 인자 중 하나를 지정한 경우)[br]{{{rxm}}}=0, {{{rx}}}=? || || {{{#ffffff '''예시'''}}} || {{{rxm=0, rx=90}}} || {{{rxm}}}은 최소 수직 회전이고, {{{rx}}}는 최대 수직 회전이다. ---- ||<-2> {{{+3 {{{#ffffff '''수평 회전'''}}}}}} || ||<-2> {{{rym=수,ry=수}}} || || {{{#ffffff '''기능'''}}} || 시선의 수평 방향 각도가 구간에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || (두 인자 중 하나를 지정한 경우)[br]{{{rym}}}=0, {{{ry}}}=? || || {{{#ffffff '''예시'''}}} || {{{rym=0, ry=30}}} || {{{rym}}}은 최소 수평 회전이고, {{{ry}}}는 최대 수평 회전이다. ---- ||<-2> {{{+3 {{{#ffffff '''개체 종류'''}}}}}} || ||<-2> {{{type=문자열(개체 종류 이름)}}} || || {{{#ffffff '''기능'''}}} || 개체가 지정한 종류에 포함되어 있어야 그 개체를 인자로 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{type=villager}}} || ---- ||<-2> {{{+3 {{{#ffffff '''패밀리'''}}}}}} || ||<-2> {{{Family=실행인자}}} || || {{{#ffffff '''기능'''}}} || 1.16.100 버전에서 나온 뉴 타겟, 특정 종류[* 몬스터, 몹, 좀비류, 언데드 및 좀비, 스켈레톤, 크리퍼, 엔더맨 등]의 엔티티를 대상으로 삼는다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{family=monster}}} || ---- ||<-2> {{{+3 {{{#ffffff '''가진 아이템'''}}}}}} || ||<-2> {{{ hasitem={식} }}} || || {{{#ffffff '''기능'''}}} || 아이템, 아이템 수량, 손에 든 것 등을 검사하여 일치하면 인자에 포함시킨다. || || {{{#ffffff '''기본값'''}}} || - || || {{{#ffffff '''예시'''}}} || {{{ hasitem={item=apple, quantity=2..} }}} || 예시: 8번 핫바에 사과 1개 ~ 5개를 둔 모든 플레이어의 다이아몬드 1개를 없애는 명령어 {{{/clear @a[hasitem={item=apple, quantity=1..5, data=0, location=slot.hotbar, slot=8}] diamond 0 1}}} == 각 대상 선택 인자 특성 == {{{scores}}} 인자는 {{{ scores={"점수판 이름"=인수 범위} }}} 형태로 사용할 수 있다. {{{hasitem}}} 인자는 {{{ hasitem={"종류"=아이템 또는 수량 등} }}} 형태로 사용할 수 있다. 종류에는 item, quantity, data,[* 모든 아이템을 감지하고자 -1을 쓰면 게임이 꺼지는 버그가 있다. 때문에 다음 업데이트 또는 정식 출시까지 쓰지 않는게 좋다.] location, slot이 있다. == 용례 == *실행 주체로부터 반경 20블록 안에 있는 모든 플레이어를 위쪽으로 20블록만큼 텔레포트 *{{{tp @a[distance=..20] ~ ~20 ~}}} *x=10, y=20, z=30을 기준으로 반경 20블록 안에 있는 좀비 두 마리를 위로 20블록만큼 텔레포트 *{{{execute positioned 10 20 30 as @e[distance=..20,limit=2,type=zombie] run tp @s ~ ~20 ~}}} *x=10, y=20, z=30을 기준으로 반경 20블록 안에 있는 test 점수가 3 이상 5 이하인 좀비 두 마리를 위로 20블록만큼 텔레포트 *{{{execute positioned 10 20 30 as @e[distance=..20,limit=2,type=zombie,scores={test=3..5}] run tp @s ~ ~20 ~}}} *가장 가까운 좀비 두 마리를 위로 20블록만큼 텔레포트 *{{{tp @e[type=zombie,sort=nearest,limit=2] ~ ~20 ~}}} [각주][include(틀:문서 가져옴, title=마인크래프트/명령어, version=818, paragraph=2.2.1)]