이해도 | 1.16 |
---|---|
게임버전 (JE) | 스피곳 |
게임버전 (BE) | Skellet, skRayFall |
스크립트 애드온 | 가장 최신버전 |
여기 게시판에 있는 amount of %item% in %inventory% 를 이용해 구문을 작성해봤는데 자꾸 오류가 떠요...
구문:
command /sell:
trigger:
set {sell} to a new chest inventory with 6 row with name "sell"
set {row} to -1
open {sell} to player
loop 54 times:
add 1 to {row}
set slot {row} of {sell} to {%{row}%.item} with lore "판매가:%{%{row}%.sellprice}%"
command /shopset [<Integer>] [<Integer>] [<text>] [<text>]:
trigger:
if arg 3 is "sell":
set {row} to arg 1
set {%{row}%.item} to player's tool
set {%{row}%.name} to arg 4
set {%{row}%.sellprice} to arg 2
send "%arg 3% 상점의 %arg 1% 번째 항목의 아이템을 %player's tool% 로, 판매가는 %arg 2%로 정하였습니다. 아이템 설명은 %arg 4%로 정하였습니다!"
on inventory click:
if name of event-inventory is "sell":
set {d} to index of event-slot
cancel event
send "%{%{d}%.item}%"
if amount of %{%{d}%.item}% in player's inventory>0:
send "complete"
else:
send "good"
else:
stop
이고 오류 메시지는
inventory of the player is not the world (Line 23:if amount of %{%{d}%.item}% in player's inventory>0:)
이에요 해결방법 알려주시면 감사드리겠습니다!
스크립터브혼
2020.08.22if amount of {%{d}%.item} in player's inventory>0:
seanshine
2020.08.23그렇게 하면 인벤에 금이 65개 있는데도 0개 있다고 떠요 ㅠㅠ
스크립터브혼
2020.08.23{%{d}%.item}이 아이템이 맞는지 확인하세요.
seanshine
2020.08.23죄송해요 위에서 상점 아이템에 지정한 로어 때문에 그런거였어요...
그런데 아이템 로어에 상관없이 인식하는 것은 어떻게 하나요?
스크립터브혼
2020.08.23아이템 전체를 비교하지 마시고, 변하지 않는 고유한 데이터를 비교하세요.
이름이 될수도 있고, 아이템타입이 될수도 있고 생각하기 나름이죠.
seanshine
2020.08.24감사합니다!