개인 자료란 (JE)

  서버 커뮤니티

Profile tlsdusgh11 대표칭호 없음

tlsdusgh1024 fed1629f4fa549fc900106cfdfc13bd8

Profile

질문하기 스크립트

스크립트

2021.07.22 조회 수 290 추천 수 0
이해도 1.12 
게임버전 (JE) 스피곳 
게임버전 (BE) Skellett, SkQuery, TuSKe 1.8.3-PikachuPatch-v3 
스크립트 버전 입문자(아무것도 몰라요) 
스크립트 애드온 2.2 dev37 

on  right click:



     if player's held item is "minecraft:stick":


          execute player command "/grenade"


     else:


          message "b"



막대기를 든 상태에서 오른쪽 클릭을 하면 tnt가 소환이 되도록 구문을 짰습니다


오류코드는

Can't compare a slot with a text (skript.sk, line 4: if player's held item is "minecraft:stick":


'else' has to be placed just after an 'if' or 'else if' section (skript.sk, line 8: else:


이렇게 두 문장이에요 

3개의 댓글

늘솜보름
2021.07.23

"minecraft:stick" 이렇게 쓰신게 텍스트 타입이여서 그래요.

parsed as item 으로 타입을 변경하던가 아니면 stick 라고 쓰시면 됩니다.

if player's held item is stick: 이렇게요.

 

skript aliases 이라고 해가지고 아이템마다 이름 지정된게 있어요.

https://github.com/SkriptLang/skript-aliases 요기서 확인해보세요.

 

두번째 오류 코드는 else 문이 if문이나 else if 문 뒤에 와야한다는건데 이건 if문이 오류로 인식을 못해서 그런거 같네요.

if문에 "minecraft:stick" 이것만 고쳐 쓰시면 해결될거에용

tlsdusgh11
2021.07.24
@늘솜보름

진짜 죄송한데

minecraft:stick에서 stick으로 바꿔도 Can't compare a slot with 'stick' 이런식으로 나오는데 이건 어떤 문제일까요..

늘솜보름
2021.07.24
@tlsdusgh11

막대기로 우클릭 했을때 작동해야하는거면 이렇게 해보세요.

 

on right click:

if player's tool is stick:

send "1" to player

 

이렇게 하면 "1" 이 정상적으로 출력됩니다