개인 자료란 (JE)

  서버 커뮤니티

Profile 허브풀떼기 대표칭호 없음

Crystalherb 425f7622ab564a2197cb3660edef9a72

Profile

질문하기 커맨드

불굴의 양털섯다 만드는 놈인데 마지막 tp하나만 질문점...

2022.11.21 조회 수 258 추천 수 0
이해도 입문자 
게임버전 (JE) 1.19.2 
게임버전 (BE) 관련없음 

/give @p carrot_on_a_stick{display:{Name:'{"text":"양털 섯다"}'}} 1



반복/execute as @a[scores={u.cst=1..},nbt={SelectedItem:{tag:{display:{Name:'{"text":"양털 섯다"}',}}}}] at @s run clone 20570 61 838 20570 64 838 20569 60 834

연쇄 조건/setblock 20569 60 834 air destroy

연쇄 조건/say 양털을 지급받았다!

연쇄 조건/kill @e[type=item, nbt={Item:{id:"minecraft:chest"}} ,x=20569, y=59, z=834, limit=2]

연쇄 조건/tp @e[type=item, limit=1, sort=random, x=20569, y=59, z=834, distance=0..3] @p

연쇄 조건/kill @e[type=item, x=20569, y=59, z=834, distance=0..3]

연쇄 조건/scoreboard players set @a[scores={u.cst=1..}] u.cst 0

연쇄 조건/clear @p carrot_on_a_stick{display:{Name:'{"text":"양털 섯다"}'}} 1




당근 낚시대 응용해서 다 만들어서 이제 작 작동됩니다

그런데 문제가

5번째 양털 이동시키는 커맨드가 안되네요 ㅠ

사용한 @p가 가까운 플레이어라 안되는데

그래서 @s하면 작동이 안됨... 상자가 계속 생겼다 박살났다하면서 양털이 계속 떨어집니다.

아마 조건 충족 안되서 뒤쪽으로 안넘어가는거 같은데

어캐해야 당근낚시대 사용한 사람한테 양털이 갈수있나요...


어떤분이 다른 방법 써보라는데... 다른 방법을 모르겠네요...




14개의 댓글

코코냐
2022.11.21

특정 사용자를 가리키려면 그 사용자를 가리킬 수 있는 셀렉터를 사용하세요. 혹은 execute as, at문을 응용 할 수 있습니다.

허브풀떼기
2022.11.21
@코코냐

혹시 살짝 더 알려주실수있을까요? 제가 완전 처음사용해봐서 ㅠ

lanthanide
2022.11.21
@허브풀떼기

2번째 커맨드 이해할 수 있게 되시면 쉽게 응용할 수 있을겁니다. Famdom에 영문 마인크래프트 위키가 꽤 편리하니 써보시는 거 추천합니다.

허브풀떼기
2022.11.22
@lanthanide

execute as @s run tp @e[type=item, limit=1, sort=random, x=20569, y=59, z=834, distance=0..3] @s

 

로 해봤는데 안되네요 ㅠ execute로 @s로 본인 지정하고 뒤에 쓰면 되는게 아닌가요?

lanthanide
2022.11.22
@허브풀떼기

execute 문에서 at이란, 커맨드 실행의 위치를 정의합니다. execute at lanthanide run tp @a ~ ~ ~ 를 실행하면 모두가 lanthanide의 위치로 텔레포트 되는거죠.

as란 커맨드 실행의 주체를 정의합니다. execute as lanthanide say hi! 를 실행하면 lanthanide가 say hi! 를 입력한 것처럼 실행되죠.

 

따라서 as 다음에 당근낚싯대 사용자를 감지하는 셀렉터(@a[...]) 가 붙은 거죠.

 

저라면 낚싯대 사용 감지 직후에 해당 사용자를 as 로 묶어오고, tag add 를 이용해 tag 를 하나 부여합니다. 이후에 as @a[tag=...] 을 이용해 as 로 묶고 at @s 로 위치 지정하고.. run 하고.. 하는 식으로 짤 것 같네요.

lanthanide
2022.11.22
@lanthanide

execute 는 처음 쓸 땐 어렵지만 점차 쓸수록 할 수 있는게 정말정말 많아집니다. 기본적인 as, at, if 등의 구문들을 먼저 익혀보세요.

허브풀떼기
2022.11.22
@lanthanide

일단 자세한 답변 감사드리며 말씀하신대로 찾아서 execute as @s at @s run tp @e[type=item, limit=1, sort=random, x=20569, y=59, z=834, distance=0..3] @s

 

