Aleugallia b5a91f4a3d5142cc922d6ab6e7f41b87
안녕하세요.
1.20.2 버전 데이터팩에 매개변수 라는 것이 추가되었습니다.
매개변수는 다른 코드를 인용하여 설명하자면,
void Run(int A)
이와 같은 형태에서 A가 매개변수 라는 겁니다.
이걸 데이터팩 함수 부문으로 변환하면?
$execute at @s run tp @s ^ ^ ^$(A)
이 코드를 함수에 넣고(이 때, A는 매개변수의 이름과 같기 때문에 다른 걸로 바꿔도 괜찮습니다.)
/function (위 함수) {A:100}
이러한 명령어를 실행하면 A = 100 즉, ^ ^ ^100 과 같이 인식하여 플레이어가 바라보는 방향 100칸으로 던져버리는 코드입니다.
A의 값을 3으로 하면 3칸만,
43으로 하면 43으로 되는 겁니다.
다만, 매개변수를 하나라도 넣은 이상 모든 매개변수의 값을 할당해야만 함수를 호출할 수 있습니다.
즉, 위와 같이 A 매개변수를 함수 내에 넣은 이상,
/function (위 함수)
이런 식으로 함수를 호출하면?
네. 이걸 프로그래밍 언어에서 예외처리라고 합니다.
일반적으로, if (A != null) 라는 형식의 조건문을 추가하여 해결하는데,
아쉽게도 매개변수끼리 더하거나, 비교하는 작업을 불가능하기 떄문에 그저 알고만 있으면 될 것 같습니다.
yusin12
23 일 전스코어보드 오퍼레이션으로 더하거나 비교한 뒤 storage값에 저장하여 간접적으로 더하거나 비교하는 방법이 있습니다!
Beobma
23 일 전아, 그런 방법이 있었네요. 감사합니다.