ㅣㅕㅅㄷ
대표칭호 없음
이해도 | 1.12 |
---|---|
게임버전 (JE) | 스피곳 |
스크립트 애드온 | 2.4 beta 5 |
철문 우클릭시
만약 철문이 열려있으면 철문을 닫고
만약 철문이 닫혀있으면 여는 스크립트를 어떻게 만들까요
조건문을 어떻게 써야 할지 모르겠네요
on right click: if "%type of event-block%" = "IRON_DOOR_BLOCK": if player is wearing leather leggings: message "&e문을 열 수 없습니다" else: if "철문이 열려있으면" play sound "block.iron_door.open" with volume 1 and pitch 1 at all players for player activate block if "철문이 닫혀있으면" play sound "block.iron_door.close" with volume 1 and pitch 1 at all players for player deactivate block
스크립터브혼
2021.02.20블록을 판단할 때는 [Block Data]익스프레션을 사용하세요.
block data를 메세지로 출력해보면 아래처럼 나옵니다.
> "minecraft:iron_door[facing=north;half=lower;hinge=right;open=false;powered=false]"
문 블록의 열림과 닫힘은 [open=true/false]로 표현됩니다.
iron block[open=true]이면 열린 철문, iron block[open=false]이면 닫힌 철문입니다.
Block data는 변경도 가능합니다.
> set block data of {_door} to iron door[open=false]
같은 타입의 alises에 변경할 block data만 적어주면 됩니다.
주의하실 점은 문 블록이 열릴때, 하단 블록을 기준으로 열립니다.
상단 블록을 클릭해서 상단 블록의 block data를 변경할 경우 위, 아래가 일치되지 않아 문이 파괴 될 수 있습니다.
iron door[half=upper]이면 한칸 아래 블록에 block data를 적용하세요.
ㅣㅕㅅㄷ
2021.02.20조건문을 if minecraft:iron_door[facing=north;half=lower;hinge=right;open=false;powered=false] 로 쓰면 되나요
작동이 안되네요...
스크립터브혼
2021.02.20조건문은 컨디션을 사용해야합니다.
본문에 적으신대로 if player is wearing leather leggings에서 [Is Wearing]컨디션을 사용한것 처럼,
[Comparison]컨디션을 사용하시면 됩니다.
> if %obejct% is %object%:
ㅣㅕㅅㄷ
2021.02.20그러면 if iron_door is iron_door[open=false]: 이렇게 되는건가요?
스크립터브혼
2021.02.20해보세요.
ㅣㅕㅅㄷ
2021.02.21안되네요..!
스크립터브혼
2021.02.21오류메세지 나오던가요
ㅣㅕㅅㄷ
2021.02.21네 오류메세지 나옵니다
can't understand this condition: 'iron_door is iron_door[open=true]' (soundDoor.sk, line 5: if iron_door is iron_door[open=true]:')
can't understand this condition: 'iron_door is iron_door[open=false]' (soundDoor.sk, line 8: if iron_door is iron_door[open=false]:')
이렇게 뜨네요
스크립터브혼
2021.02.21스크립트 aliases를 확인해보세요. aliases는 Skript.jar 압축 파일을 열어보면 aliases폴더 안에 정의되어 있습니다.
철문은 redstone.sk 파일에 작성되어있습니다.
> iron door