개인 자료란 (JE)

  서버 커뮤니티

Profile 늘솜보름 정품인증자

JIMIN2457 69b92cf6d9194ba7a57a668b093cb822

Profile

이해도 1.12 
게임버전 (JE) 스피곳 
스크립트 버전 중급자(필요한 애드온을 찾아서 만들 수 있어요) 
스크립트 애드온 2.5.3 

* 분명 모두 정상적으로 작동하는 것을 확인했습니다.


1. 서버를 재시작하면 화강암, 섬록암, 안산암, 청금석이 다른 아이템의 모양으로 변합니다.

d85ad6bf325ea4df545eda3234996e20.png6b5d776c1b40b1e7b9d40d0a2476ecd1.png8136c8848f7be313ec8fb0e55e5a6ec5.png6a7aec969b690e68f8807c54238c8a76.png

- 아이템 모양만 변했고 해당 아이템을 정상적으로 인식하긴 합니다.


2. 서버를 재시작하면 정상적으로 작동하던 "amount of {test} in inventory of player" 부분이 작동하지 않습니다.

- 분명히 잘 작동하던 스크립트였는데 서버를 재시작 하고나면 먹통이됩니다.

- {test}를 아이템으로 파싱도 해봤지만 해결하지 못했습니다. 근데 {test} 부분을 dirt 같이 직접 입력하면 또 정상적으로 작동합니다.

- 추가로 {test} 부분에는 스크립트로 저장된 아이템 id 가 불러와지고, {test} 자체를 send 하면 정상적으로 출력됩니다.

- 제가 아무리 해결해볼려고 했지만 도무지 어떤 문제인지 파악하기 힘들어서 도움 요청해봅니다.

- 그래서 변수 부분이 문제가 있는거 같은데 조언부탁드립니다.




4개의 댓글

스크립터브혼
2021.01.28

안산암, 화강암과 같은 아이템은 돌과 같은 ID를 가지고 DATA가 다른걸로 알고 있습니다.

아이템을 저장할 때 ID만 저장했다면 DATA는 0이 되어서 돌이 나올것입니다. 아마도 단단한 흙도 그냥 일반 흙으로 나오겠죠.

서버를 종료하지 않았을 때 정상적으로 나오는 것은 아마도 인벤토리를 변수에 담아 재활용했기 때문일겁니다.

인벤토리를 재활용하기 때문에 한번 세팅된 아이템이 다시 세팅 될 일 없으니 DATA가 누락될 일도 없죠.


{test}변수는 이 변수에 아이템 데이터가 들어있는지 확인하세요.

늘솜보름
2021.01.28
@스크립터브혼

답변 감사합니다. 추가로 2번 문제인데 정말 아무리봐도 이해가 안됩니다.

1. send "%{%arg 2%::id}%" to player

2. send "%amount of {%arg 2%::id} in inventory of player%" to player

이 두 구문에서 {%arg 2%::id} 변수를 사용하여 출력하는데 변수값이 dirt라고 치면 1번은 dirt가 나옵니다.

그럼 2번은 dirt가 인벤토리에 몇개 있는지 나와야하는데 몇개가있든 무조건 0을 출력합니다.

이 경우에는 어떤식으로 접근해야 해결할 수 있는지 궁금합니다.

스크립터브혼
2021.01.28
@늘솜보름

아이템은 [Item Amount]익스프레션을 사용합니다.

> item amount of %item%

늘솜보름
2021.01.29
@스크립터브혼

{test} 에 아이템 저장할때 set {test} to dirt 이런식으로 했었는데 set {test} to "dirt" parsed as item 으로 하니까 두문제 모두 해결됬습니다.

답변해주셔서 감사합니다.