이윤상
대표칭호 없음
이해도 | 1.12 |
---|---|
게임버전 (JE) | 페이퍼 |
스크립트 애드온 | 2.4.1 |
options: c: &2&l[ &d&l직업 &2&l] b: &2&l[ &a&l부업&2&l ]&f variables: {job.%player%} = "&b[ &e없음&b ]&f" {2job.%player%} = "&2[ &a없음&2 ]&f" command /부업 [<text>] [<player>] [<text>] : trigger: if player is op: if arg-1 is not set: send "{@b} 설정" send "{@b} 보기" send "{@b} 전체보기" send "{@b} 제거" if arg-1 is "보기": if arg-2 is set: send "{@b} %arg-2%의 부업 : %{2job.%arg-2%}%" if arg-1 is "전체보기": send "{@b} %all players%의 부업 : %{2job.%all players%}%"
플레이어의 직업이나 돈을 모두 한번에 보고싶은데 저렇게 하면
직업을 설정해도
플레이어1 and 플레이어2 의 직업 : 없음
이렇게 나옵니다
명령어를 쳤을때
플레이어1 의 직업 :
플레이어2 의 직업 :
플레이어3 의 직업 :
....
이렇게 나오게는 할 수 없나요?
스크립터브혼
2021.03.09variables: {job.%player%} = "&b[ &e없음&b ]&f" {2job.%player%} = "&2[ &a없음&2 ]&f"
variables는 이렇게 활용하는것이 아닙니다. variables는 초기값 세팅을 위해 만들어진 기능입니다.
variables의 특성을 코드로 나타내면 아래와 같습니다.
variables는 세팅된 값이 없는 변수에 한해서만 변수를 세팅합니다.
이 기능은 서버가 로딩 될 때 동작하기 때문에 플레이어 정보가 없습니다.
플레이어의 직업과 돈을 한번에 보고싶다면 직접 직업과 돈의 값을 받아와야합니다.
스크립트로 구현된 것이라면 각각의 데이터가 저장된 변수를 사용해야하고,
플러그인으로 구현된것이라면 해당 플러그인을 지원하는 코드나 애드온을 사용하거나,
직업이나 돈이 변경이 이러나는 상황을 직접 구현해서 기록해야합니다.
이윤상
2021.03.11그러면 어떻게 해야 하는 건가요? 감이 잘 오지 않습니다...
스크립터브혼
2021.03.11플레이어의 돈의 경우 일반적으로 vault API를 활용한 이코노미 플러그인으로 구현하는 경우가 많습니다. vault 기반 경제 플러그인이라면 [Money]익스프레션으로 플레이어의 자산을 받아 올 수 있습니다. 만약, 스크립트 자체적으로 구현된 이코노미 시스템이라면 해당 스크립트에서 사용하는 변수를 활용해야 합니다.
직업 역시 마찬가지 입니다. 플러그인으로 구현된 직업이라면 해당 직업을 식별할 수 있는 애드온 또는, 스크립트 코드가 필요합니다.
스크립트로 구현된 것이라면 해당 스크립트의 변수가 필요한 것이구요.