플레이어가 이동을 할때, 혹은 한 블럭을 이동을 할때 발생하는 이벤트가 있을까요? 일정거리 혹은 일정블럭을 이동했을때 발동하려고 하는데 on move on stone 을 이용해봤는데 제자리 점프로 해당 되고 블럭을 모두 설정해줘야 하더라구요. 다른 방법이 있을지 궁금합니다.
그런 이벤트는 없고 반복적으로 플레이어의 변화를 감지하도록 코드를 짜야합니다. 플레이어와 상관없이 주기적으로 플레이어의 이전 위치와 현재 위치를 비교하여 기능을 실행할지 않할지 결정해야합니다.
흔히들 [Periodical]이벤트로 주기적으로 코드가 실행되도록 구성합니다만, 저는 [On Join]이벤트에서 While 반복문과 [Is Online]을 사용하는 방식을 추천드립니다. 이 내용은 [예제분석6 - 반복 시행] 강좌에서 다룬적이 있습니다. 위 포스트의 하단에 "주기적 이벤트(Periodical Event)의 문제" 부분을 참고해주세요.
주기적으로 실행되도록 구성되었다면 그 안에 플레이어의 위치가 얼마나 변하였는지 계산하도록 해야합니다. 현재의위치는 On Join이벤트이므로 location of %player%로 받을 수 있습니다. 이전 위치는 코드의 마지막 부분에 저장해주어야 합니다. 그래야 다음 실행시 비교를 할 수 있겠죠. 두 좌표간 거리는 [Distance]익스프레션으로 얻을 수 있습니다. > distance between %location% and %location%
스크립터브혼
2021.04.01그런 이벤트는 없고 반복적으로 플레이어의 변화를 감지하도록 코드를 짜야합니다.
플레이어와 상관없이 주기적으로 플레이어의 이전 위치와 현재 위치를 비교하여 기능을 실행할지 않할지 결정해야합니다.
흔히들 [Periodical]이벤트로 주기적으로 코드가 실행되도록 구성합니다만,
저는 [On Join]이벤트에서 While 반복문과 [Is Online]을 사용하는 방식을 추천드립니다.
이 내용은 [예제분석6 - 반복 시행] 강좌에서 다룬적이 있습니다.
위 포스트의 하단에 "주기적 이벤트(Periodical Event)의 문제" 부분을 참고해주세요.
주기적으로 실행되도록 구성되었다면 그 안에 플레이어의 위치가 얼마나 변하였는지 계산하도록 해야합니다.
현재의위치는 On Join이벤트이므로 location of %player%로 받을 수 있습니다.
이전 위치는 코드의 마지막 부분에 저장해주어야 합니다. 그래야 다음 실행시 비교를 할 수 있겠죠.
두 좌표간 거리는 [Distance]익스프레션으로 얻을 수 있습니다.
> distance between %location% and %location%
뇽뇨뇽
2021.04.02제가 말을 어렵게 적었나봅니다..! 들어온 뒤 일정 거리를 측정하는게 아닌 걸음 수 를 측정하고 싶습니다. 일정 걸음 수가 될때마다 이벤트가 발동하는...
예를 들어보자면 100걸음 200걸음 때마다 신속을 부여한다던지... 해서 걸음수를 확인 하는 방법이 있는지 궁금합니다!
스크립터브혼
2021.04.03'걸음'을 셀 수 없습니다. 이동한 '거리'를 측정할 순 있죠.
이동거리를 재는것도 마찬가지입니다.
플레이어의 위치가 변한 정도를 계속 더하여 일정거리가 넘어간다면
측정된 거리를 0으로 초기화하고, 필요한 효과를 주도록 구성하면 됩니다.