이해도 | 1.12 |
---|---|
게임버전 (JE) | 스피곳 |
게임버전 (BE) | skRayFall |
스크립트 버전 | 입문자(아무것도 몰라요) |
스크립트 애드온 | 2.5.3 |
every 1 seconds: #스코어보드 구문
loop all players:
if {sco1::%loop-player%} is true:
wipe loop-player's sidebar
set name of sidebar of loop-player to "&7&l[ &a&l1 라운드 &7&l]"
set score "&7&l ===============" in sidebar of loop-player to 10
set score "&7&l> &c&l킬 스코어" in sidebar of loop-player to 7
set score " &4&l%{1라킬횟수.%loop-player%}% &f&l점" in sidebar of loop-player to 6
set score "&7&l> &2&l남은 목숨" in sidebar of loop-player to 5
set score " &a&l%{목숨.%loop-player%}% &f&l개" in sidebar of loop-player to 4
set score "&7&l> &6&l- 남은 라운드 시간 -" in sidebar of loop-player to 3
set score "&f&l %{1라운드시간계산}% 초" in sidebar of loop-player to 2
이렇게 구문을 작성하여 서버내에서 {sco1::%player%} 변수를 활성화시켰을때,
스코어보드에 서버장인 저의 정보(1라킬횟수, 목숨을 나타내는 변수)만 출력되고 다른유저분들의 정보는 출력되지 않는 현상이 있습니다. 마찬가지로 저기에 %loop-player%를 작성하여 스코어보드에 이름을 표시하게헀을때도 다른 유저분들의 스코어보드에 똑같이 제 닉네임만 출력이됩니다. 구문상으론 오류가 보이지 않는데 해결방법이 있을까요? skRayFall 버전문제인지 1.12.2 자체의 문제인지 스피곳 버킷의 문제인지 아니면 정말 구문상으로 어떤 오류가 있는건지 잘 모르겠습니다. 도와주세요 엉헝헝 ㅠㅠ
스크립터브혼
2021.01.21{sco1::%player%} 에서 변수 이름이 어떻게 되는지 확인해 보세요.
> send "sco1::%player%}"
마찬가지로
> if {sco1::%loop-player%} is true:
이 조건문에서도 변수이름이 올바른 이름을 가지고 있는지 확인하세요.
{1라킬횟수.%loop-player%}, {목숨.%loop-player%} 변수도 마찬가지입니다.
변수 이름이 올바른지, 그 값이 어떻게 되는지 확인하세요.
탈인간
2021.01.22변수 이름이 올바르다는게 무슨의미인가요..?? 저는 sco1 변수를 기본값을 false로 정하고 true로 바꿔주는 구문을 따로 사용했습니다.
구문상으로 변수 이름이 서로 다른경우는 없었습니다. 제가 의도한대로 1라킬횟수 변수는 초기에 0 , 목숨 변수또한 5로 되어있습니다. 테스트를 도와주신 다른분들또한 개인변수값 자체는 제대로 작동합니다. 하지만 스코어보드에 개인변수값을 표기할때 오직 저의 정보만 출력된다는 오류를 해결할수가 없어 질문드렸습니다. (다른분들의 스코어보드에도 동일하게 저의 정보만 표기됩니다. )
스크립터브혼
2021.01.22{sco1::%loop-player%}변수에서 인덱스로 쓰인 loop-player가 플레이어를 가르키는지, 이 변수의 값이 플레이어의 정보를 가진건지 확인하라는 겁니다.
코드에는 문제가 없어보입니다. 각각의 변수가 각각의 플레이어 정보를 가지는게 아니라 탈인간님의 정보를 가지고 있을 수도 있습니다.
탈인간
2021.01.23확실히 변수저장폴더에는 저의 정보만 저장됬네요. 하지만 개인변수를 사용한답시고 넣은건데 뭐가 문제여서 제 정보만 낼름하고 저장하는걸까요 ㅠ
스크립터브혼
2021.01.23올려주신 코드로는 알 수 없어요.
탈인간
2021.01.24커흡.. ㅠㅠㅠ 스코어보드자체의 문제인가.. 그럼 대체용으로 액션바를 사용해야겠네요..