로 제게 오게 만들었는데 채팅으로 하는건 되는데 명령어 블록으로 하는건 안되는데 왜그런지 알수있을까요...

lanthanide
2022.11.22
@허브풀떼기

이유는 간단합니다. 우선 구문분석을 해볼까요?

execute as 다음 셀렉터가 @s 네요. @s는 현재 구문에서 주체가 된 대상을 받아오는데, as는 그 주체를 정합니다. 다시말해 의미없는 구문이에요. 마치 '이 커맨드의 실행자를 주체로 커맨드룰 실행해줘!' 같은겁니다.

at @s면, 현재 주체를 받아와서 그 위치를 커맨드의 위치로 정하네요. 하지만 주체 세팅이 잘못돼서 오작동한 모습입니다.

run tp @e[...] @s 근처 아이템을 모조리 끌어오네요. distance 와 at 이 있는데 x y z세팅이 왜 필요한진 모르겠습니다. @s 의 경우 앞에서 세팅이 잘못돼서 오작동했네요.

lanthanide
2022.11.22
@허브풀떼기

as, at 을 제대로 활용하려면 필연적으로 @s, @a 같은 셀렉터에 대한 이해가 필요합니다. 일반적으로 @s나 @p나 별다른 차이가 없고는 하지만, 이 모든 것이 복잡하게 엉켜 작동하는 execute문에서는 반드시 확실하게 구분해주셔야 해요.

허브풀떼기
2022.11.22
@lanthanide

저기 있는 커맨드를 직접 누르는게 아니라 당근 낚시대를 클릭한 사람이 선택되야해서 @s를 사용해야하는게 아닌가요? 

친구들이랑 하는거라서 아이템을 사용한 사람이 커맨드를 작동하게 하려는거였거든요...

그리고 저기서 여러개의 아이템중 하나를 랜덤으로 가져오려고 좌표와 저기서 하나만 리밋해서 tp시켰습니다.

연쇄블럭이라 주체가 제대로 설정이 되지않은걸까요 ㅠ

일단 늦은시간까지 감사합니다 ㅠ

lanthanide
2022.11.22
@허브풀떼기

기본적으로 커맨드 블럭을 일반, 반복, 연쇄를 불문하고 개별적으로 작동합니다. 연쇄여도 순차실행이 보장되는거지 주체는 기본적으로 각각의 커맨드 블럭이에요. 사용한 사람으로 쭉 주체를 쓰고 싶다면, 당근낚싯대 사용 감지시 즉시 다른 커맨드를 실행하지 말고 tag 를 부여하는 거에요. 그 뒤 필요한 작업을 끝내고 바로 태그를 지워주는 거죠.

허브풀떼기
2022.11.22
@lanthanide

그말은 이 전부를 한개의 커맨드 블럭으로 돌리지 않는이상 불가능하다는 이야기인가요? 시작부터 잘못했나보네요 ㅠ 아무래도 고쳐쓰지는 못하나보네요...감사합니다 ㅠ

Ba_koD
2022.11.22
@허브풀떼기

그냥 @s자리에 맨처음 우클릭 누른사람 지정한 셀렉터를 그대로 가져와도 되긴하는데 길어지고 보기 안좋아지는 단점이 있긴하죠

@s 자리에 @a[scores={u.cst=1..},nbt={SelectedItem:{tag:{display:{Name:'{"text":"양털 섯다"}',}}}}] 쓰면 되는데

저는 tag나 score로 판별하기때문에 그쪽은 선택하시면 되겠네요

허브풀떼기
2022.11.22
@Ba_koD

선생님들 덕에 성공했습니다~ 감사합니다~

뉴스 및 창작물
/files/thumbnails/268/789/003/262x150.crop.jpg?20240515192032

레드스톤

벌레먹은 돌 빠르게 제거하는 법

GlassesFilm

2024-05-15

0

/files/thumbnails/797/788/003/262x150.crop.jpg?20240515090924

건축

마인크래프트로 구현한 카르카손 보드게임

Warak

2024-05-15

1

/files/thumbnails/487/784/003/262x150.crop.jpg?20240508233607

모드

Windows Borderless 모드에서 악성코드 발견

학교가기싫다

2024-05-08

1

/files/thumbnails/384/778/003/262x150.crop.jpg?20240512002324

업데이트

마인크래프트 자바 에디션 스냅샷 24w18a

학교가기싫다

2024-05-06

0

/files/thumbnails/855/781/003/262x150.crop.jpg?20240505141129

레드스톤

레이저 클리너

GlassesFilm

2024-05-05

1