Beobma
대표칭호 없음
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
2023.09.11스코어보드 오퍼레이션으로 더하거나 비교한 뒤 storage값에 저장하여 간접적으로 더하거나 비교하는 방법이 있습니다!
Beobma
2023.09.11아, 그런 방법이 있었네요. 감사합니다.