ron_sa
정품인증자
ron_sa a469b8b74d5b4b778a78cd225101abff
스크립트 애드온 | 2.6-beta2 |
---|
command /test: trigger: set {ks.loc} to location 4 forward and 1.5 above the player send "%{ks.loc}%"
제가 이런식으로 플레이어가 바라보는 4칸앞과 1.5칸 위의 좌표를 {ks.loc}에 저장했는데요,
그러나 마인크래프트에서의 ^ ^1.5 ^4 좌표와 {ks.loc} 이 일치하지 않더라고요..
비슷하긴 하지만 결국 다르길래 물어봅니다..!
어떻게 해야 두 좌표를 일치시킬 수 있을가요?
스크립터브혼
2021.07.25forward는 플레이어가 바라보는 방향입니다. 플레이어가 기준이 되죠.
명령어에서 사용하는 ^는 좌표계입니다. 각각 x, y, z를 의미하죠. 월드가 기준입니다.
플레이어가 하늘을 보고있다면 forward는 하늘방향입니다. 앞이나 옆이 아니에요.
west, east, south, north를 사용해보세요.
ron_sa
2021.07.26월드가 기준인 좌표는 ~ 아니였나요..? 그리고 저는 플레이어가 바라보고 있는 방향을 기준으로 4칸앞, 1.5칸위를 원한게 맞아요!
앞에서 말하신것 처럼 하늘을 보고 있다면 하늘방향이 되게끔 말이에요..!
스크립터브혼
2021.07.26command /test: trigger: set {ks.loc} to ExprLocationMove( player, 0, 1.5, 4 ) send "%{ks.loc}%"
벡터로 직접 이동 방향을 만들어서 구현했습니다. 이 함수로 해보세요.
0, 1.5, 4
은^0 ^1.5 ^4
와 같습니다.ron_sa
2021.07.26진짜 감사합니다..! 잘 작동하네요!
그리고 제가 함수와 관련된건 알아도 벡터에 대해선 아직 잘 몰라서 혹시 벡터를 이해할 수 있을만한 글이나 링크를 주실 수 있으신가요?
그리고
이 구문에서 {_%loop-value%} 가 모든 변수와 충돌이 일어나는 이름이라고 나와서
이렇게 바꿨더니 이제 {_v::%loop-value%} 와 {_v::x} 가 충돌한다고 하네요.. 이건 같아야 하는게 맞으니 어떻게 바꿔야 할지 모르겠어요
혹시 다르게 바꾸는 방법이나 저 구문에서만 경고메시지가 안뜨게 할 수 있나요..??
스크립터브혼
2021.07.26해당 함수가 정의된 파일에 아래 코드를 추가하세요.
변수 이름 중복 경고를 하지 않겠다는 의미입니다.
벡터는 수학에서 말하는 그 벡터입니다.
https://skriptlang.github.io/Skript/expressions.html#ExprVectorAngleBetween
skript docs에서 벡터 익스프레션 참고하세요.