개인 자료란 (JE)

  서버 커뮤니티

Profile seeN4 대표칭호 없음

BudsPro de8755695821468e9bc780ab54933326

Profile

질문하기 스크립트

1.15.2) 스크립트 질문입니다.

2020.02.14 조회 수 1636 추천 수 0
이해도 1.14 
게임버전 (BE) 모르겠습니다. 아마 없어도 될듯싶어요. 
스크립트 애드온 2.4.1 


내가 만들고자 하는 것


아이템 이름과 로어를 인식 시킨후

그 아이템(ex. 곡괭이)를 들고 땅을 부수거나 광석을 캘 때

부순 블럭을 기준으로 3x3x3

총 27칸이 캐지게 만들어 보려고 했습니다.


도저히 하는 방법을 모르겠습니다.

수정을 도와주신다면 정말 감사할거같습니다.


지금 밑에있는 구문으로 해본결과

구체 모양으로 랜덤으로 부서집니다.


그냥 딱 3x3x3 크기의 블럭들이

부서지게 만들고 싶습니다. 도와주세요!




현재 작성한 스크립트 구문


on break:

@if player's world is "world" or "world_nether" or "world_the_end":

@@name of player's tool contains "a"

@@"%lore of player's tool%" contains "D"

@@set {_loc} to location of event-block

@@loop all blocks in radius 3 of {_loc}:

@@@set {_x} to loop-block's x-coordinate

@@@set {_y} to loop-block's y-coordinate

@@@set {_z} to loop-block's z-coordinate

@@@set block at location ({_x}, {_y}, {_z}) in world "world" or "world_nether" or "world_the_end" to air


여담


혹시 3x3x3 칸으로 부술 때

총 27칸이 부서지잖아요

그 27칸이 아이템 화 되어서 드랍되게 가능할까요?


다른 것들도 자주 질문하고 싶은데

혹시 디스코드 친구추가 가능하신가요..?

가능하시다면

신사#6707

로 친구추가 주시면 정말 큰 도움이 될 것 같습니다 ㅠ.ㅠ


감사합니다.




4개의 댓글

갭알자
2020.03.02

Command /testtool:

@trigger:

@@set {testtool} to player's tool

On break:

@if player's tool is {testtool}:

@@if event-world is "world" or "world_nether":

@@@set {_x} to floor(x-loc of event-location)+1

@@@set {_y} to floor(y-loc of event-location)+1

@@@set {_z} to floor(z-loc of event-location)+1

@@@loop 3 times:

@@@@loop 3 times:

@@@@@loop 3 times:

@@@@@@set {_dropitem} to block at location {_x}, {_y}, {_z} in player's world

@@@@@@drop {_dropitem} at location {_x}, {_y}, {_z} in player's world

@@@@@@set block at location {_x}, {_y}, {_z} in player's world to air

@@@@@@remove 1 from {_x}

@@@@@add 3 to {_x}

@@@@@remove 1 from {_y}

@@@@add 3 to {_y}

@@@@remove 1 from {_z}

갭알자
2020.03.02
@갭알자

이거 복붙한다음

아무 물건들고 /testtool 친다음 땅부서보셈

네모사장
2020.05.13
@갭알자

대박 3×3까지 잘 캐집니다

다만 특정 블럭이 (나뭇입, 계단, 꽃, 횃불등)3×3안에서 캐질 경우 텍스쳐가 깨지며 이름은 같으나 다른 아이템으로 분류 됩니다.

스크립터브혼
2020.03.04

먼저, 답변이 늦어져서 죄송합니다.

 

직육면체 형태로 블럭을 루프하기위해서는 3중루프(x,y,z축)가 필요합니다.

https://www.koreaminecraft.net/scriptqna/1099246

위 링크의 함수를 사용하여 두 대각꼭지점으로 직육면체 형태의 좌표를 모두 불러 올 수 있습니다.

 

찾은 좌표의 블럭을 break 이펙트로 파괴시키면 아이템이 드랍됩니다.

break 이펙트는 skript 2.4 부터 가능합니다.