API 문서
CommandHelper 의 모든 펑션 목록을 정리한 문서입니다.
- 배열 관리
- 기본 논리
- 보스바
- 버킷 메타데이터
- 바이트 배열
- 클립보드
- 명령줄 인터페이스
- 명령어
- 컴파일러
- 암호화
- 데이터 관리
- 데이터 변환
- 디버그
- 메시지 출력
- 인첸트
- 엔디티 관리
- 환경
- 이벤트 등록
- 예외 처리
- 실행 대기열
- 확장기능 정보
- 파일 관리
- 인벤토리 관리
- 아이템 메타
- 흐르는 글씨
- 수학
- 메타
- 마인크래프트
- 몹 관리
- OAuth
- 성능
- 권한
- 지속 저장소
- 플레이어 관리
- 플러그인 메타
- 조합법
- 리플렉션
- 정규식
- 리소스 관리
- SQL
- 샌드박스(불안정)
- 스케줄링
- 스코어보드
- 문자열 관리
- 작업 관리
- 쓰레드
- 날씨
- 웹
- 월드
- XGUI
배열 관리
array
펑션을 이용하세요. 자세한 정보는 초보자 가이드의 배열 항목에서 확인하세요.
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
array_contains() | boolean | 배열, 테스트 값 | CastException | 테스트 값이 배열 값에 존재하는지 확인합니다. 배열의 키는 검사하지 않습니다. 키의 존재 여부를 확인하려면, array_index_exists() 를 사용하세요. | 아니오 |
array_contains_ic() | boolean | 배열, 테스트 값 | CastException | array_contains 와 동일하게 작동하지만, 대소문자를 무시합니다. | 아니오 |
array_deep_clone() | 배열 | 배열 | CastException InsufficientArgumentsException | 배열을 깊게 복제합니다. 다차원 배열을 복제할 때 유용합니다. | 아니오 |
array_every() | boolean | 배열, 클로저 | CastException | 만약 모든 값이 테스트를 통과한다면 참을 반환합니다. 클로저의 내용이 테스트 코드이며, 테스트를 통과하지 못한 값이 있다면 작업은 즉시 중지되고 거짓을 반환합니다. 클로저는 배열의 각 값을 하나씩 처리하며, boolean 을 반환해야 합니다. | 아니오 |
array_filter() | 배열 | 배열,boolean 클로저(키, 값) | CastException | 배열의 값을 콜백을 통해 걸러냅니다. 배열의 값 하나하나씩 클로저에 들어갑니다. 만약 아이템이 배열에 포함되어야 한다면 참을 반환하고, 포함되지 않아야 할 경우 거짓을 반환하면 됩니다. 만약 키가 있는 배열이라면, 키와 값은 걸러지기 전과 똑같이 연결됩니다. 일반 배열의 경우, 값들은 새로운 배열에 추가됩니다. 즉, 이전의 배열과 키 값이 동일하지 않습니다. | 아니오 |
array_get() | 다양함 | 배열, 인덱스, [기본값] | CastException IndexOverflowException | 배열의 인덱스에 맞는 값을 반환합니다. 만약 값이 존재하지 않는다면, 예외가 발생합니다. | 아니오 |
array_implode() | 문자열 | 배열, [연결 문자열] | CastException | 배열을 연결 문자열로 붙입니다.(키는 포함되지 않습니다.) 기본 연결 문자열은 빈 공간 한 자 입니다. 예를 들면, array_implode(array(1,2,3), '-') 은 "1-2-3" 을 반환합니다. | 아니오 |
array_index() | 다양함 | 배열, 값 | CastException | array_indexes(array, value)[0] 과 동일하게 작동합니다. 하지만 값을 찾을 수 없을 경우, null을 반환합니다. 즉, 만약 값이 배열에 존재한다면(여러번 존재하더라도) 첫번째 값의 키가 반환됩니다. | 아니오 |
array_index_exists() | boolean | 배열, 인덱스... | CastException | 주어진 배열에 주어진 인덱스가 존재하는지 확인합니다. 만약 여러개의 인덱스가 주어진다면, n번째 인덱스가 존재하는지 확인하고, n번째 인덱스의 값이 배열인지 확인하며, 해당 배열에 n+1번째 인덱스가 존재하는지 확인하는 작업을 마지막 인덱스까지 반복하고, 마지막 인덱스가 존재한다면 참을 반환합니다. | 아니오 |
array_indexes() | 배열 | 배열, 값 | CastException | 주어진 값을 가지는 키들의 배열을 반환합니다. 예를 들어 array(1, 2, 2, 3) 배열이 있다면, 2를 값으로 한다면 array(1, 2) 를 반환합니다. 만약 해당 값이 배열에 존재하지 않는다면, 빈 배열이 반환됩니다. | 아니오 |
array_insert() | 반환 값이 비어있음 | 배열, 값, 인덱스 | CastException IndexOverflowException | 값을 인덱스에 삽입하고 다른 값들을 오른쪽으로 한칸 옮깁니다. 만약 인덱스가 배열의 크기보다 크다면, IndexOverflowException 이 호출됩니다. 만약 인덱스가 배열의 크기와 같다면, array_push 와 동일하게 작동합니다. 배열은 일반 배열이여야 하며, 키가 있는 배열은 지원하지 않습니다. | 아니오 |
array_iterate() | 배열 | 배열, 클로저 | CastException | 배열을 반복합니다. 배열의 각 값에 대해 클로저를 호출합니다. 클로저는 키와 값 두가지 인수가 있습니다. 이 펑션은 특정 코드에서 가독성, 재사용성을 향상시킬 수 있습니다. 참고로 이 펑션은 for 루프와 동일한 속도로 작동합니다. 즉 foreach 보다 느립니다. 클로저에서 반환된 모든 값은 무시됩니다. 원래 배열을 반환합니다. | 아니오 |
array_keys() | 배열 | 배열 | CastException | 주어진 배열의 모든 키 배열을 반환합니다. 만약 주어진 배열이 일반 배열이라면, 키는 0 에서 (array_size(배열) -1) 입니다. | 아니오 |
array_last_index() | 다양함 | 배열, 값 | CastException | 주어진 값이 존재하는 마지막 인덱스를 반환합니다. 만약 주어진 값이 없는 배열이라면 null 을 반환합니다. 즉 값이 여러번 존재하더라도 항상 마지막 주어진 값의 인덱스가 반환됩니다. | 아니오 |
array_map() | 배열 | 배열, 클로저 | CastException IllegalArgumentException | 배열의 각 값에 대한 클로저를 호출합니다. 그리고 해당 클로저의 결과가 있는 배열을 반환합니다. | 아니오 |
array_merge() | 배열 | 배열1, 배열2, ]배열N...] | InsufficientArgumentsException CastException | 주어진 배열들을 왼쪽에서 오른쪽으로 합친 배열을 반환합니다. 만약 배열이 키가 있는 배열이라면, 키는 왼쪽에서 오른쪽으로 덮어씁니다. 일반 배열이라면, 키는 무시되고 값만 추가됩니다. | 아니오 |
array_normalize() | 배열 | 배열 | CastException | 주어진 키가 있는 배열을 일반 배열로 변환하여 반환합니다. (만약 주어진 배열이 일반 배열이라면, 그 배열이 복사됩니다.) | 아니오 |
array_push() | 반환 값이 비어있음 | 배열, 값 ]값N...] | CastException | 주어진 값(들)을 주어진 배열의 끝에 추가합니다. 일반 배열에서의 array_set(@배열, array_size(@배열), @값) 과 다르게, 배열의 크기가 먼저 커집니다. 즉, IndexOverflowException 이 호출되지 않습니다. @배열[] = '값' 과 같은 형식도 array_push() 와 같은 기능을 합니다. | 아니오 |
array_rand() | 배열 | 배열, [숫자,[키 반환 여부]] | RangeException CastException | 주어진 배열에서 무작위로 키 혹은 값을 반환합니다. 배열은 일반 혹은 키가 있어도 좋습니다. 기본 숫자는 1이고, 키 반환 여부는 기본 참입니다. 만약 숫자가 배열의 크기보다 크다면, RangeException 이 호출됩니다. 배열에서 같은 값이 두 번 반환되진 않습니다. 즉, 무작위 선택에서 한번 선택되면 "제외" 됩니다. 배열의 값 순서도 무작위입니다. 순서가 중요하다면, array_sort() 를 사용하세요. | 아니오 |
array_reduce() | 다양함 | 배열, 클로저 | CastException IllegalArgumentException | 배열을 한 값으로 줄입니다. 이는 배열의 값을 더하는 작업과 같은 작업에 유용합니다. 이전에 계산된 값, 배열에서의 다음 값이 클로저로 보내집니다. 그리고 클로저에서 반환된 값은 또 배열에서의 다음 값과 함께 다음 클로저로 보내집니다. 만약 배열이 비어 있다면, null 이 반환되며, 배열에 한 값만 존재한다면 그 값이 반환됩니다. 키가 있는 배열도 지원되며, 순서는 키의 순서를 따르기 때문에 예상하지 못한 순서가 나올 수 있습니다. 배열의 키는 무시됩니다. | 아니오 |
array_reduce_right() | 다양함 | 배열, 클로저 | CastException IllegalArgumentException | 배열을 한 값으로 줄입니다. 이는 array_reduce 의 반대 순서와 같습니다. 이는 배열의 값을 더하는 작업과 같은 작업에 유용합니다. 이전에 계산된 값, 배열에서의 다음 값이 클로저로 보내집니다. 그리고 클로저에서 반환된 값은 또 배열에서의 다음 값과 함께 다음 클로저로 보내집니다. 만약 배열이 비어 있다면, null 이 반환되며, 배열에 한 값만 존재한다면 그 값이 반환됩니다. 키가 있는 배열도 지원되며, 순서는 키의 순서를 따르기 때문에 예상하지 못한 순서가 나올 수 있습니다. 배열의 키는 무시됩니다. | 아니오 |
array_remove() | 다양함 | 배열, 인덱스 | RangeException CastException PluginInternalException | 배열에서 인덱스를 지웁니다. 만약 배열이 일반 배열이라면, 사라진 값 다음 값들은 왼쪽으로 한 칸 갑니다. 만약 키가 있는 배열이라면, 인덱스가 단순히 사라집니다. 인덱스가 존재하지 않는다면, 배열은 바뀌지 않습니다. 제거된 값이 반환됩니다. | 아니오 |
array_remove_values() | 반환 값이 비어있음 | 배열, 값 | CastException | 주어진 배열에서의 모든 주어진 값을 지웁니다. 예를 들어, array_remove_values(array(1, 2, 2, 3), 2) 는 array(1, 3) 을 반환합니다. 참고로 이 펑션은 반환 값이 없기 때문에, array_remove 처럼 배열을 수정하기만 합니다. (ivar 를 이용하는 것이 좋습니다.) | 아니오 |
array_resize() | 배열 | 배열, 크기, [채울 값] | CastException | 주어진 배열을 주어진 크기로 조정합니다. 빈 공간은 채울 값에 따라 채워지며, 기본적으로 null 이 채워집니다. 만약 주어진 크기가 배열의 크기보다 작으면, 아무 일이 일어나지 않습니다. 즉, 이 펑션은 배열의 크기를 키울 때에만 사용가능합니다. 쉬운 사용을 위해 수정된 배열이 반환됩니다. | 아니오 |
array_reverse() | 반환 값이 비어있음 | 배열 | CastException | 배열을 거꾸로 만듭니다. 만약 키가 있는 배열이라면 CastException 을 호출합니다. | 아니오 |
array_scontains() | boolean | 배열, 테스트 값 | CastException | 배열이 테스트 값과 같은 데이터 형식과 값을 가지고 있는지 확인합니다. 키가 있는 배열의 경우 값만 검색하고 키는 무시됩니다. 만약 키가 존재하는지 확인하고 싶다면, array_index_exists() 를 사용하세요. | 아니오 |
array_set() | 다양함 | 배열, 인덱스, 값 | CastException IndexOverflowException | 인덱스를 설정하여 배열에 넣습니다. 기본적으로 아무것도 반환하지 않으며, 만약 주어진 배열의 값이 없다면, 예외를 호출합니다. 이를 방지하려면 array_push 를 사용하세요. 쉬운 사용을 위해 설정된 값이 반환됩니다. | 아니오 |
array_shallow_clone() | 배열 | 배열 | CastException InsufficientArgumentsException | 배열을 간단히 복제합니다.(깊은 복제의 반대) | 아니오 |
array_size() | 정수 | 배열 | CastException | 배열의 크기를 정수로 반환합니다. | 아니오 |
array_some() | boolean | 배열, 클로저 | CastException | 테스트를 통과하는 값이 하나라도 존재한다면 참을 반환합니다. 클로저는 반드시 참이나 거짓을 반환해야 합니다. 항상 모든 값을 확인하지 않으며, 만약 하나의 값이 테스트에 통과하면 실행이 중지되며 참이 반환됩니다. 클로저엔 배열의 값이 하나하나씩 주어집니다. | 아니오 |
array_sort() | 배열 | 배열, [정렬 방식] | CastException FormatException | 배열을 정렬하고, 결과를 반환합니다. 정렬 방식은 REGULAR, NUMERIC, STRING, STRING_IC 중 하나입니다. | 아니오 |
array_sort_async() | 반환 값이 비어있음 | 배열, [정렬 방식], 클로저(배열) | CastException | array_sort 와 동일하지만, 다른 쓰레드에서 실행됩니다. 실행이 완료되면 클로저에 정렬된 배열을 보냅니다. 이는 배열이 아주 클 때 유용합니다. 정렬 방식은 REGULAR, NUMERIC, STRING, STRING_IC 중 하나입니다. | 아니오 |
array_unique() | 배열 | 배열, [비교할 형식] | CastException | 배열에서 특별하지 않은 값을 전부 제거합니다. | 아니오 |
cslice() | 배열 범위 | 시작, 끝 | CastException | array_get(혹은 배열 뒤 []) 에서만 사용할 수 있는 배열 범위를 반환합니다. 예를 들어, array_get(array(1, 2, 3, 4, 5), cslice(0, 3)) 는 {1, 2, 3, 4} 을 반환합니다. 이는 cslice(0, 5) 는 일반 코드에서 0..5 처럼 사용할 수도 있습니다. 일반 코드와 달리 이 펑션을 이용하면 cslice(@var, @var) 처럼 일반 코드에서 불가능한 복잡한 식을 사용하는 것도 가능합니다. | 아니오 |
range() | 배열 | 시작, 끝 [공비] 끝 | CastException | 시작 값이 첫째항이고 (끝 값 - 1) 까지 도달하는 등차수열을 생성합니다. 만약 시작이나 공비가 주어지지 않는다면 시작 값은 0, 공비는 1이 기본으로 설정됩니다. 만약 아무 값도 주어지지 않는다면, 빈 배열을 반환합니다. | 아니오 |
기본 논리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
and() | boolean | 값1, [값2...] | CastException | AND 연산을 수행하고 그 값을 boolean 으로 반환합니다. 모든 값을 검사하지 않기 때문에, 만약 하나의 값이라도 거짓이 나오는 즉시 값이 반환됩니다. 연산자 구문도 지원합니다: @a && @b | 아니오 |
bit_and() | 정수 | 정수1, 정수2, [정수3...] | CastException InsufficientArgumentsException | 비트 AND 연산을 수행합니다. | 아니오 |
bit_not() | 정수 | 정수1 | CastException | 비트 NOT 연산을 수행합니다. | 아니오 |
bit_or() | 정수 | 정수1, 정수2, [정수3...] | CastException InsufficientArgumentsException | 비트 OR 연산을 수행합니다. | 아니오 |
bit_xor() | 정수 | 정수1, 정수2, [정수3...] | CastException InsufficientArgumentsException | 비트 XOR 연산을 수행합니다. | 아니오 |
compile_error() | 없음 | 메시지 | 즉시 컴파일 에러를 호출합니다. 이는 스크립트 환경이 올바르지 않은 상태 등에서 컴파일 에러를 원하는 대로 만들고 싶을 때 유용합니다. | 예 | |
dand() | 다양함 | ... | 첫 거짓 값을 반환합니다. 모든 값을 검사하지 않기 때문에, 만약 첫번째 계산이 거짓이라면 나머지 값은 계산되지 않습니다. 거짓 값이 나오지 않았다면, 참이 반환됩니다. 연산자 구문 &&& 사용이 권장됩니다. | 아니오 | |
dor() | 다양함 | ... | 첫번째 참 값을 반환합니다. 모든 값을 계산하지 않기 때문에, 첫번째 값이 참이라면 나머지 값은 계산되지 않습니다. 만약 참인 값이 없을 경우, 마지막 값이 반환됩니다.(즉, 거짓인 값) 연산자 구문을 권장합니다: ||| | 아니오 | |
equals() | boolean | 값1, 값2[, 값X...] | InsufficientArgumentsException | 주어진 모든 값이 동일한지 참, 거짓을 반환합니다. 연산자 구문도 지원합니다: @a == @b | 아니오 |
equals_ic() | boolean | 값1, 값2[, 값X...] | InsufficientArgumentsException | 주어진 모든 값이 동일한지 참, 거짓을 반환합니다. 대소문자를 구분하지 않습니다. | 아니오 |
gt() | boolean | 값1, 값2 | CastException | 왼쪽 값이 오른쪽 값이 크면 참, 작으면 거짓을 반환합니다. 연산자 구문을 지원합니다: @a > @b | 아니오 |
gte() | boolean | 값1, 값2 | CastException | 왼쪽 값이 오른쪽 값이 크거나 같으면 참, 작으면 거짓을 반환합니다. 연산자 구문을 지원합니다: @a >= @b | 아니오 |
if() | 다양함 | 조건, 참일시 반환 값, [거짓일시 반환 값] | CastException | 만약 첫번째 인수의 계산 값이 참이라면, 두번째 인수가 반환되고, 아니라면 세번째 인수가 반환됩니다. 만약 세번째 인수가 없다면, 빈 값을 반환합니다. | 아니오 |
ifelse() | 다양함 | [boolean1, 코드]..., [거짓일시 코드] | InsufficientArgumentsException | 연속된 if/else 의 간단한 버전입니다. 모든 조건이 참이여서 거짓일시 코드가 실행될 수 없다면, 빈 값이 반환됩니다. | 아니오 |
lshift() | 정수 | 값, 이동할 비트 수 | CastException | 주어진 값을 주어진 비트 수 만큼 왼쪽으로 이동시킵니다. | 아니오 |
lt() | boolean | 값1, 값2 | CastException | 왼쪽 값이 오른쪽 값보다 작으면 참, 크면 거짓을 반환합니다. 연산자 구문을 지원합니다: @a < @b | 아니오 |
lte() | boolean | 값1, 값2 | CastException | 왼쪽 값이 오른쪽 값보다 작거나 같으면 참, 크면 거짓을 반환합니다. 연산자 구문을 지원합니다: @a < @b | 아니오 |
nand() | boolean | 값1, [값2...] | CastException | not(and()) 와 같은 역할을 합니다. | 아니오 |
nequals() | boolean | 값1, 값2 | 두 값이 같지 않다면 참을 반환합니다. not(equals(값1, 값2)) 와 같습니다. 연산자 구문을 지원합니다: @a != @b | 아니오 | |
nequals_ic() | boolean | 값1, 값2 | 두 값이 같지 않다면 참을 반환합니다. 대소문자를 구분하지 않습니다. | 아니오 | |
nor() | boolean | 값1, [값2...] | CastException | not(or()) 과 같은 역할을 합니다. | 아니오 |
not() | boolean | 값1 | CastException | NOT 연산을 수행합니다. 연산자 구문을 지원합니다: !@var | 아니오 |
or() | boolean | 값1, [값2...] | CastException | OR 연산을 수행합니다. 모든 값을 검사하지 않기 때문에, 한번 참 값이 반환될 경우 나머지 값은 연산하지 않습니다. 연산자 구문도 지원합니다: @a || @b | 아니오 |
ref_equals() | boolean | 값1, 값2 | 만약 두 값이 완전히 동일하다면 참을 반환합니다. 오브젝트나 배열 비교에 유용합니다. | 아니오 | |
rshift() | 정수 | 값, 이동할 비트 수 | CastException | 주어진 값을 주어진 비트 수 만큼 오른쪽으로 이동시킵니다. | 아니오 |
sequals() | boolean | 값1, 값2 | 엄격한 동일 검사를 합니다. 두 같이 완전히 똑같을 뿐 만 아니라, 같은 형식을 가지고 있어야 합니다. 즉, equals('1', 1) 은 참 이지만, sequals('1', 1) 은 앞의 1은 문자열이고 뒤의 1은 정수이기 때문에 거짓을 반환합니다. 연산자 구문을 지원합니다: @a === @b | 아니오 | |
sequals_ic() | boolean | 값1, 값2 | 두 값과 두 값의 형식이 같다면 참을 반환합니다. 대소문자 구분을 하지 않습니다. 대부분의 대소문자 구분이 있는 형식은 문자열이지만, 이 펑션은 해당 변수가 문자열인지 확실하지 않을 경우에 유용합니다. | 아니오 | |
snequals() | boolean | 값1, 값2 | not(sequals(값1, 값2)) 와 같습니다. 연산자 구문을 지원합니다: @a !== @b | 아니오 | |
switch() | 다양함 | 값, [주어진 값과 동일할 수 있는 값, 코드]..., [기본 코드] | InsufficientArgumentsException | switch 구문을 수행합니다. 만약 모든 조건이 일치하지 않고, 기본 코드가 없을 경우, 빈 값이 반환됩니다. 자세한 정보는 초보자 가이드의 논리 부분을 확인하세요. | 아니오 |
urshift() | 정수 | 값, 이동할 비트 수 | CastException | 주어진 값을 주어진 비트 수 만큼 오른쪽으로 이동시킵니다. 0 을 밀 경우, 부호 없는 오른쪽 밀기와 똑같이 작동합니다. | 아니오 |
xnor() | boolean | 값1, 값2 | CastException | XNOR 연산을 수행합니다. | 아니오 |
xor() | boolean | 값1, 값2 | CastException | XOR 연산을 수행합니다. | 아니오 |
보스바
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
bar_add_player() | 반환 값이 비어있음 | id, 플레이어 | NotFoundException PlayerOfflineException LengthException | 특정한 보스 바에 플레이어를 추가합니다. | 예 |
bar_remove_player() | 반환 값이 비어있음 | id, 플레이어 | NotFoundException PlayerOfflineException LengthException | 특정한 보스 바에서 플레이어를 제거합니다. | 예 |
create_bar() | 반환 값이 비어있음 | id, [옵션 배열] | IllegalArgumentException CastException FormatException RangeException Exception | id 를 가진 새 보스바를 만듭니다. 옵션 배열의 키들은 이렇습니다: title, color, style, visible, percent. Title 은 보스바 위의 제목이며, Color 는 PINK, BLUE, RED, GREEN, YELLOW, PURPLE, WHITE 중 하나입니다. Style 은 SOLID(나눠지지 않음), SEGMENTED_6(6칸), SEGMENTED_10(10칸), SEGMENTED_12(12칸), SEGMENTED_20(20칸) 중 하나입니다. Visible 은 보일지 말지의 여부를 결정하는 boolean 이며, Percent 는 바가 얼마나 채워져 있을지 여부를 결정하는 0.0 에서 1.0 까지의 소수 값입니다. 기본 옵션은 빈 제목, 색상 WHITE, 스타일 SOLID, 보임 여부 참, 꽉 채워져 있는 바입니다. | 예 |
get_bar() | 배열 | id | NotFoundException | 주어진 보스바의 옵션을 반환합니다. | 예 |
get_bar_players() | 배열 | id | NotFoundException | 주어진 보스바를 볼 수 있는 플레이어의 배열을 반환합니다. | 예 |
get_bars() | 배열 | 현재 사용중인 모든 보스바의 id 배열을 반환합니다. | 예 | ||
remove_bar() | 반환 값이 비어있음 | id | NotFoundException | 모든 플레이어에게 보스 바를 제거합니다. | 예 |
update_bar() | 반환 값이 비어있음 | id, 옵션 배열 id, 퍼센트 id, 제목 | IllegalArgumentException CastException FormatException NotFoundException RangeException | 주어진 보스 바에 변경을 가합니다. 옵션 배열에서 사용 가능한 옵션 키는 create_bar() 를 참고하세요. 만약 두번째 인수가 문자열이면, 제목만을 변경하고, 소수라면 바의 퍼센트(채워진 정도) 만 변경합니다. | 예 |
버킷 메타데이터
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
get_metadata() | 다양함 | [객체], 키 객체, 키, [플러그인] | BadEntityException CastException FormatException InvalidPluginException LengthException InvalidWorldException PlayerOfflineException | 주어진 객체의 메타데이터 값을 반환합니다. 객체는 위치 배열(블록일 경우), 엔디티 ID(엔디티일 경우), 문자열(월드일 경우) 중 하나입니다. 만약 키만 주어졌을 경우, 대상 엔디티는 이 펑션을 실행하는 플레이어입니다. 이 펑션은 해당 키와 엔디티에 대해 플러그인이 등록한 값의 목록을 키가 있는 배열으로 반환합니다. 만약 플러그인 인수가 주어졌을 경우(플러그인 이름의 문자열) ,이 펑션은 해당 플러그인이 등록한 값만 반환하거나, 어떠한 메타데이터를 찾을 수 없다면 null 을 반환합니다. --- 버킷 메타데이터는 플러그인들이 특정 블록, 엔디티, 월드에 대한 정보를 서로 의존성을 가지고 있지 않아도 공유할 수 있게 합니다. 메타데이터는 서버가 리로드되어도 유지되지만, 재시작하면 사라집니다. 플레이어에게 부여된 메타데이터는 재접속하여도 유지됩니다. | 예 |
has_metadata() | boolean | [객체], 키 객체, 키, [플러그인] | BadEntityException CastException FormatException InvalidPluginException LengthException InvalidWorldException PlayerOfflineException | 만약 주어진 객체가 해당 키에 대해 메타데이터를 가지고 있는지 확인합니다. 객체는 위치 배열(블록일 경우), 엔디티 ID(엔디티일 경우), 문자열(월드일 경우) 중 하나입니다. 만약 키만 주어졌을 경우, 대상 엔디티는 이 펑션을 실행하는 플레이어입니다. 만약 플러그인 인수가 주어졌을 경우(플러그인 이름의 문자열), 해당 키를 주어진 플러그인이 객체에 부여했는지 확인합니다. 버킷 메타데이터에 대해 더 자세히 알고 싶으시다면 get_metadata() 항목을 확인하세요. | 예 |
remove_metadata() | 반환 값이 비어있음 | [객체], 키 객체, 키, [플러그인] | BadEntityException CastException FormatException InvalidPluginException LengthException InvalidWorldException PlayerOfflineException | 주어진 객체의 주어진 키의 메타데이터를 제거합니다. 객체는 위치 배열(블록일 경우), 엔디티 ID(엔디티일 경우), 문자열(월드일 경우) 중 하나입니다. 만약 키만 주어졌을 경우, 대상 엔디티는 이 펑션을 실행하는 플레이어입니다. 플러그인 인수가 주어지지 않았을 경우, 그 키를 가진 모든 플러그인의 메타데이터를 제거합니다. 버킷 메타데이터에 대해 더 자세히 알고 싶으시다면 get_metadata() 항목을 확인하세요. | 예 |
set_metadata() | 반환 값이 비어있음 | [객체], 키, 값 객체, 키, 값, [플러그인] | BadEntityException CastException FormatException InvalidPluginException LengthException InvalidWorldException PlayerOfflineException | 주어진 객체의 주어진 키에 값을 등록합니다. 객체는 위치 배열(블록일 경우), 엔디티 ID(엔디티일 경우), 문자열(월드일 경우) 중 하나입니다. 만약 키만 주어졌을 경우, 대상 엔디티는 이 펑션을 실행하는 플레이어입니다. 만약 플러그인 인수가 주어졌을 경우(플러그인 이름의 문자열), 해당 플러그인의 이름으로 메타데이터를 등록하며, 주어지지 않았을 경우 'MethodScript' 라는 이름으로 등록합니다. 버킷 메타데이터에 대해 더 자세히 알고 싶으시다면 get_metadata() 항목을 확인하세요. | 예 |
바이트 배열
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
ba_as_array() | 배열 | 바이트_배열 | CastException | 바이트 배열의 새 읽기 전용 복사본을 반환합니다. 이 배열은 수동으로 만든 배열보다 훨씬 더 효율적이지만, 읽기 전용입니다. 만약 배열의 내용을 수정하고 싶다면, 배열을 복제할 수 있습니다. 하지만 반환된 배열(과 모든 복사본) 은 자동으로 바이트 배열 자료형으로 변환될 수 없습니다. 이 작업은 힘듭니다. 왜냐하면 일반 배열은 하위 레벨 비트 데이터를 다루기엔 매우 비효율적이기 때문입니다. | 아니오 |
ba_get_byte() | 정수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 8 비트 byte 로 읽고, int 로 반환합니다. | 아니오 |
ba_get_bytes() | 바이트_배열 | 바이트_배열, 길이, [위치] | CastException RangeException | 주어진 위치혹은 마커가 있는 위치부터 시작해서 길이만큼의 길이를 가진 바이트 배열을 반환합니다. | 아니오 |
ba_get_char() | 문자열 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 32 비트 char 로 읽고, 한 글자 문자열을 반환합니다. | 아니오 |
ba_get_double() | 실수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 64 비트 double 로 읽고, double 를 반환합니다. | 아니오 |
ba_get_float() | 실수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 32 비트 float 로 읽고, double 를 반환합니다. | 아니오 |
ba_get_int() | 정수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 32 비트 int 로 읽고, int 를 반환합니다. | 아니오 |
ba_get_long() | 정수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 64 비트 long 로 읽고, int 를 반환합니다. | 아니오 |
ba_get_short() | 정수 | 바이트_배열 [위치] | CastException RangeException | 주어진 위치 혹은 마커가 있는 곳에서부터 16 비트 short 로 읽고, int 를 반환합니다. | 아니오 |
ba_get_string() | 문자열 | 바이트_배열, [위치], [인코딩] | CastException RangeException | UTF-8 인코딩된 문자열을 주어진 위치 혹은 마커가 있는 곳에서부터 반환합니다. 문자열은 32비트 int 로 인코딩 된 것으로 간주됩니다. (이는 ba_set_string 으로 문자열이 쓰여졌다고 간주하는 것입니다.) 인코딩의 기본값은 UTF-8 입니다. | 아니오 |
ba_is_little_endian() | boolean | 바이트_배열 | CastException | 만약 바이트 배열이 리틀 엔디안이면 참을 반환합니다. 기본적으로 바이트 배열은 빅 엔디안이지만, ba_set_little_endian 으로 바꿀 수 있습니다. | 아니오 |
ba_put_byte() | 반환 값이 비어있음 | 바이트_배열, int, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 int 를 쓰고, 8 비트 byte 로 번역합니다. | 아니오 |
ba_put_bytes() | 반환 값이 비어있음 | 목표_바이트_배열, 원본_바이트_배열, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 목표 바이트 배열에 원본 바이트 배열을 씁니다. | 아니오 |
ba_put_char() | 반환 값이 비어있음 | 바이트_배열, 문자열, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 문자열의 첫번째 문자를 쓰고, 32 비트 char 로 번역합니다. 만약 문자열이 비어있을 경우, \0 이 대신 쓰입니다. | 아니오 |
ba_put_double() | 반환 값이 비어있음 | 바이트_배열, double [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 double 를 쓰고, 64비트 double 로 번역합니다. | 아니오 |
ba_put_float() | 반환 값이 비어있음 | 바이트_배열, double [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 double 를 쓰고, 32비트 float 로 번역합니다. | 아니오 |
ba_put_int() | 반환 값이 비어있음 | 바이트_배열, int, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 int 를 쓰고, 32비트 int 로 번역합니다. | 아니오 |
ba_put_long() | 반환 값이 비어있음 | 바이트_배열, int, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 int 를 쓰고, 64비트 long 로 번역합니다. | 아니오 |
ba_put_short() | 반환 값이 비어있음 | 바이트_배열, int, [위치] | CastException | 주어진 위치 혹은 마커가 있는 곳에서부터 int 를 쓰고, 16비트 short 로 번역합니다. | 아니오 |
ba_put_string() | 반환 값이 비어있음 | 바이트_배열, 문자열, [위치], [인코딩] | CastException | 바이트 배열에 문자열의 길이를 short 으로 씁니다.(UTF-8 로 번역됨) 그리고 해당 UTF-8 문자열을 씁니다. 만약 외부 프로그램이 문자열을 다른 방법으로 직렬화할 필요가 있다면, 문자열 관리에서 문자열-바이트_배열 변환 펑션을 사용하는 것이 좋습니다. 하지만 이 방식으로 쓰인 문자열은 ba_get_string 과 호환됩니다. 인코딩의 기본값은 UTF-8 입니다. | 아니오 |
ba_rewind() | 반환 값이 비어있음 | 바이트_배열 | CastException | 바이트 배열 마커를 0으로 돌립니다. | 아니오 |
ba_set_little_endian() | 반환 값이 비어있음 | 바이트_배열, 리틀 엔디안 설정 | CastException | 주어진 바이트 배열의 바이트 순서를 설정합니다. 기본적으로 바이트 배열은 빅 엔디안이지만, 리틀 엔디안 설정이 참일 경우, 바이트 배열은 리틀 엔디안을 사용하게 됩니다. | 아니오 |
byte_array() | 바이트_배열 | 새로운 바이트 배열 자료형을 반환합니다. ba_ 로 시작하는 펑션들에 의해 사용됩니다. | 아니오 | ||
클립보드
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
get_clipboard() | 문자열 | [종류] | FormatException InsufficientPermissionException | 시스템 클립보드의 내용을 반환합니다. 명령줄 모드에서만 사용할 수 있습니다. 종류는 기본적으로 null 이며, 현재 사용되지 않습니다. 문자열만 지원합니다. 만약 클립보드 내용의 문자열 버전을 파싱할 수 없을 경우 FormatyException 이 발생합니다. | 예 |
set_clipboard() | 반환 값이 비어있음 | 값, [종류] | InsufficientPermissionException | 시스템 클립보드의 내용을 설정합니다. 명령줄 모드에서만 사용할 수 있습니다. 종류는 기본적으로 null 이며 현재 사용되지 않습니다. 문자열만 지원합니다. | 예 |
명령줄 인터페이스
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
cd() | 반환 값이 비어있음 | [경로] | IOException InsufficientPermissionException | 실행 디렉토리를 주어진 경로로 바꿉니다. 명령줄 모드에서만 작동합니다. | 예 |
clear_screen() | 반환 값이 비어있음 | 콘솔을 지웁니다. 명령줄 모드에서만 작동합니다. | 예 | ||
exit() | 반환 값이 비어있음 | [숫자] | 프로그램을 종료합니다. 명령줄 인터페이스에서 실행된다면, 인터프리터를 특정 코드(기본은 0)와 함께 종료합니다. 만약 게임 내 스크립트에서 실행된다면 die() 와 동일하게 작동합니다. | 아니오 | |
get_env() | 다양함 | [변수 이름] | 만약 변수 이름이 주어졌다면, 주어진 환경 변수를 반환합니다. 주어지지 않았다면 모든 환경 변수를 반환합니다. | 예 | |
get_os() | 문자열 | 현재 OS 의 이름을 반환합니다. WINDOWS, MAC, LINUX, SOLARIS, UNKNOWN 중 하나입니다. | 예 | ||
get_terminal_width() | 정수 | InsufficientPermissionException | 현재 명령 프롬포트의 좌우 넓이를 글자 수로 반환합니다. 이는 출력을 동적으로 해야할 경우 정확한 레이아웃이 필요할 때 유용합니다. 명령줄 인터페이스에서만 작동합니다. | 예 | |
in_cmdline_mode() | boolean | 만약 명령줄 인터페이스라면 참을 반환합니다. | 아니오 | ||
ls() | 배열 | [디렉토리] | InsufficientPermissionException | 현재 작동중인 디렉토리의 모든 파일의 배열을 반환합니다. "숨겨진" 파일 또한 포함합니다. 혹은 디렉토리가 주어졌을 경우, 해당 디렉토리의 모든 파일의 배열을 반환합니다. 명령줄 인터페이스에서만 작동합니다. | 예 |
print_err() | 반환 값이 비어있음 | 텍스트 | 시스템에 텍스트를 std err 으로 씁니다. 자동으로 새로운 줄을 만들지 않습니다. console() 과 달리, 메시지를 보낼 때 어떠한 형식도 존재하지 않습니다. 다른 print 펑션과 달리 이 펑션에 쓴 형식 변경은 이후에 출력되는 줄까지 영향을 미칩니다. 그러므로 여러 줄을 출력해야 할 때에는, 직접 print_out(color(RESET)) 을 통해 색상을 초기화해야 합니다. | 예 | |
print_out() | 반환 값이 비어있음 | 텍스트 | 시스템에 텍스트를 std out 으로 씁니다. 하지만 자동으로 새 줄을 만들지 않습니다. console() 과 달리, 메시지를 보낼 때 어떠한 형식도 존재하지 않습니다. 다른 print 펑션과 달리 이 펑션에 쓴 형식 변경은 이후에 출력되는 줄까지 영향을 미칩니다. 그러므로 여러 줄을 출력해야 할 때에는, 직접 print_out(color(RESET)) 을 통해 색상을 초기화해야 합니다. | 예 | |
prompt_char() | 문자열 | 물을 내용 | InsufficientPermissionException IOException | 사용자에게 한 글자를 물어봅니다. 사용자는 엔터를 칠 필요가 없습니다. 명령줄 인터페이스에서만 작동합니다. | 예 |
prompt_line() | 문자열 | 물을 내용 | InsufficientPermissionException IOException | 사용자에게 문자열을 물어봅니다. 사용자가 문자열을 입력하고 엔터를 누르면 반환됩니다. 명령줄 인터페이스에서만 작동합니다. | 예 |
prompt_pass() | 암호화된 문자열 | 물어볼 것, [가리기] | InsufficientPermissionException IOException | 사용자에게 비밀번호를 물어봅니다. 명령줄 인터페이스에서만 작동합니다. 만약 가리기 값이 참(기본) 이라면 입력하는 비밀번호가 * 으로 보입니다. 만약 가리기 값이 거짓이라면 입력하는 비밀번호가 보이지 않습니다. 값은 엔터를 누르면 반환되며, 암호화된 문자열으로 반환되기 때문에 실제 비밀번호를 얻으려면 decrypt_secure_string 을 사용해야 합니다. | 예 |
pwd() | 문자열 | ShellException | 현재 작동하는 디렉토리의 경로를 반환합니다. 이 펑션은 명령줄 인터페이스 밖에서도 작동합니다. 하지만 명령줄 인터프리터가 아닐 때에는 디버그와 같은 목적으로만 유용합니다. 만약 작동하는 디렉토리가 없다면, ShellException 이 발생합니다. | 예 | |
read_pipe_input() | 다양함 | [바이너리] | IOException InsufficientPermissionException | 이 스크립트에서의 입력값을 읽습니다. 스크립트 전체에서 얻은 데이터를 한번에 반환합니다. 그리고 이를 문자열(바이너리가 참이라면 바이트 배열)로 반환합니다. 명령줄 인터페이스에서만 사용할 수 있고, 바이너리의 기본값은 거짓입니다. 만약 스크립트가 TTY 모드가 아니라면 IOException 이 발생합니다. | 예 |
set_cmdline_prompt() | 반환 값이 비어있음 | 클로저 | CastException InsufficientPermissionException | 명령줄 프롬포트를 설정합니다. 명령줄 대화형 인터페이스에서만 사용가능합니다. 클로저는 문자열을 반환해야 하며, 문자열은 프롬포트로 사용됩니다. 프로모트가 만들어져야 할 때마다 클로저는 호출되며, 이로 인해 변형 가능한 프롬포트를 사용할 수 있습니다. 클로저엔 boolean 이 인수로 보내지는데, 만약 참이라면 명령 프롬포트가 대화형이며, 거짓이라면 일반 mscript 모드입니다. | 예 |
set_env() | 반환 값이 비어있음 | 변수 이름, 값 | 환경 변수의 값을 설정합니다. 이 변경은 해당 프로세스 안의 환경 변수에만 적용되며, 시스템엔 적용되지 않습니다. 이 펑션은 해킹과 비슷한 기술을 사용하기 때문에 모든 경우에서 작동을 보장할 순 없으며, 신뢰해서는 안됩니다. 이는 get_inv와 항상 연동되어 작동하며 이 기능을 사용할 때에는 값은 항상 문자열이라는 점을 알아두시기 바랍니다. | 예 | |
shell() | 문자열 | 명령어, [옵션] | InsufficientPermissionException ShellException IOException | 쉘 명령어를 실행합니다. <code>명령어</code> 는 문자열이나 문자열만 포함되어 있는 배열이 될 수 있습니다. 이는 shell_adv 과 비슷하게 작동합니다. 하지만 이 펑션은 반환값을 버퍼에 저장한 다음 프로세스가 끝나면 반환합니다. 또한 예상된 종료 코드가 아닌 상태로 프로세스가 종료하면 syserr 출력값과 함께 ShellException 을 발생시킵니다. 이는 복잡한 사용이 필요 없는 간단한 명령어 수행에 유용합니다. 만약 사용되는 명령어가 IOException 을 발생시키면 그대로 이 펑션에도 전달됩니다. allow-shell-commands 옵션을 켜거나 명령줄 모드에서만 작동할 수 있으며, 아닐 경우엔 InsufficientPermissionException 이 발생합니다. 옵션은 키가 있는 배열으로 키의 목록은 이렇습니다: expectedErrorCode - 명령어가 성공적으로 실행되었을 때 예상되는 코드입니다. 기본값은 0입니다. workingDir - 프로세스가 작동하는 폴더를 설정합니다. 기본값은 null 입니다. 즉, 실행되는 스크립트의 폴더입니다. 만약 폴더 경로가 상대 경로라면, 기본 경로는 실행되는 스크립트의 폴더입니다. 모든 옵션 배열의 키는 필수가 아닙니다. | 예 |
shell_adv() | 반환 값이 비어있음 | 명령어, [옵션] | InsufficientPermissionException IOException | 쉘 명령어를 실행합니다. <code>명령어</code> 는 문자열이거나 문자열만 포함되어 있는 배열이 될 수 있습니다. 외부 프로세스에서 작동ehlqslek. allow-shell-commands 옵션을 켜거나 명령줄 모드에서만 작동할 수 있으며, 아닐 경우엔 InsufficientPermissionException 이 발생합니다. | 예 |
shell_on() | 문자열 | os, 명령어, [옵션] | InsufficientPermissionException ShellException IOException FormatException | 주어진 운영 체제일 경우에만 쉘 명령어를 실행합니다.(WINDOWS, MAC, LINUX, SOLARIS, UNKNOWN 중 하나) 만약 운영체제가 주어지지 않았다면, 이 명령은 null 을 반환합니다. 운영 체제는 여러 운영 체제의 목록이 될 수 있습니다.(같은 UNIX 기반인 'MAC|LINUX' 가 예) 그 외에는 shell 와 동일합니다. 이 펑션은 명령어가 운영체제에 따라 다를 경우에 유용합니다. | 예 |
shell_on_adv() | 반환 값이 비어있음 | os, 명령어, [옵션] | InsufficientPermissionException ShellException IOException FormatException | 주어진 운영 체제일 경우에만 쉘 명령어를 실행합니다.(WINDOWS, MAC, LINUX, SOLARIS, UNKNOWN 중 하나) 만약 운영체제가 주어지지 않았다면, 이 명령은 null 을 반환합니다. 운영 체제는 여러 운영 체제의 목록이 될 수 있습니다.(같은 UNIX 기반인 'MAC|LINUX' 가 예) 그 외에는 shell_adv 와 동일합니다. 이 펑션은 명령어가 운영체제에 따라 다를 경우에 유용합니다. | 예 |
sys_beep() | 반환 값이 비어있음 | InsufficientPermissionException PluginInternalException | 시스템 비프음을 재생합니다. 이는 명령줄 모드에서만 유용합니다. | 예 | |
sys_err() | 반환 값이 비어있음 | 텍스트 | 시스템의 std err 에 문자열을 작성합니다. console() 과는 다르게, 아무런 형식이 존재하지 않습니다. 또한 색상이나 기타 형식 코드들이 다음 문자열에도 이어지지 않습니다. 즉, sys_err(color(RED) . '빨강색입니다.') 가 다음에 보낼 문자열에도 빨강색이 되도록 하지 않는다는 뜻입니다. 그러므로 여러 줄을 내보내야 한다면, \n 을 이용하여 새로운 줄을 만드는 것이 좋습니다. | 예 | |
sys_out() | 반환 값이 비어있음 | 텍스트 | 시스템의 std out 에 문자열을 작성합니다. console() 과는 다르게, 아무런 형식이 존재하지 않습니다. 또한 색상이나 기타 형식 코드들이 다음 문자열에도 이어지지 않습니다. 즉, sys_out(color(RED) . '빨강색입니다.') 가 다음에 보낼 문자열에도 빨강색이 되도록 하지 않는다는 뜻입니다. 그러므로 여러 줄을 내보내야 한다면, \n 을 이용하여 새로운 줄을 만드는 것이 좋습니다. | 예 | |
sys_properties() | 다양함 | [설정 이름] | 설정 이름이 설정될 경우, 하나의 설정만이 반환됩니다. 혹은 설정이 존재하지 않는다면 null 을 반환합니다. 설정 이름이 설정되지 않았을 경우, 모든 시스템 설정이 포함되어 있는 키가 있는 배열이 반환됩니다. 이 메커니즘은 자바의 시스템 설정 메커니즘에 대응되며, 단순히 전달해 주는 역할만 합니다. 시스템 설정은 환경 변수보다 더 믿을 수 있으며, 존재한다면 대부분 우선적으로 사용됩니다. 시스템 설정에 대한 자세한 정보가 필요하시다면, http://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html. 를 확인하시면 됩니다. 또한 perferences.ini 에 있는 설정들도 접두사 "methodscript.preference." 와 함께 포함됩니다. | 예 | |
user() | 문자열 | 현재 사용자의 이름을 반환합니다. 이는 플랫폼에 따른 형식으로 반환되며, 모든 스크립트에서 호환됩니다. 만약 펑션 호출이 무의미하다면 null 을 반환합니다. | 아니오 | ||
명령어
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
clear_commands() | 반환 값이 비어있음 | 이 서버에 모든 등록된 명령어를 제거하려고 시도합니다. 이 펑션은 몇가지 제한사항이 있을 수 있습니다. 하지만 어떤 명령어를 등록해제할 수 없는지는 불확실합니다. | 예 | ||
get_commands() | 배열 | register_command 의 형식으로 된 명령어 배열의 배열을 반환합니다. 만약 어떤 명령어도 찾을 수 없다면 null 을 반환합니다. 이 명령어는 MethodScript 단축 명령어를 포함하지 않습니다. 단축 명령어는 등록된 명령어가 아닙니다. | 예 | ||
register_command() | boolean | 명령어 이름, 옵션 배열 | FormatException NotFoundException | 서버의 명령어 목록에 명령어를 등록하거나 존재하는 명령어를 업데이트 합니다. 옵션은 키를 포함한 배열으로, 아래의 키가 포함되어 있습니다: description, usage, permission, noPermMsg, aliases, tabcompleter, executor. 모든 키는 필수가 아니며 'aliases' 를 제외하고 나중에 수정할 수 있습니다. 'noPermMsg' 는 사용자가 'permission' 에서 정의된 권한이 없을 경우 보내는 메시지입니다. 'Usage' 는 'executor' 가 거짓을 반환할 때 보내질 메시지이며, 'Executor' 는 명령어가 동작한 코드의 클로저이며, 참과 거짓을 반환할 수 있습니다(아무것도 반환하지 않을 시 참으로 간주합니다). 'tabcompleter' 는 플레이어가 명령어를 치면서 탭을 눌렀을 때 보낼 자동완성 키워드의 목록이며, 사용자에게 보여질 자동완성 키워드의 배열을 반환하는 클로저입니다. 'executor' 와 'tabcompleter' 모두 인수로 사용자가 사용한 명령어의 이름, 보낸 사람의 이름, 입력한 인수의 배열, 명령어의 정보 배열이 포함되어 있습니다. 또한 tab_complete_command 이벤트가 실행될 경우, tabcompleter 의 클로저의 결과가 반영되지 않을 수 있습니다. | 예 |
set_executor() | 반환 값이 비어있음 | 명령어 이름, 클로저 | FormatException NotFoundException | 사용자가 명령어를 실행하려 할 때 실행할 코드의 클로저를 설정합니다. 클로저는 참과 거짓을 반환할 수 있습니다.(아무것도 반환하지 않을 경우 참을 반환합니다.) 거짓을 반환할 경우 'usage' 메시지가 설정됩니다. 클로저의 인수는 다음과 같습니다: 사용한 명령어, 명령어를 사용한 사용자, 입력한 인수의 배열, 명령어의 정보 배열 | 예 |
set_tabcompleter() | 반환 값이 비어있음 | 명령어 이름, 클로저 | FormatException NotFoundException | 사용자가 명령어를 칠 때 탭 자동완성을 사용하면 실행할 코드의 클로저를 설정합니다. 클로저는 자동완성 키워드의 배열을 반환해야 합니다. 혹은 tab_complete_command 이벤트를 통해 자동완성 키워드를 설정할 수도 있습니다. 클로저의 인수는 다음과 같습니다: 사용한 명령어, 명령어를 사용한 사용자, 입력한 인수의 배열, 명령어의 정보 배열 | 예 |
unregister_command() | boolean | 명령어 이름 | NotFoundException | 서버의 명령어 목록에서 해당 명령어를 제거합니다. | 예 |
컴파일러
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
smart_string() | 없음 | 문자열 | 컴파일러 구조 중 하나이며, 직접 사용되는 일은 없습니다. 쌍따옴표를 통해 만들어집니다. | 아니오 | |
암호화
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
base64_decode() | 바이트_배열 | base64 데이터 | CastException | base64 인코딩된 문자열을 일반 문자열로 변환합니다. | 아니오 |
base64_encode() | 바이트_배열 | 바이트 데이터 | CastException | 주어진 바이트 배열 데이터를 base 64 바이트 데이터로 변환합니다. | 아니오 |
bcrypt() | 문자열 | 값, [작업량] | CastException RangeException | 값을 bcrypt 를 이용해 주어진 작업량을 이용해 암호화합니다. 만약 작업량이 주어지지 않았을 경우 5가 주어집니다. BCrypt 는 SHA1 보다 더욱 안전하게 설계되었으며, md5 보다 확실히 안전합니다. 참고로 bcrypt 사용은 느리며, 이는 보안에서 장점이 됩니다. 작업량을 높은 숫자로 할 수록 작업이 더 오래 걸립니다. 5의 작업량은 보통의 작업이며, 보통 1초 안에 완료됩니다. 10 이상으로 설정하면 몇초가 걸리며, 15로 설정하면 몇분이 걸립니다. 작업량은 5와 31 사이여야 합니다. check_bcrypt 를 확인하여 사용 방법을 확인하세요. Bcrypt 는 sha-* 펑션을 사용할 수 없는 곳에서 비밀번호를 처리할 때 유용합니다. | 아니오 |
check_bcrypt() | boolean | 일반 문자열, 해쉬 | 일반 문자열 비밀번호가 해쉬와 일치한지 확인합니다. md5나 sha1 과 달리, 단순히 해쉬를 비교해서는 작동하지 않습니다. 사용법: string @plain = 'plaintext'; string @hash = bcrypt(@plain); msg(if(check_bcrypt(@plain, @hash), '동일합니다!', '동일하지 않습니다!')); | 아니오 | |
hmac_md5() | 문자열 | 키, 값 | PluginInternalException | 주어진 키에 맞는 주어진 값의 md5 HMAC 값을 반환합니다. | 아니오 |
hmac_sha1() | 문자열 | 키, 값 | PluginInternalException | 주어진 키에 맞는 주어진 값의 sha1 HMAC 값을 반환합니다. | 아니오 |
hmac_sha256() | 문자열 | 키, 값 | PluginInternalException | 주어진 키에 맞는 주어진 값의 sha256 HMAC 값을 반환합니다. | 아니오 |
md5() | 문자열 | 값 | PluginInternalException | 주어진 값의 md5 해쉬를 반환합니다. md5 해쉬는 더이상 안전하다고 간주되지 않으므로, 중요한 데이터의 암호화에 사용해서는 안됩니다. 일반 해쉬로는 빠르고 쉬운 방법이며, md5 는 단방향 해쉬 알고리즘입니다. | 아니오 |
rot13() | 문자열 | 값 | 값의 rot13 버전을 반환합니다. 참고로 rot13(rot13(val)) 은 val 을 반환합니다. | 아니오 | |
sha1() | 문자열 | 값 | PluginInternalException | 주어진 값의 sha1 해쉬를 반환합니다. sha1 해쉬는 md5 해쉬보다는 안전하지만,이것 또한 더이상 안전하다고 간주되지 않으므로, sha-256 을 중요한 데이터를 암호화 하는데 사용해야 합니다. sha1 해쉬는 단방향 해쉬 알고리즘입니다. | 아니오 |
sha256() | 문자열 | 값 | PluginInternalException | 주어진 값의 sha256 해쉬를 반환합니다. sha256 은 sha1 이나 md5 보다 훨씬 안전하다고 간주되며, 중요한 데이터를 암호화하는데 주로 사용됩니다. 단방향 해쉬 알고리즘입니다. | 아니오 |
sha512() | 문자열 | 값 | PluginInternalException | 주어진 값의 sha512 해쉬를 반환합니다. sha512 는 sha1 이나 md5 보다 훨씬 안전하다고 간주되며(sha256 보다도 안전하지만 속도가 느립니다.), 아주 중요한 데이터를 암호화하는데 주로 사용됩니다. 단방향 해쉬 알고리즘입니다. | 아니오 |
데이터 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
array() | 배열 | [값1, [값2...]] | 주어진 값으로 만든 배열을 반환합니다. | 아니오 | |
assign() | ivariable | [형식], ivar, 다양한 값 | CastException | ivar 를 인수로 받고, 특정한 값을 입력합니다. 입력된 값의 ivar 를 반환합니다. 연산자 구문을 지원합니다: <code>@a = 5;</code>. +=,-=,*=,/=,.= 같은 여러 작업을 동시에 수행하는 다른 형식도 지원합니다. 배열 입력도 지원합니다: @array[5] = '5번 인덱스의 새 값' | 아니오 |
associative_array() | 배열 | [값...] | array() 와 동일하지만 값이 존재하지 않아도 키가 있는 배열을 생성합니다. 이 펑션은 정말 필요할 때만 사용합니다. 그 외에는 일반 array() 를 사용하여도 상관 없습니다. | 아니오 | |
boolean() | boolean | 값 | boolean 으로 변환할 수 있는 주어진 값을 변환합니다. 모든 데이터 형식은 boolean 으로 변환할 수 있기 때문에, 예외를 발생하지 않습니다. | 아니오 | |
break() | 없음 | [숫자] | CastException | 현재 반복문을 중단합니다. 만약 정수가 주어진다면, 그만큼의 반복문을 중단합니다. 예를 들어 반복문 안에 반복문이 있다면, break(2) 를 하면 두 반복문을 모두 중지합니다. 만약 정수가 주어지지 않는다면, break(1) 과 동일합니다. 또한 이 펑션은 특이하게 정수가 변수일 경우에는 컴파일 에러가 일어납니다. 예를 들어 break(3) 은 가능하지만, break(@값) 은 불가능합니다. | 아니오 |
call_proc() | 다양함 | 프로시저 이름, [값1...] | InvalidProcedureException | 사용자 지정 프로시저를 동적으로 호출합니다. call_proc(_myProc, '값1') 은 _myProc('값1') 과 동일합니다. 만약 프로시저의 이름을 동적으로 바꿔야 할 경우 이 펑션을 사용합니다. 콜백의 경우에는 클로저를 사용하는 것이 유용합니다. 만약 프로시저가 존재하지 않는다면 InvalidProcedureException 을 발생시킵니다. 만약 첫번째 인수를 하드코딩했다면 더 간단한 방법이 있다는 경고가 표시됩니다. | 예 |
call_proc_array() | 다양함 | 프로시저 이름, 배열 | InvalidProcedureException CastException | call_proc 과 동일하지만, 알 수 없는 인수 갯수를 허용합니다. 배열은 무조건 일반 배열이여야 하며, 키가 있는 배열일 경우 예외를 발생시킵니다. | 예 |
closure() | 클로저 | [변수 이름...,] 코드 | 주어진 코드가 담겨 있는 클로저를 반환합니다. 클로저는 코드가 담겨 있는 데이터 형식으로, 코드의 반환 값을 담은 데이터 형식이 아닙니다. 내부에 담긴 클로저는 문자열로도 사용할 수 있으며, eval() 펑션과 같은 펑션으로 실행할 수도 있습니다. 만약 클로저를 문자열로 변환시키면 원래 썼던 코드와 동일하지 않은 출력값이 반환될수도 있습니다. 또한 이 클로저는 메모리에만 저장되며, 영구적으로 저장할 수 없습니다. 또한 특별한 인수인 @arguments 가 자동으로 생성되며, 프로시저처럼 클로저에 입력된 모든 인수의 배열을 포함하고 있습니다. 자세한 정보는 초보자 가이드의 클로저를 참고하세요. | 예 | |
continue() | 반환 값이 비어있음 | [숫자] | CastException | 이 반복문의 나머지 코드를 건너뜁니다. 만약 이 펑션이 반복문 밖에서 실행되면, 명령이 실패합니다. 만약 정수가 주어지면, 그 정수만큼 반복문을 건너뛰고, 정수가 주어지지 않으면 기본적으로 1이 사용됩니다. | 아니오 |
double() | 실수 | 값 | CastException | 주어진 값을 소수 형태로 변환합니다. 만약 주어진 값이 is_numeric 펑션이 거짓을 반환하는 데이터 형식이라면 CastException이 발생합니다. 참을 반환하면 정상적으로 실행됩니다. | 아니오 |
dowhile() | 반환 값이 비어있음 | 코드, 조건 | while 문과 비슷합니다. 하지만 코드는 적어도 한번 실행되며, 매 코드의 실행 후 조건 코드를 실행합니다. 만약 조건 코드가 거짓을 반환했을 경우, 코드 실행을 중지하며, 참을 반환하면 계속 반복합니다. 일반적으로 대괄호 구문을 사용하는게 좋습니다: do { code(); } while(조건); | 아니오 | |
eval() | 문자열 | 스크립트 문자열 | CastException | 주어진 문자열을 스크립트로 보고 실행합니다. 이 펑션은 아주 불안정하기 때문에 바뀌거나 사라질 수 있습니다. | 예 |
execute() | 다양함 | [값...,] 클로저 | CastException | 주어진 클로저를 실행합니다. 또한 클로저에 인수를 보낼 수도 있습니다. 클로저에 따라 해당 값을 사용할 수도, 사용하지 않을수도 있습니다. 만약 클로저가 return() 펑션을 통해 어떠한 값을 반환하면, 이 펑션의 반환값이 됩니다. 반환하지 않았다면, 빈 값이 반환됩니다. | 예 |
executeas() | 다양함 | 플레이어, 라벨, [값...,] 클로저 | CastException | 주어진 플레이어에게 클로저를 실행합니다. 주어진 플레이어는 클로저 안에서 player() 를 실행하면 반환되는 값이 됩니다. 라벨 값은 클로저를 사용하는 플레이어의 권한 라벨이 되며, null 일 경우 execute() 와 같이 현재 사용되는 라벨이 사용됩니다. | 예 |
export() | 반환 값이 비어있음 | 키, 값 | IllegalArgumentException IndexOverflowException | 전역 스토리지 레지스터에 값을 등록합니다. 값은 주어진 키와 등록되며, import 를 통해 가져올 수 있습니다. 만약 값이 이미 등록되어 있다면, 덮어씌워집니다. 여기에 등록하는 값은 해당 값의 원본으로, 복사본이 아닙니다. 배열의 경우, 등록한 배열이 나중에 변경되면 저장소에 등록된 배열도 변경됩니다. export() 는 threadsafe 입니다. | 예 |
for() | 반환 값이 비어있음 | 선언, 조건, 구문1, 구문2 | CastException | 일반적인 for 반복문입니다. 선언 구문을 처음에 실행하고, 조건을 확인합니다. 만약 조건이 참이라면, 구문2를 실행한 후, 구문1이 실행됩니다. 이 과정을 반복합니다. 선언 부분에는 i변수가 필요하며, 구문1은 무조건 boolean 을 필요로 합니다. | 아니오 |
foreach() | 반환 값이 비어있음 | 배열, [키], i변수, 코드 | CastException RangeException | 배열의 크기만큼 반복되고, 실행될 때마다 배열의 각 값을 i변수에 넣습니다. 그리고 코드를 실행합니다. 또한 foreach(1..4, @i, code()) 도 가능합니다. @i 를 반복할 때마다 1, 2, 3, 4 로 선언합니다. 만약 키가 설정되어 있다면, 각 반복의 인덱스가 설정한 키가 됩니다. | 아니오 |
foreachelse() | 반환 값이 비어있음 | 배열, i변수, 코드, 대체 | CastException RangeException | foreach 와 기본적으로 같지만, 배열이 비어있을 경우 대체 코드를 실행합니다. 즉, 코드가 실행되지 못할 경우 대체 코드가 실행됩니다. foreach() {} else {} 형식이 권장됩니다. | 아니오 |
forelse() | 반환 값이 비어있음 | 선언, 조건, 구문1, 구문2, 대체 | 일반 for 반복문처럼 동작하지만, 처음 조건을 확인할 때 조건이 거짓일 경우 대체 코드가 실행됩니다. 즉, 코드 반복이 한번도 일어나지 않았을 경우에 대체 코드가 실행됩니다. for(){} else {} 형태가 권장됩니다. | 아니오 | |
g() | 문자열 | 펑션1, [펑션2...] | 펑션들을 묶습니다. 빈 값을 반환합니다. | 아니오 | |
iclosure() | i클로저 | [변수 이름...,] 코드 | 독립된 클로저를 반환합니다. i클로저는 코드를 담은 객체로, 코드의 결과를 담은 것이 아닙니다. i클로저 안의 코드는 문자열으로 사용되거나 execute() 펑션으로 실행할 수 있습니다. 만약 클로저 안의 코드가 문자열으로 사용될 경우 원본 코드와 완전히 같지 않을 수도 있습니다. 클로저 안에는 현재 코드 환경이 그대로 저장되며, 이는 메모리에만 저장됩니다. 즉 이는 직렬화 될 수 없기 때문에 영구 변수 등에 저장될 수 없고, 또한 특별한 @arguments 라는 변수가 생성됩니다. 자세한 정보는 초보자 가이드의 클로저를 확인하세요. | 예 | |
import() | 다양함 | 키, [기본값] | IllegalArgumentException IndexOverflowException | 이 펑션은 전역 변수 레지스터에서 값을 가져옵니다. 주어진 키에 대한 저장된 값을 불러오며, 기본값이 있을 경우 해당 키에 대한 저장된 값이 없다면 기본 값이 반환되며, 기본값이 없다면 null 이 반환됩니다. import() 는 쓰레드 안전 펑션입니다. | 예 |
include() | 반환 값이 비어있음 | 경로 | IncludeException | 주어진 경로에 있는 외부 코드를 포함시킵니다. | 아니오 |
instanceof() | boolean | 값, 자료형 | 주어진 값이 주어진 자료형과 일치하는 자료형인지 확인합니다. <code>@value instanceof int</code> 와 같은 키워드 사용을 추천하며, 반대인 <code>@value notinstanceof int</code> 도 있습니다. | 아니오 | |
integer() | 정수 | 값 | CastException | 정수로 변환될 수 있는 값으로 새 변수를 만듭니다. 만약 is_numeric 이 거짓이 되는 값이 주어졌다면 CastException 이 발생합니다. 만약 변환이 되었다 해도 자료형에 따라 값을 잃을 수 있습니다.(예: 4.5 에서 4) | 아니오 |
is_array() | boolean | 값 | 주어진 값이 배열인지 확인하고 그 결과를 반환합니다. | 아니오 | |
is_associative() | boolean | 배열 | CastException | 주어진 배열이 키가 있는 배열인지 확인하고 그 결과를 반환합니다. 만약 주어진 값이 배열이 아니라면 CastException 을 발생시킵니다. | 아니오 |
is_boolean() | boolean | 값 | 주어진 값이 boolean 인지 확인합니다. 참고로 모든 자료형은 boolean 으로 사용될 수 있습니다. 다만 이 펑션에서는 주어진 값의 진짜 자료형을 확인합니다. | 아니오 | |
is_bytearray() | boolean | 값 | 주어진 값이 바이트 배열인지 확인합니다. | 아니오 | |
is_closure() | boolean | 값 | 주어진 값이 클로저인지 확인합니다. | 아니오 | |
is_double() | boolean | 값 | 주어진 값이 소수인지 확인합니다. 만약 주어진 값이 수의 형태를 가지고 있는지 확인하고 싶다면 is_numeric() 을 사용하세요. | 아니오 | |
is_integer() | boolean | 값 | 주어진 값이 정수인지 확인합니다. 만약 주어진 값이 정수로 사용될 수 있는지 확인하고 싶다면 is_integral() 혹은 is_numeric() 을 사용하세요. | 아니오 | |
is_integral() | boolean | 값 | CastException | 주어진 값이 정수의 형태인지 확인합니다. 즉, 정수의 형태이지만 자료형이 정수가 아닐 경우 정수 여부를 판단할 때 유용합니다. | 아니오 |
is_null() | boolean | 값 | 주어진 값이 null 인지 확인합니다. | 아니오 | |
is_number() | boolean | 값 | 주어진 값이 정수거나 소수인지 확인합니다. 만약 주어진 값이 수의 형태인지 확인하고 싶다면, is_numeric() 을 사용하세요. | 아니오 | |
is_numeric() | boolean | 값 | 주어진 값이 정수나 소수로 변환될 수 있는지 확인합니다. | 아니오 | |
is_proc() | boolean | 프로시저 이름 | 주어진 프로시저 이름에 해당하는 프로시저가 존재하는지 확인합니다. | 예 | |
is_string() | boolean | 값 | 주어진 값이 문자열인지 확인합니다. 만약 주어진 값이 문자열으로 사용할 수 있는지 확인하고 싶다면, is_strigable() 을 사용하세요. | 아니오 | |
is_stringable() | boolean | 값 | 주어진 값이 문자열로 변환될 수 있는지 확인합니다. 배열을 제외하고는 원래 형태로 문자열 변환이 가능합니다. | 아니오 | |
mutable_primitive() | mutable_primitive | [기본값] | FormatException | 수정 가능한 기본값 객체를 만듭니다. 변수의 값을 null 이나 다른 값으로 설정하지 않고, 값은 무조건 기본 값이 됩니다. 배열이나 다른 객체가 될 수도 없습니다. | 아니오 |
parse_int() | 정수 | 값, 진수 | CastException RangeException FormatException | 정수형태의 문자열을 자료형도 정수인 객체로 바꿉니다. 진수에 대해 알고 싶으면 to_radix 설명을 보시면 됩니다. 진수는 2와 36 사이여야 합니다. | 아니오 |
proc() | 반환 값이 비어있음 | [이름], [i변수...], 프로시저 코드 | FormatException | 새로운 프로시저를 만듭니다.("펑션" 과 비슷함) 자세한 설명은 초보자 가이드의 프로시저 항목을 참고하세요. _myProc(@a, @b) { procCode(@a, @b) } 형태가 추천됩니다. | 아니오 |
rclosure() | 클로저 | [변수 이름...], 코드 | 주어진 코드에 대해 연결되지 않는 클로저를 만듭니다. 즉, 해당 클로저 안의 코드는 컴파일러에서 오류 여부를 확인하지 않습니다. 코드를 다른 환경에서 실행해야 할 때 유용합니다. | 예 | |
return() | 없음 | 다양함 | 프로시저 안에서 반환을 하게 하고 프로시저를 종료합니다. 프로시저 밖에서는 사용할 수 없습니다. | 아니오 | |
string() | 문자열 | 값 | 주어진 값을 자료형이 문자열인 값으로 바꿉니다. 배열의 경우, 사람이 읽을 수 있는 형태로 변환됩니다. boolean 은 "true" 와 "false" 로 변환되고, null 은 "null" 으로 변환됩니다. | 아니오 | |
to_radix() | 문자열 | 값, 진수 | CastException RangeException FormatException | 주어진 수와 진수로 해당 수를 진수로 변환한 값의 문자열을 반환합니다. 주로 hex 나 바이너리 수를 얻을 때 사용합니다. | 아니오 |
typeof() | 자료형 | 값 | 주어진 값의 자료형 이름의 문자열을 반환합니다. 예를 들어 typeof(array()) 의 반환값은 'array' 입니다. | 아니오 | |
while() | 반환 값이 비어있음 | 조건, [코드] | 주어진 조건이 참이면, 코드를 실행합니다. break 와 continue 를 코드에서 사용 가능합니다. | 아니오 | |
데이터 변환
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
ini_decode() | 배열 | 문자열 | FormatException | INI 포맷 입력을 배열으로 변환한 값을 반환합니다. INI 파일은 키와 값으로 이루어져 있으며, 키가 있는 배열의 형태로 변환됩니다. 키와 값은 <code>key=value</code> 형태로 되어 있습니다. 반환된 키가 있는 배열의 값은 모두 문자열이며, integer, float 펑션 등을 통해 숫자처럼 되어 있는 문자열을 변환할 수 있습니다. 만약 문자열이 아닌 형식의 데이터도 그대로 보존하고 싶다면 json_encode/json_decode 를 사용하세요. | 아니오 |
ini_encode() | 문자열 | 배열, [주석] | FormatException CastException | 배열을 INI 파일 형식으로 반환합니다. 키가 있는 배열이여야 하며, 아닐 경우 FormatException 이 발생합니다. | 아니오 |
json_decode() | 배열 | 문자열 | FormatException | JSON 형식의 문자열을 배열으로 변환합니다. 만약 JSON 문자열이 올바르지 않을 경우, FormatException 이 발생합니다. | 아니오 |
json_encode() | 문자열 | 배열 | CastException | 배열을 JSON 형식의 문자열으로 반환합니다. 키가 있든 없든 값이 될 수 있습니다. | 아니오 |
xml_read() | 다양함 | xml, xpath | FormatException | XPath 주소를 사용하는 xml 을 읽습니다. | 아니오 |
yml_decode() | 배열 | 문자열 | FormatException | YML 형식 문자열을 키가 있는 배열으로 변환합니다. YML 형식 문자열이 올바르지 않을 경우 FormatException 이 발생합니다. | 아니오 |
yml_encode() | 문자열 | 배열, [깔끔한 출력] | CastException | 배열은 YML 형식 문자열로 변환합니다. 깔끔한 출력의 값이 참일 경우 값이 읽기 쉽게 출력됩니다. | 아니오 |
디버그
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
debug() | 반환 값이 비어있음 | 메시지 | IOException | 타임스탬프가 있는 메시지를 수동으로 로그합니다. 설정에서 debug-mode 가 참일 경우 콘솔에서도 출력합니다. | 예 |
dump_threads() | 배열 | 현재 실행중인 쓰레드를 모두 덤프합니다. 이 기능은 커맨드헬퍼 뿐만 아니라 서버의 디버그 기능입니다. | 예 | ||
heap_dump() | 반환 값이 비어있음 | PluginInternalException | heap dump 파일을 실행 경로에 만듭니다. 만약 JVM 에서 heap dump 를 지원하지 않는다면 PluginInternalException 을 발생시킵니다. | 예 | |
trace() | 반환 값이 비어있음 | i변수 | CastException | 디버그 모드가 켜져있다면, 디버그 정보를 변수에 출력합니다. debug 와 달리 i변수 만 인수로 받습니다. 또한 이는 메타펑션이기 때문에 런타임이 직접 로깅에 관여합니다. 디버그 모드가 꺼져있다면 펑션은 무시됩니다. | 예 |
메시지 출력
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
broadcast() | 반환 값이 비어있음 | 메시지, [권한] 메시지, [듣는 사람] | FormatException | 서버의 모든 플레이어에게 메시지를 보냅니다. 만약 권한이 설정되어 있을 경우, 해당 권한이 있는 플레이어만 메시지를 볼 수 있습니다. 만약 듣는 사람의 배열이 주어졌을 경우, 해당 목록에서 온라인인 사람만 메시지를 볼 수 있습니다. 콘솔은 배열에 '~console` 라는 이름이 대소문자 구분하여 있을 때에만 메시지를 볼 수 있으며, 오프라인 플레이어나 중복된 플레이어는 무시됩니다. 만약 권한이나 듣는 사람이 null 이라면, 모든 플레이어와 콘솔이 이 메시지를 볼 수 있습니다. 듣는 사람의 배열이 키가 있는 배열이라면 FormatException 이 발생합니다. | 예 |
chat() | 반환 값이 비어있음 | 문자열 | PlayerOfflineException | 채팅의 형태로 메시지를 보냅니다. 메시지를 보낸 사람은 해당 펑션을 실행한 사람이 되며, 콘솔은 실행할 수 없습니다. 콘솔이 실행할 경우 PlayerOfflineException 이 발생합니다. | 예 |
chatas() | 반환 값이 비어있음 | 플레이어, 메시지 | PlayerOfflineException LengthException | 지정한 플레이어의 이름으로 채팅 메시지를 서버에 보냅니다. | 예 |
color() | 문자열 | 이름 | 주어진 색상 이름에 알맞은 색상 수정값을 반환합니다. 만약 주어진 이름이 올바르지 않다면 white 를 반환합니다. 가능한 이름은 다음과 같습니다: BLACK, DARK_BLUE, DARK_GREEN, DARK_AQUA, DARK_RED, DARK_PURPLE, GOLD, GRAY, DARK_GRAY, BLUE, GREEN, AQUA, RED, LIGHT_PURPLE, YELLOW, WHITE, RANDOM, BOLD, STRIKETHROUGH, UNDERLINE, ITALIC, PLAIN_WHITE. 0-15 까지의 숫자도 가능하며, 0-F 까지의 헥스 숫자, k, l, m, n, o, r 과 같은 스타일을 지정하는 문자도 가능합니다. 해당 펑션은 플랫폼에 알맞은 색상 코드를 반환하기 때문에 직접 색상 코드를 쓰는 것보다는 이 펑션을 사용하는 것이 좋습니다. | 예 | |
colorize() | 다양함 | 문자열, [표식] | 문자열의 모든 색상 표시 텍스트를 변환합니다. 예를 들어, colorize('&aText') 는 (color('a').'Text') 와 같습니다. 기본적으로 표식은 '&' 이지만, 원하는 글자 하나를 지정할 수도 있습니다. 만약 색상 코드로 변환하고 싶지 않은 텍스트가 있다면 '&&a' 처럼 하여 일반 문자열처럼 표시할 수 있습니다. | 예 | |
console() | 반환 값이 비어있음 | 메시지, [접두사] | CastException | 콘솔에 메시지를 보냅니다. 접두사 부분이 참일 경우 앞에 "CommandHelper:" 가 붙습니다. 기본값은 참입니다. | 예 |
die() | 없음 | [값1, 값2...,] | 코드를 강제 종료하고 메시지를 표시합니다. | 아니오 | |
msg() | 반환 값이 비어있음 | 값1, [값2...] | PlayerOfflineException | 코드를 실행하는 플레이어에게 메시지를 보냅니다. | 아니오 |
strip_colors() | 문자열 | 문자열 | 주어진 문자열에서 모든 색상을 없앱니다. | 아니오 | |
title() | 반환 값이 비어있음 | [플레이어], 제목, 부제목, [페이드인, 지속시간, 페이드아웃] | PlayerOfflineException CastException RangeException LengthException | 제목/부제목을 플레이어에게 보여줍니다. 제목과 부제목은 null 이 될 수 있습니다. 정수 페이드인, 지속시간, 페이드아웃은 게임의 틱으로 환산되며, 기본값은 각각 10, 70, 20입니다. | 예 |
tmsg() | 반환 값이 비어있음 | 플레이어, 메시지, [...] | PlayerOfflineException InsufficientArgumentsException LengthException | 주어진 플레이어에게 메시지를 보냅니다. | 예 |
인첸트
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
can_enchant_item() | boolean | 이름, 아이템 | EnchantmentException FormatException CastException RangeException NotFoundException | 주어진 인첸트 이름과 아이템 배열을 가지고 해당 아이템이 해당 인첸트를 적용할 수 있는지 여부를 확인합니다. 만약 이름이 올바르지 않다면 EnchantmentException 이 발생합니다. | 아니오 |
can_enchant_target() | boolean | 이름, 아이템 | EnchantmentException FormatException CastException RangeException NotFoundException | 주어진 인첸트 이름과 아이템 종류를 가지고 해당 아이템이 해당 인첸트를 적용할 수 있는지 여부를 확인합니다. 만약 이름이 올바르지 않다면 EnchantmentException 이 발생합니다. | 아니오 |
enchant_inv() | 반환 값이 비어있음 | [플레이어], 슬롯, 인첸트 종류, 레벨 | CastException EnchantmentException PlayerOfflineException | 플레이어의 인벤토리에 있는 아이템에 인첸트를 적용합니다. 종류는 문자열 하나일 수도 있으며, 인첸트 이름의 배열일 수도 있습니다. 만약 슬롯이 null 이라면, 현재 선택된 슬롯이 사용됩니다. 만약 인첸트가 해당 아이템에 적용 될 수 없다면, EnchantmentException 이 발생합니다. 또한 레벨이 올바르지 않은 경우엔 RangeException 이 발생합니다. 종류가 배열일 경우 레벨 또한 배열이여야 하며, 배열의 크기는 동일해야 하고, 해당 종류의 위치에 대응되는 레벨 값이 있어야 합니다. 인첸트의 이름은 마인크래프트 인첸트 이름도 적용될 수 있습니다. 또한 레벨은 로마 숫자도 허용됩니다. | 예 |
enchant_item() | 반환 값이 비어있음 | [플레이어], 슬롯, 인첸트 종류, 레벨 [플레이어], 슬롯, 인첸트 배열 | CastException EnchantmentException PlayerOfflineException | 플레이어의 인벤토리에 있는 아이템에 인첸트를 적용합니다. 종류는 문자열 하나일 수도 있으며, 인첸트 이름의 배열일 수도 있습니다. 만약 슬롯이 null 이라면, 현재 선택된 슬롯이 사용됩니다. 만약 인첸트가 해당 아이템에 적용 될 수 없다면, EnchantmentException 이 발생합니다. 또한 레벨이 올바르지 않은 경우엔 RangeException 이 발생합니다. 인첸트 배열은 인첸트 이름을 키뢰, 레벨을 값으로 해야 합니다.(예: array('unbreaking': 1)) | 예 |
enchant_rm_inv() | 반환 값이 비어있음 | [플레이어], 슬롯, 인첸트 종류 | CastException EnchantmentException PlayerOfflineException | 아이템에서 인첸트를 제거합니다. 인첸트 종류는 인첸트 이름이거나 인첸트 이름의 배열일 수 있으며, null 이 될 수도 있습니다. null 일 경우엔 해당 아이템에서 모든 인첸트가 제거됩니다. 또한 아이템에 주어진 인첸트가 적용되지 않았을 경우, 무시됩니다. | 예 |
enchantment_list() | 배열 | 모든 가능한 인첸트 이름을 반환합니다. 이 목록의 인첸트 이름 말고 이외의 이름도 사용할 수 있을 수 있지만, 이 목록에 있는 이름은 모두 사용 가능합니다. | 아니오 | ||
get_enchant_inv() | 배열 | [플레이어], 슬롯 | PlayerOfflineException CastException | 주어진 아이템에 적용된 인첸트와 레벨의 목록을 반환합니다. 예: array(array(DAMAGE_ALL, DAMAGE_UNDEAD), array(1, 2)) | 예 |
get_enchant_max() | 정수 | 이름 | EnchantmentException | 주어진 인첸트 이름의 최대 레벨을 반환합니다. 올바르지 않은 인첸트 이름일 경우, EnchantException 이 반환됩니다. | 아니오 |
get_enchants() | 배열 | 값 | FormatException CastException RangeException NotFoundException | 주어진 아이템 배열의 인첸트 목록을 반환합니다. 빈 배열이 될 수도 있습니다. | 아니오 |
get_item_enchants() | 배열 | [플레이어], 슬롯 | PlayerOfflineException CastException | 주어진 아이템에 적용된 인첸트와 레벨의 목록을 반환합니다. 예: array('sharpness': 1, 'unbreaking': 3) | 예 |
is_enchantment() | boolean | 이름 | 주어진 이름이 올바른 인첸트 종류인지 확인합니다. | 아니오 | |
remove_item_enchant() | 반환 값이 비어있음 | [플레이어], 슬롯, 인첸트 종류 | CastException EnchantmentException PlayerOfflineException | 아이템에서 인첸트를 제거합니다. 인첸트 종류는 인첸트 이름이거나 인첸트 이름의 배열일 수 있으며, null 이 될 수도 있습니다. null 일 경우엔 해당 아이템에서 모든 인첸트가 제거됩니다. 또한 아이템에 주어진 인첸트가 적용되지 않았을 경우, 무시됩니다. | 예 |
엔디티 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
add_scoreboard_tag() | boolean | entityID, 태그 | FormatException LengthException BadEntityException | 엔디티에 태그를 추가합니다. 성공했는지 여부를 반환합니다. | 예 |
all_entities() | 배열 | [월드, [x, z]] [위치 배열] | InvalidWorldException FormatException CastException | 주어진 위치에서의 모든 엔디티 id의 배열을 반환합니다. 아무런 인수가 주어지지 않는다면, 모든 서버에서의 엔디티 전체를 반환합니다. | 예 |
drop_item() | 정수 | [플레이어/위치 배열], 아이템 배열, [자연적 스폰] | CastException FormatException PlayerOfflineException InvalidWorldException | 지정된 플레이어의 발 밑이나 지정된 위치에 아이템을 소환하고, 그 아이템의 엔디티 ID 를 반환합니다. 자연적 스폰은 boolean 으로, 만약 참이라면 자연적인 아이템처럼 랜덤 속도를 가지고 떨어집니다. | 예 |
entities_in_radius() | 배열 | 위치 배열, 거리, [종류] 위치 배열, 거리, [종류 배열] | CastException BadEntityException FormatException | 주어진 위치를 기준으로 주어진 거리 안에 있는 모든 엔디티를 반환합니다. 종류가 주어졌을 경우 해당 종류에 해당하는 엔디티만 포함합니다. 유효한 종류(대소문자 구분 없음): DROPPED_ITEM, MAGMA_CUBE, SILVERFISH, MULE, HUSK, VINDICATOR, SHULKER_BULLET, VILLAGER, AREA_EFFECT_CLOUD, PAINTING, TURTLE, SMALL_FIREBALL, CAVE_SPIDER, SLIME, DROWNED, FIREBALL, EVOKER, MINECART_HOPPER, ENDERMITE, PLAYER, SALMON, ZOMBIE, MINECART_COMMAND, OCELOT, ENDERMAN, ZOMBIE_VILLAGER, LLAMA, ENDER_DRAGON, WITCH, EXPERIENCE_ORB, ITEM_FRAME, WITHER, ARROW, CREEPER, ILLUSIONER, COD, ENDER_EYE, ZOMBIE_HORSE, MINECART_TNT, FIREWORK, PRIMED_TNT, BOAT, SHULKER, FISHING_HOOK, WEATHER, PHANTOM, BLAZE, SKELETON_HORSE, COW, PIG, MINECART_MOB_SPAWNER, WOLF, IRON_GOLEM, PIG_ZOMBIE, SHEEP, VEX, ENDER_PEARL, LINGERING_POTION, TRIDENT, POLAR_BEAR, MINECART, SNOWMAN, MINECART_CHEST, LEASH_HITCH, SQUID, DRAGON_FIREBALL, ELDER_GUARDIAN, HORSE, ARMOR_STAND, LIGHTNING, PARROT, EVOKER_FANGS, GIANT, STRAY, SPECTRAL_ARROW, RABBIT, DONKEY, COMPLEX_PART, ENDER_CRYSTAL, TROPICAL_FISH, SPIDER, SKELETON, WITHER_SKELETON, MUSHROOM_COW, CHICKEN, SNOWBALL, THROWN_EXP_BOTTLE, WITHER_SKULL, PUFFERFISH, GUARDIAN, EGG, LLAMA_SPIT, FALLING_BLOCK, SPLASH_POTION, GHAST, BAT, DOLPHIN, TIPPED_ARROW, MINECART_FURNACE, UNKNOWN | 예 |
entity_exists() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 존재한다면 참을 반환합니다. | 예 |
entity_fall_distance() | 실수 | 엔디티 ID | LengthException BadEntityException | 엔디티가 떨어진 거리를 반환합니다. | 예 |
entity_grounded() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 땅에 닿아 있는지 여부를 반환합니다. | 예 |
entity_loc() | 위치 배열 | 엔디티 ID | LengthException BadEntityException | 해당 엔디티의 위치 배열을 반환합니다. 이 배열은 위치를 요구하는 모든 펑션에 대응됩니다. | 예 |
entity_onfire() | 정수 | 엔디티 ID | LengthException BadEntityException | 엔디티에 불이 붙은 후 지난 시간을 반환합니다. 불에 붙어있지 않다면 0을 반환합니다. | 예 |
entity_remove() | 반환 값이 비어있음 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티를 월드에서 제거합니다. 어떤 애니메이션이나 떨어트리는 아이템도 없습니다. 참고: 플레이어는 제거할 수 없습니다. NPC 플러그인과의 호환을 위해, 플레이어가 아니더라도 모든 인간 유형 엔디티에겐 작동하지 않습니다. | 예 |
entity_spec() | 배열 | 엔디티 ID | LengthException BadEntityException | 해당 엔디티 고유의 정보를 가지고 있는 키가 있는 배열을 반환합니다. | 예 |
entity_type() | 문자열 | 엔디티 ID | CastException | 주어진 엔디티 ID 에 대한 엔디티 종류를 반환합니다. 엔디티가 존재하지 않는다면 null 을 반환합니다. | 예 |
entity_velocity() | 배열 | 엔디티 ID | LengthException BadEntityException | 엔디티의 속도를 표현하는 x/y/z 배열을 반환합니다. 크기도 포함됩니다. | 예 |
get_art_at() | 문자열 | 위치 배열 | BadEntityException FormatException | 주어진 위치에 대한 그림을 반환합니다. 만약 아이템이 그림이 아니라면 null 을 반환합니다. | 예 |
get_entity_age() | 정수 | 엔디티 ID | LengthException BadEntityException | 서버 틱에 따른 엔디티의 나이를 반환합니다. | 예 |
get_entity_glowing() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 빛나고 있는지 여부를 반환합니다. | 예 |
get_entity_gravity() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티에 중력이 작용하고 있는지 여부를 반환합니다. | 예 |
get_entity_invulnerable() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 데미지를 받을 수 없는지 여부를 반환합니다. | 예 |
get_entity_max_speed() | 실수 | 엔디티 ID | BadEntityException BadEntityTypeException LengthException | 주어진 엔디티의 최대 속도를 반환합니다. 엔디티는 보트나 마인카트여야 합니다. | 예 |
get_entity_rider() | 문자열 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티를 타고 있는 엔디티의 ID 를 반환합니다. 없다면 null 을 반환합니다. | 예 |
get_entity_silent() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 소리를 낸다면 참을 반환합니다. | 예 |
get_entity_vehicle() | 문자열 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티가 타고 있는 운송 수단의 ID 를 반환합니다. 없다면 null 을 반환합니다. | 예 |
get_mob_name() | 문자열 | 엔디티 ID | LengthException BadEntityException | 주어진 몹의 이름을 반환합니다. | 예 |
get_name_visible() | boolean | 엔디티 ID | LengthException BadEntityException | 몹의 커스텀 이름이 항상 보이는지 여부를 반환합니다. 만약 참이라면 플레이어의 이름처럼 항상 보이고, 아닐 경우엔 몹의 주변에 있을 때에만 보입니다. | 예 |
get_projectile_bounce() | boolean | 엔디티 ID | LengthException BadEntityException | 주어진 발사체가 반발력을 가지는지 여부를 반환합니다. | 예 |
get_projectile_shooter() | 다양함 | 엔디티 ID | LengthException BadEntityException | 주어진 발사체를 쏜 사람을 반환합니다. 만약 쏜 것이 엔디티라면 엔디티 ID 가 반환되고, 블록이라면 블록의 위치가 반환됩니다. null 이 될 수 있습니다. | 예 |
get_scoreboard_tags() | 배열 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티에 대한 스코어보드 태그의 배열을 반환합니다. | 예 |
is_entity_living() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 살아있으면 참을 반환합니다. | 예 |
is_tameable() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티를 길들일 수 있다면 참을 반환합니다. | 예 |
launch_firework() | 반환 값이 비어있음 | 위치 배열, [옵션 배열] | FormatException RangeException InvalidWorldException | 폭죽을 발사합니다. 위치 배열은 폭죽을 발사할 위치이고, 옵션 배열은 키가 있는 배열입니다.
옵션 배열의 모든 키는 선택적이며, 기본값은 설정되어 있지 않습니다. 기본 옵션은 하얀 폭발이 있는 일반 폭죽처럼 보입니다. | 예 |
play_entity_effect() | 반환 값이 비어있음 | 엔디티 ID, 효과 | FormatException LengthException BadEntityException | 엔디티에게 주어진 효과를 실행합니다. 실행할 수 없는 효과인 경우 실행되지 않습니다. 참고: 사망 효과는 몹을 플레이어에게 투명하고 일반 공격에 무적으로 만듭니다. 플레이어에게 사용하면, 리스폰 매뉴를 보여주지만 실제로 플레이어가 죽은 것은 아니며, 로그아웃만 가능합니다. 사용할 수 있는 효과들: ARROW_PARTICLES, RABBIT_JUMP, DEATH, HURT, SHEEP_EAT, WOLF_HEARTS, WOLF_SHAKE, WOLF_SMOKE, IRON_GOLEM_ROSE, VILLAGER_HEART, VILLAGER_ANGRY, VILLAGER_HAPPY, WITCH_MAGIC, ZOMBIE_TRANSFORM, FIREWORK_EXPLODE, LOVE_HEARTS, SQUID_ROTATE, ENTITY_POOF, GUARDIAN_TARGET, SHIELD_BLOCK, SHIELD_BREAK, ARMOR_STAND_HIT, THORNS_HURT, IRON_GOLEM_SHEATH, TOTEM_RESURRECT, HURT_DROWN, HURT_EXPLOSION | 예 |
remove_scoreboard_tag() | boolean | entityID, 태그 | FormatException LengthException BadEntityException | 엔디티에게서 태그를 제거합니다. 성공 여부를 반환합니다. | 예 |
set_art_at() | boolean | 위치 배열, 그림 | FormatException | 주어진 위치에 그림을 설정합니다. 그림의 크기가 맞지 않는다면, 아무 일도 일어나지 않고 거짓이 반환됩니다. | 예 |
set_entity_age() | 반환 값이 비어있음 | 엔디티 ID, 숫자 | CastException BadEntityException RangeException LengthException | 서버 틱에 따른 엔디티의 나이를 설정합니다. | 예 |
set_entity_fall_distance() | 반환 값이 비어있음 | 엔디티 ID, 실수(double) | FormatException LengthException BadEntityException | 엔디티가 떨어진 거리를 설정합니다. | 예 |
set_entity_glowing() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 참이라면 엔디티가 빛이 납니다. | 예 |
set_entity_gravity() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티에게 중력이 적용될지 여부를 설정합니다. | 예 |
set_entity_invulnerable() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티가 데미지를 받을 수 없는지 여부를 설정합니다. 크리에이티브 모드인 플레이어의 경우 예외입니다. | 예 |
set_entity_loc() | boolean | 엔디티 ID, 위치 배열 | BadEntityException FormatException CastException InvalidWorldException LengthException | 엔디티를 주어진 위치로 텔레포트 하고 성공했는지 여부를 반환합니다. 참고로 위치와 방향 모드 설정할 수 있습니다. | 예 |
set_entity_max_speed() | 반환 값이 비어있음 | 엔디티 ID | BadEntityException BadEntityTypeException CastException LengthException | 주어진 엔디티의 최대 속더를 설정합니다. 엔디티가 보트나 마인카트여야만 합니다. | 예 |
set_entity_onfire() | 반환 값이 비어있음 | 엔디티 ID, 초 | FormatException LengthException BadEntityException | 엔디티를 주어진 시간동안 불에 타게 합니다. 만약 초가 0보다 작거나 107374182 보다 클 경우 RangeException 이 발생합니다. | 예 |
set_entity_rider() | boolean | 엔디티, 탑승자 | FormatException LengthException BadEntityException | 두 엔디티를 쌓습니다. 엔디티와 탑승자를 엔디티 Id 이며, 탑승자가 null 일 경우 현재 태우고 있는 엔디티를 떼어냅니다. 만약 엔디티가 null 일 경우 탑승자가 타고 있는 것이 무엇이든 내리게 됩니다. 만약 엔디티와 탑승자가 모두 존재하는 엔디티인 경우 탑승자가 엔디티를 탑니다. 펑션이 성공할 경우 참을 반환하며, 엔디티와 탑승자가 전부 null 이거나 같을 경우 FormatException 이 발생합니다. | 예 |
set_entity_silent() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티가 소리를 낼 지 여부를 설정합니다. | 예 |
set_entity_spec() | 반환 값이 비어있음 | 엔디티 ID, 스펙 배열 | CastException BadEntityException IndexOverflowException IndexOverflowException RangeException FormatException LengthException InvalidWorldException | 주어진 엔디티의 데이터를 스펙 배열을 통해 설정합니다. 스펙 배열은 entity_spec() 펑션에서 사용되는 배열과 같습니다. | 예 |
set_entity_velocity() | 반환 값이 비어있음 | 엔디티 ID, 배열 | FormatException LengthException BadEntityException | 주어진 엔디티의 속도를 주어진 xyz 배열에 맞추어 설정합니다. 모든 세 값의 기본값은 0이며, 빈 배열은 엔디티의 움직임을 강제로 중지시킵니다. 키가 있는 배열과 없는 배열 모두 인수로 사용할 수 있습니다. | 예 |
set_mob_name() | 반환 값이 비어있음 | 엔디티 ID, 이름 | FormatException LengthException BadEntityException | 주어진 몹의 이름을 설정합니다. 64자 이상이라면 자동으로 잘라냅니다. | 예 |
set_name_visible() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 몹의 이름을 항상 보이게 할 지 설정합니다. 참일 경우 플레이어 이름처럼 항상 보이며, 거짓일 경우 가까이 있을 때에만 보입니다. | 예 |
set_projectile_bounce() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 주어진 발사체가 무언가에 부딪혔을 때 튕기게 할 지 설정합니다. | 예 |
set_projectile_shooter() | 반환 값이 비어있음 | 엔디티 ID, 발사자 ID | FormatException LengthException BadEntityException | 주어진 발사체를 발사한 사람을 설정합니다. 이는 엔디티 ID 나 디스펜서의 위치 배열(디스펜서가 아닐 경우 CastException 발생) 이거나 null 일 수 있습니다. | 예 |
shoot_projectile() | 정수 | [엔디티[, 발사체]] 플레이어, 발사체, 대상[, 속도] | BadEntityException BadEntityTypeException FormatException PlayerOfflineException | 주어진 위치(엔디티 ID, 플레이어 이름, 위치 배열 중 하나) 혹은 아무 위치도 주어지지 않을 경우엔 펑션을 사용한 플레이어에서 엔디티를 쏩니다. 만약 엔디티 종류가 주어지지 않을 경우, 화염구가 나갑니다. 만약 대상(엔디티 ID, 플레이어 이름, 위치 배열 중 하나) 이 주어졌을 경우 해당 대상에게 쏘며, 속도가 주어졌을 경우 발사체의 속도가 바뀝니다. 사용 가능한 발사체 종류: ARROW, DRAGON_FIREBALL, EGG, ENDER_PEARL, FIREBALL, LLAMA_SPIT, SHULKER_BULLET, SMALL_FIREBALL, SNOWBALL, SPECTRAL_ARROW, SPLASH_POTION, TIPPED_ARROW, THROWN_EXP_BOTTLE, WITHER_SKULL | 예 |
spawn_entity() | 배열 | 엔티티 종류, [수], [위치], [클로저] | CastException FormatException BadEntityException InvalidWorldException PlayerOfflineException IllegalArgumentException | 주어진 수만큼의 엔디티를 주어진 위치에 소환합니다. 소환된 엔디티의 ID 배열을 반환합니다. 수는 기본적으로 1이며 위치는 기본적으로 사용한 것의 위치입니다. 콘솔에서 실행하였을 경우 위치는 반드시 입력되어야 합니다. | 예 |
환경
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
break_block() | 반환 값이 비어있음 | 위치 배열 | FormatException | 주어진 위치에서 블록을 부숩니다. 이벤트를 발동시키지 않습니다. | 예 |
explosion() | 반환 값이 비어있음 | 위치 배열, [크기], [안전] | FormatException CastException LengthException InvalidWorldException | 주어진 위치에서 주어진 크기 만큼의 폭발을 생성합니다. 기본 크기는 크리퍼의 크기(3) 과 같습니다. null 을 입력하면 기본값을 사용합니다. 안전 값이 참일 경우(기본값은 거짓) 폭발은 주변 블록에 영향을 주지 않습니다. 크기가 0이고 안전 값이 참이라면 애니메이션과 소리는 들리지만 플레이어는 다치지 않습니다. | 예 |
generate_tree() | boolean | 위치 배열, [나무 종류] | CastException BadEntityException FormatException | 주어진 위치에 나무를 생성하고 생성 성공 여부를 반환합니다. 나무 종류는 TREE, BIG_TREE, REDWOOD, TALL_REDWOOD, BIRCH, JUNGLE, SMALL_JUNGLE, JUNGLE_BUSH, RED_MUSHROOM, BROWN_MUSHROOM, SWAMP, ACACIA, DARK_OAK, COCOA_TREE, MEGA_REDWOOD, TALL_BIRCH, CHORUS_PLANT 중 하나이며, 기본 값은 TREE 입니다. | 예 |
get_biome() | 문자열 | x, z, [월드] 위치 배열 | FormatException CastException InvalidWorldException NotFoundException | 주어진 위치에서 바이옴 종류를 반환합니다. 위치 배열의 y 값은 무시됩니다. | 예 |
get_block() | 문자열 | 위치 배열 | FormatException CastException InvalidWorldException NotFoundException | 주어진 위치의 블록 종류를 반환합니다. | 예 |
get_block_at() | 문자열 | x, y, z, [월드] locationArray, [월드] | FormatException CastException InvalidWorldException NotFoundException | 주어진 좌표에서의 블록 ID 를 구합니다. 반환 값은 a:b 와 같은 형태이며, a 는 블록의 ID, b 는 블록의 데이터입니다. 모든 블록은 이와 같은 형식으로 반환되며, 만약 데이터가 없는 블록의 경우 데이터는 0이 됩니다.(공기의 경우 "0:0") 월드가 주어지지 않았고 위치 배열에도 없을 경우, 현재 플레이어의 월드가 사용됩니다. | 예 |
get_block_command() | 문자열 | 위치 배열 | CastException FormatException | 주어진 위치의 명령 블록 안에 있는 명령어 문자열을 반환합니다. | 예 |
get_block_info() | 다양함 | 위치 배열, [인덱스] | CastException FormatException | 블록에 대한 다양한 정보를 담고 있는 배열을 반환합니다. 인덱스가 주어졌다면 boolean 을 반환합니다. | 예 |
get_block_power() | 정수 | 위치 배열 | CastException InvalidWorldException FormatException | 주어진 블록에 레드스톤 전력이 얼마나 들어가는지 반환합니다.[0-15] 만약 is_block_powered(위치 배열, 'DIRECT_ONLY') 가 참이라면, 레드스톤 광석이 주어진 위치에 켜진 상태로 존재한다면 -1 을 반환합니다. | 아니오 |
get_blockdata_string() | 문자열 | 위치 배열 | FormatException CastException InvalidWorldException NotFoundException | 주어진 위치의 블록 데이터를 문자열 형식으로 반환합니다. 추후 버전에선 작동되지 않을 수 있습니다. | 예 |
get_command_block_name() | 문자열 | 위치 배열 | CastException FormatException | 주어진 위치에서의 명령 블록의 이름을 반환합니다. | 예 |
get_highest_block_at() | 배열 | x, z, [월드] locationArray, [월드] | FormatException CastException LengthException InvalidWorldException NotFoundException | 주어진 위치에서 x,z 만 판단하여 그 좌표에서 가장 높은 블록을 반환합니다. y 가 얼마로 주어지든 무시합니다. | 예 |
get_light_at() | 정수 | 위치 배열 | CastException InvalidWorldException FormatException | 주어진 블록에서의 빛 레벨을 반환합니다. | 아니오 |
get_sign_text() | 배열 | 위치 배열 | RangeException FormatException | 주어진 위치에 있는 표지판의 4줄의 내용을 각 줄마다 배열으로 반환합니다. 만약 주어진 위치에 표지판이 없다면, RangeException 이 반환됩니다. | 예 |
is_block_powered() | boolean | 위치 배열, [확인 모드] | CastException InvalidWorldException FormatException | 주어진 위치에서 블록이 레드스톤 전력을 받고 있는지 확인합니다. 확인 모드는 "BOTH"(직접 전력 과 간접 전력 모두 확인), "DIRECT_ONLY"(직접 전력만 확인), "INDIRECT_ONLY" (간접 전력만 확인) 중 하나이며, 기본값은 "BOTH" 입니다. | 아니오 |
is_sign_at() | boolean | 위치 배열 | FormatException | 주어진 위치에 표지판이 있는지 확인합니다. | 예 |
play_named_sound() | 반환 값이 비어있음 | 위치 배열, 소리 배열[, 플레이어들] | InvalidWorldException CastException FormatException PlayerOfflineException | 주어진 위치에서 소리를 냅니다. 소리 배열은 'sound', 'category', 'volume', pitch' 키가 있는 배열이며, sound 를 제외하고 전부 필수가 아닙니다. sound 는 리소스팩에서 사용하는 소리의 이름이고, category 는 소리의 종류, volume 은 소리의 크기이고, 기본값은 1.0 이며 이보다 클 경우 청크에 따라 소시를 듣거나 듣지 못합니다. pitch 는 0.5-2.0 범위로 1.0이 기본 값이며, 소리의 높낮이입니다.플레이어들은 플레이어 한명이나 소리를 들을 플레이어의 배열이며, 주어지지 않을 경우 그 주변에 있는 모든 플레이어가 듣습니다. | 예 |
play_note() | 반환 값이 비어있음 | [플레이어], 악기, 노트, [위치 배열] | CastException RangeException FormatException PlayerOfflineException | 주어진 플레이어에게 주어진 위치에서 특정 노트 블록의 노트를 들려줍니다. 악기는 PIANO, BASS_DRUM, SNARE_DRUM, STICKS, BASS_GUITAR, FLUTE, BELL, GUITAR, CHIME, XYLOPHONE 중 하나이며, 노트는 두 값이 있는 키가 있는 배열입니다. array(octave: 0, tone: 'F#') 과 같은 형식이며, octave 는 0, 1, 2 중 하나, tone 은 G, A, B, C, D, E, F 중 하나이고 뒤에 # 표시를 붙여 반음을 높일 수 있습니다. | 예 |
play_sound() | 반환 값이 비어있음 | 위치 배열, 소리 배열[, 플레이어들] | InvalidWorldException CastException FormatException PlayerOfflineException | 주어진 위치에서 소리를 냅니다. 소리 배열은 'sound', 'category', 'volume', pitch' 키가 있는 배열이며, sound 를 제외하고 전부 필수가 아닙니다. sound 는 버킷에서 소리의 이름이고, category 는 소리의 종류, volume 은 소리의 크기이고, 기본값은 1.0 이며 이보다 클 경우 청크에 따라 소시를 듣거나 듣지 못합니다. pitch 는 0.5-2.0 범위로 1.0이 기본 값이며, 소리의 높낮이입니다.플레이어들은 플레이어 한명이나 소리를 들을 플레이어의 배열이며, 주어지지 않을 경우 그 주변에 있는 모든 플레이어가 듣습니다. | 예 |
set_biome() | 반환 값이 비어있음 | x, z, [월드], 바이옴 위치 배열, 바이옴 | FormatException CastException NotFoundException | 주어진 블록이 있는 곳에서의 바이옴을 바꿉니다. 위치 배열의 y 좌표는 무시됩니다. | 예 |
set_block() | 반환 값이 비어있음 | 위치 배열, 블록 이름, [물리] | FormatException CastException InvalidWorldException IllegalArgumentException | 주어진 위치에 블록을 설정합니다. 물리 값은 블록 업데이트를 할지 여부를 설정합니다. 기본 값은 참입니다. | 예 |
set_block_at() | 반환 값이 비어있음 | x, y, z, id, [월드] [중력] 위치 배열, id, [중력] | CastException FormatException InvalidWorldException | 주어진 x,y,z 좌표에 블록의 id 를 설정합니다. id 는 get_block_at 에서 사용하는 블록의 ID 입니다.("0:0" 과 같음) 만약 메타 값이 주어지지 않을 경우, 0이 사용됩니다. 월드가 주어지지 않을 경우, 현재 플레이어의 월드가 사용됩니다. 중력(기본값은 참) 은 주어진 블록이 설치되었을 때 그 블록과 주변 블록이 중력의 영향을 받을지 설정합니다. | 예 |
set_block_command() | 반환 값이 비어있음 | 위치 배열, [명령어] | CastException FormatException | 주어진 위치에 있는 명령 블록에 명령어를 설정합니다. 만약 명령어가 주어지지 않거나 null 이라면, 명령 블록을 완전히 지웁니다. | 예 |
set_blockdata_string() | 반환 값이 비어있음 | 위치 배열, 데이터, [중력] | FormatException CastException InvalidWorldException NotFoundException IllegalArgumentException | 블록데이터 문자열을 통해 블록을 설정합니다. 추후 버전에선 작동되지 않을 수 있습니다. | 예 |
set_command_block_name() | 반환 값이 비어있음 | 위치 배열, [이름] | CastException FormatException | 주어진 위치에 있는 명령 블록의 이름을 설정합니다. 이름이 주어지지 않거나 null 이라면, 명령 블록의 이름은 @ 으로 초기화됩니다. | 예 |
set_sign_text() | 반환 값이 비어있음 | 위치 배열, 줄 배열 위치 배열, 1번 줄, [2번 줄, [3번 줄, [4번 줄]]] | RangeException FormatException | 주어진 위치에 있는 표지판의 내용을 설정합니다. 만약 주어진 위치에 표지판이 없다면, RangeException 이 발생합니다. 또한 줄에 있는 글이 15글자를 넘는다면, 잘립니다. | 예 |
spawn_particle() | 반환 값이 비어있음 | 위치, 입자[, 플레이어들] | RangeException CastException FormatException PlayerOfflineException LengthException | 주어진 위치에 입자를 생성합니다. 플레이어들 값은 플레이어 한명이거나 여러 플레이어의 배열일 수 있습니다. 주어지지 않았다면, 32미터 안의 모든 플레이어가 입자를 보게 됩니다. 입자 값은 입자 이름이나 입자의 세부 사항을 결정하는 키가 있는 배열일 수 있습니다. 배열은 "particle" 키의 값을 입자 이름으로 요구합니다. See more... | 예 |
이벤트 등록
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
bind() | 문자열 | 이벤트 이름, 옵션, 사전 필터, 이벤트 변수, [커스텀 변수], <코드> | BindException | 이벤트를 등록하여 이벤트가 발생할 수 있도록 합니다. 나중에 필요할 때 등록 해제할 수 있도록 해당 이벤트의 ID 를 반환합니다. | 예 |
cancel() | 반환 값이 비어있음 | [상태] | BindException | 취소할 수 있을 경우 이벤트를 취소합니다. 이미 취소되었거나 취소할 수 없을 경우, 아무 일도 일언나지 않습니다. 만약 이벤트 핸들러 바깥에서 호출되었을 경우, BindException 이 발생합니다. 기본적으로, 상태는 true 이며, 만약 이벤트 취소를 취소하고 싶다면 cancel(false) 와 같은 형식으로 쓰면 됩니다. | 예 |
consume() | 반환 값이 비어있음 | BindException | 이벤트를 소멸시켜 낮은 우선도의 핸들러가 이벤트를 받지 않도록 합니다. 하지만 모니터 레벨의 핸들러는 여전히 이벤트를 받습니다. 이벤트가 소멸되었는지도 확인할 수 있습니다. | 예 | |
dump_events() | 배열 | 서버에 모든 등록된 이벤트를 반환합니다. 거의 대부분 디버그의 목적이며, 파싱이 가능하여 등록 해제할 이벤트를 선택할 수 있습니다. | 예 | ||
event_meta() | 배열 | BindException | 해당 이벤트의 이벤트 정보를 반환합니다. 디버그 용으로 사용됩니다. | 예 | |
has_bind() | boolean | id | 해당 ID 에 이벤트가 등록되었는지 확인합니다. 등록되었다면 참을 반환합니다. 이는 ID 중복을 방지하여 BindException 발생을 방지할 수 있습니다. | 예 | |
is_cancelled() | boolean | BindException | 해당 이벤트가 취소되었는지 여부를 확인합니다. 만약 이벤트가 취소 불가능할 경우, 거짓이 반환되며, 이벤트 바깥에서 사용될 경우, BindException 이 발생합니다. | 예 | |
is_consumed() | boolean | BindException | 이벤트가 소멸되었는지 확인합니다. 일반적으로 모니터 레벨 이벤트 핸들러에서만 유용합니다. | 예 | |
is_locked() | boolean | 인수 | BindException | modify_event() 가 실패할지 확인합니다. 높은 우선도의 핸들러에 의해 인수가 잠겼는지 확인할 수 있습니다. 만약 이것이 거짓을 반환한다 해도, 이벤트의 값을 여전히 수정할 수 있는지는 확실하지 않습니다. 단지 인수가 잠겼는지만 확인할 수 있습니다. | 예 |
lock() | 반환 값이 비어있음 | <없음> 인수 배열 인수, [인수...] | BindException | 주어진 이벤트 인수를 잠급니다. 만약 인수가 주어지지 않을 경우 모든 인수를 잠급니다. 인수가 잠길 경우 낮은 우선도의 이벤트 핸들러에서 인수를 수정할 수 없습니다. | 예 |
modify_event() | boolean | 인수, 값, [실패시 반환] | CastException BindException | 이벤트 인수를 수정합니다. 각 이벤트의 문서가 어떤 이벤트 인수가 수정될 수 있고 어떤 값을 요구하는지 알려줍니다. | 예 |
trigger() | 반환 값이 비어있음 | 이벤트 이름, 이벤트 변수, [전 서버 적용] | CastException | 수동으로 이벤트를 실행합니다. 여기서 주어진 이벤트 변수는 실행될 이벤트에 그대로 전해지며, 어떤 이벤트 값이 필요한지는 각 이벤트의 문서에 있습니다. 모든 데이터가 존재하는지 확인하지는 않지만, 만약을 위해 모든 인수를 보낼 것을 추천합니다. 만약 전 서버 적용이 참일 경우, 이는 커맨드헬퍼 전용 이벤트가 아닐 경우 서버 전체에서 발동됩니다. 기본값은 거짓입낟. | 예 |
unbind() | 반환 값이 비어있음 | [이벤트 ID] | BindException | 이벤트를 등록 해제하여 실행되지 않도록 합니다. 이벤트 핸들러에서 호출될 경우, 이벤트 ID 는 필수가 아닙니다. 또한 기본 값은 현재 실행되고 있는 이벤트입니다. | 예 |
예외 처리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
complex_try() | 반환 값이 비어있음 | try 코드, [catch 변수, catch 코드]+, [catch 코드] | 아니오 | ||
get_stack_trace() | 배열 | 스택 트레이스의 배열을 반환합니다. 이는 예외가 발생할 때의 스택 트레이스와 같습니다. | 예 | ||
set_uncaught_exception_handler() | 클로저 | closure(@ex) | CastException | 오류 종류에 상관 없는 예외 핸들러를 설정합니다. 설정된 것을 반환하며, 아직 설정되지 않았을 경우 null 을 반환합니다. 만약 코드가 예외를 발생시키면, 기본 작업(오류를 유저나 콘솔에 표시) 하는 대신 주어진 코드를 실행시킵니다. 발생한 예외가 클로저에 전달되며, 클로저는 null 이나 참, 거짓을 반환하기를 기대합니다. | 예 |
throw() | 없음 | 예외 종류, 메시지, [원인] 예외 | FormatException | 이 펑션은 예외를 발생시킵니다. 예외 종류는 올바른 것이여야만 합니다.
기본 예외 종류는 다음과 같습니다: BadEntityException, BadEntityTypeException, BindException, ByteArrayReadOnlyException, CastException, EnchantmentException, Error, EventException, Exception, FormatException, IOException, IllegalArgumentException, IncludeException, IndexOverflowException, InsufficientArgumentsException, InsufficientPermissionException, InvalidPluginException, InvalidProcedureException, InvalidWorldException, LengthException, NotFoundException, NullPointerException, OAuthException, PlayerOfflineException, PluginChannelException, PluginInternalException, RangeException, ReadOnlyException, SQLException, ScoreboardException, SecurityException, ShellException, StackOverflowError, Throwable, UnageableMobException, UntameableMobException. 다른 예외 종류도 있을 수 있습니다. 자세한 사항은 확장기능의 문서를 살펴보시기 바랍니다. | 아니오 |
try() | 반환 값이 비어있음 | 대상 코드, [변수 이름, 실행 코드, [예외 종류]] 대상 코드, 실행 코드 | CastException FormatException | 다른 프로그래밍 언어에서의 try-catch 블록과 동일한 역할을 합니다. 만약 대상 코드에서 예외가 발생할 경우, 스크립트를 중지시키는 대신 실행 코드를 실행시킵니다. 변수는 i변수이여야 하며, 정보를 담고 있는 배열이 포함됩니다. 예외에 대해선 try 펑션 대신 try/catch 블록을 사용하는 것이 좋습니다. | 아니오 |
실행 대기열
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
queue_clear() | 반환 값이 비어있음 | [대기열] | 주어진 대기열에 있는 모든 작업을 제거합니다. 대기열에 작업이 하나도 없다면 아무 일도 일어나지 않습니다. | 예 | |
queue_delay() | 반환 값이 비어있음 | x, [대기열] | CastException | 메인 스레드에 영향을 주지 않는 딜레이를 작업의 끝에 생성합니다. 해당 대기열에 있는 다음 작업은 x 밀리초 후에 시작될 것입니다. | 예 |
queue_delay_front() | 반환 값이 비어있음 | x, [대기열] | CastException | queue_delay 와 같지만 딜레이를 작업의 시작 부분에 생성합니다. | 예 |
queue_push() | 반환 값이 비어있음 | 클로저, [대기열] | CastException | 주어진 대기열에 작업을 대기시킵니다. | 예 |
queue_push_front() | 반환 값이 비어있음 | 클로저, [대기열] | CastException | 주어진 대기열의 맨 처음에 작업을 대기시킵니다. | 예 |
queue_remove() | 반환 값이 비어있음 | [대기열] | 대기열에서 마지막 작업을 제거합니다. | 예 | |
queue_remove_front() | 반환 값이 비어있음 | [대기열] | 대기열에서 첫번째 작업을 제거합니다. 즉, 실행된 작업 바로 다음 작업이 제거됩니다. | 예 | |
queue_running() | boolean | [대기열] | 주어진 대기열이 작업을 실행중이라면 참을 반환합니다. | 예 | |
확장기능 정보
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
event_exists() | boolean | 이름 | 만약 이벤트가 MethodScript 에서 존재한다고 판단하는지 확인합니다. function_exists() 와 비슷하며, 이 펑션은 컴파일 때 이미 실행됩니다. 또한 이벤트의 존재 여부에 따른 실행을 할 수 있도록 합니다. | 아니오 | |
extension_exists() | boolean | 이름 | function_exists() 와 같이 해당 확장기능이 존재하는지 확인합니다. function_exists() 처럼 컴파일 때 실행됩니다. | 아니오 | |
extension_info() | 배열 | [확장기능 이름] | 시스템에 로드된 확장기능의 정보를 반환합니다. 만약 확장기능의 이름이 주어진다면 해당 확장기능의 정보가 반환됩니다. 정보엔 이벤트, 펑션, 버전, 이름이 포함됩니다. | 아니오 | |
function_exists() | boolean | 이름 | 해당 펑션이 MethodScript 에 의해 인식된다면 참을 반환합니다. 이 펑션은 컴파일 시간에 실행되며, 펑션에 존재 여부에 따라 펑션을 실행할 수 있도록 합니다. 그렇게 함으로써 버전에서 만약 지원하지 않아도 이 펑션을 사용하여 코드가 호환될 수 있도록 할 수 있어 컴파일 에러를 방지할 수 있습니다. | 아니오 | |
파일 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
async_read() | 반환 값이 비어있음 | 파일, 콜백 | SecurityException | 비동기적으로 파일을 읽습니다. | 예 |
comp_read() | 문자열 | 경로 | 컴파일 시간에서 파일의 값을 읽습니다. 일반 read() 와 다르게 컴파일 시간에 파일을 불러옵니다. 이는 최적화적인 면에서 좋습니다. 만약 잘 바뀌지 않는 파일이 있다면, 이는 read() 대신 사용될 수 있습니다. 그렇게 함으로써 매 실행마다 파일을 읽어오는 것을 방지할 수 있습니다. 그를 제외하면 read() 와 완전히 동일하며, 경로는 컴파일 시간에도 실행할 수 있는 값이여야 합니다. | 예 | |
file_resolve() | 문자열 | 파일 | IOException | 주어진 경로에 맞는 절대 경로를 반환합니다. | 예 |
file_size() | 정수 | 경로 | IOException SecurityException | 파일 시스템에서 파일의 크기를 반환합니다. | 예 |
read() | 문자열 | 파일 | IOException SecurityException | 파일 시스템에서 파일을 읽고 문자열으로 반환합니다. 경로는 상대 경로이며, 커맨드헬퍼의 경로가 아닌 실행되는 스크립트의 경로입니다. 파일이 존재하지 않거나 읽을 수 없는 경우, IOException 이 발생합니다. 만약 파일이 접근할 수 없는 경로에 있다면 SecurityException 이 발생합니다. | 예 |
read_binary() | 바이트_배열 | 파일 | IOException | 파일을 읽고, 그 파일의 바이트 배열을 반환합니다. 파일이 디스크에 존재하는 것과 완전히 동일한 값을 반환하며, 변환 과정이 전혀 없습니다. read() 와 같은 경로 제한이 있습니다. | 예 |
read_gzip_binary() | 바이트_배열 | 파일 | IOException | gzip 알고리즘으로 압축된 파일을 읽고 바이트 배열으로 반환합니다. 이 파일이 디스크에 존재하는 그대로 반환되며 아무런 변환도 없습니다. read() 와 같은 경로 제한이 잇습니다. | 예 |
인벤토리 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
add_to_inventory() | 정수 | 대상, 아이템 배열 | CastException FormatException BadEntityException InvalidWorldException IllegalArgumentException NotFoundException RangeException | 인벤토리에 주어진 아이템을 추가합니다. 대상은 위치 배열, 엔디티 UUID 혹은 가상 인벤토리 ID 입니다. 아이템이 인벤토리에 지급되면, 처음엔 같은 아이템 종류인 슬롯을 완전히 채우고 빈 슬롯을 채웁니다. 전체 인벤토리가 차거나 주어진 양을 전부 주었을 때까지 계속되며, 추가되지 않은 아이템의 수가 반환됩니다. 반환되는 수는 줄 아이템의 수보다 작거나 같고, 전부 주었을 경우 0을 반환합니다. | 예 |
clear_pinv() | 반환 값이 비어있음 | [플레이어] | PlayerOfflineException LengthException NotFoundException | 플레이어의 전체 인벤토리를 지웁니다.(갑옷 칸 포함) | 예 |
close_pinv() | 반환 값이 비어있음 | [플레이어] | PlayerOfflineException LengthException | 플레이어의 인벤토리를 닫습니다. | 예 |
create_virtual_inventory() | 반환 값이 비어있음 | id, [종류/크기], [제목], [인벤토리] | RangeException CastException FormatException IllegalArgumentException | 가상 인벤토리를 만들고 주어진 id 에 등록합니다. 문자열 id 는 UUID의 형식은 안되며, id 가 중복될 경우 IllegalArgumentException 가 발생합니다. 이 id 를 활용하여 다른 인벤토리 펑션에서 인벤토리를 수정할 수 있도록 할 수 있습니다. 종류 대신 크기가 주어졌을 경우 이는 가장 가까운 9의 배수만큼의 크기로 어림됩니다. 크기는 54보다 클 수 있지만, 인벤토리의 텍스쳐가 올바르지 않게 표시될 수 있습니다. 제목은 주어지지 않았을 경우 해당 인벤토리 종류에 맞는 기본값이 사용됩니다. 필수가 아닌 인벤토리 배열이 주어질 수도 있지만, 아닐 경우 비어있는 상태가 됩니다. 사용 가능한 인벤토리 종류는 다음과 같습니다: BREWING, CHEST, DISPENSER, DROPPER, ENDER_CHEST, FURNACE, HOPPER, PLAYER, WORKBENCH, ANVIL, BEACON, SHULKER_BOX | 예 |
delete_virtual_inventory() | boolean | id | 가상 인벤토리를 지웁니다. 인벤토리는 보고 있는 모든 플레이어에게서 닫힙니다. 인벤토리가 제거되기 전에 존재했는지 여부를 반환합니다. | 예 | |
get_inventory() | 배열 | 대상, [인덱스] | CastException RangeException FormatException BadEntityException InvalidWorldException IllegalArgumentException | 주어진 인벤토리의 배열을 반환합니다. 만약 블록이나 엔디티가 인벤토리를 가질 수 없는 경우, FormatException 이 발생합니다. 인덱스가 주어졌을 경우, 주어진 인덱스에 맞는 슬롯만 반환됩니다. 배열의 최대 인덱스는 인벤토리 종류에 따라 다릅니다. 만약 아이템이 슬롯에 없다면, null 이 반환됩니다. | 예 |
get_inventory_item() | 배열 | 대상, 슬롯 | FormatException BadEntityException InvalidWorldException CastException RangeException IllegalArgumentException | 만약 숫자가 주어지면, 엔디티로 간주하며, 엔디티가 인벤토리를 지원하면 올바른 엔디티입니다. 그 외에 위치 배열이 주어진다면, 블록(상자, 양조기 등) 으로 간주합니다. 인벤토리 종류에 따라 최대 인덱스는 다를 수 있으며, 인덱스가 너무 크다면 RangeException 이 발생합니다. 아니라면, 그 슬롯에 있는 아이템이 아이템 배열로 반환되거나 아이템이 없는 경우 null 을 반환합니다. 인벤토리 종류는 get_inventory_type() 펑션을 통해 알아볼 수 있습니다. | 예 |
get_inventory_name() | 문자열 | 대상 | BadEntityException CastException FormatException InvalidWorldException IllegalArgumentException | 주어진 인벤토리의 이름을 반환합니다. 인벤토리를 가질 수 없는 블록이나 엔디티가 주어질 경우, FormatException 이 발생합니다. | 예 |
get_inventory_size() | 정수 | 대상 | FormatException BadEntityException InvalidWorldException CastException IllegalArgumentException | 주어진 인벤토리의 최대 크기를 반환합니다. 블록이나 엔디티가 인벤토리를 가질 수 없는 경우, FormatException 이 발생합니다. | 예 |
get_inventory_type() | 문자열 | 대상 | CastException FormatException BadEntityException InvalidWorldException IllegalArgumentException | 주어진 대상에 대한 인벤토리 종류를 반환합니다. 대상이 인벤토리를 가질 수 없는 대상이라면, FormatException 이 발생합니다. | 예 |
get_inventory_viewers() | 배열 | 대상 | FormatException BadEntityException InvalidWorldException CastException IllegalArgumentException | 주어진 인벤토리를 보고 있는 모든 플레이어를 반환합니다. 대상은 엔디티 UUID, 블록, 위치 배열, 가상 인벤토리 ID 중 하나입니다. | 예 |
get_virtual_inventories() | 배열 | 존재하는 가상 인벤토리 id 의 배열을 반환합니다. | 예 | ||
penchanting() | 반환 값이 비어있음 | [플레이어] | PlayerOfflineException LengthException | 현재 플레이어에게 인첸트 화면을 보여줍니다. 인첸트 파워는 주변에 얼마나 많은 책장이 있는가에 따라 달라집니다. | 예 |
penderchest() | 배열 | [플레이어, [인덱스]] | PlayerOfflineException LengthException CastException RangeException NotFoundException | 주어진 플레이어의 엔더 상자 인벤토리를 반환합니다. 만약 인덱스가 주어진다면, 주어진 슬롯만이 반환됩니다. 인덱스의 범위는 0부터 26까지이며, 엔더 상자의 슬롯과 일치합니다. 슬롯에 아이템이 없는 경우엔 null 이 반환됩니다. | 예 |
pgive_enderchest_item() | 정수 | [플레이어], 아이템 배열 | FormatException CastException RangeException PlayerOfflineException NotFoundException IllegalArgumentException LengthException | 플레이어의 엔더 상자에 주어진 아이템을 추가합니다. set_penderchest() 와는 다르게, 슬롯을 지정하지 않고 인벤토리에 지급됩니다. 아이템이 인벤토리에 지급되면, 처음엔 같은 아이템 종류인 슬롯을 완전히 채우고 빈 슬롯을 채웁니다. 전체 인벤토리가 차거나 주어진 양을 전부 주었을 때까지 계속되며, 추가되지 않은 아이템의 수가 반환됩니다. 반환되는 수는 줄 아이템의 수보다 작거나 같고, 전부 주었을 경우 0을 반환합니다. | 예 |
pgive_item() | 정수 | [플레이어], 아이템 배열 | CastException FormatException PlayerOfflineException NotFoundException IllegalArgumentException LengthException InsufficientArgumentsException | 플레이어에게 아이템을 줍니다. set_pinv() 와 달리 슬롯을 지정하지 않습니다. 주어진 수 만큼 아이템이 지급되며, 처음엔 같은 아이템 종류인 슬롯을 완전히 채우고 빈 슬롯을 채웁니다. 전체 인벤토리가 차거나 주어진 양을 전부 주었을 때까지 계속되며, 추가되지 않은 아이템의 수가 반환됩니다. 반환되는 수는 줄 아이템의 수보다 작거나 같고, 전부 주었을 경우 0을 반환합니다. 이 펑션은 플레이어의 갑옷 슬롯엔 영향을 주지 않습니다. | 예 |
phas_item() | 정수 | [플레이어], 아이템 배열 | PlayerOfflineException FormatException RangeException CastException NotFoundException LengthException | 주어진 아이템을 플레이어가 얼마나 가지고 있는지 수를 반환합니다.(갑옷 슬롯을 포함합니다.) 0 일 경우 아이템을 가지고 있지 않은 것이 되며, 아닐 경우엔 아이템을 가진 것입니다. 그래서 이 펑션은 아이템의 갯수를 아는 데에도 사용될 수 있고, 아이템을 가지고 있는지 아는 데에도 사용할 수 있습니다. | 예 |
pheld_slot() | 정수 | [플레이어] | PlayerOfflineException LengthException FormatException NotFoundException | 주어진 플레이어가 선택하고 있는 퀵바 슬롯을 반환합니다. 슬롯 번호는 0-8 의 범위를 가지고 있습니다. | 예 |
pinv() | 배열 | [플레이어, [슬롯]] | PlayerOfflineException LengthException CastException RangeException NotFoundException | 주어진 플레이어에 대한 인벤토리 정보를 반환합니다. 만약 슬롯이 주어지면, 해당 슬롯만이 반환됩니다. 배열의 인덱스의 범위는 0 - 35, 100 - 103, -106 이 포함됩니다. 0-35 까지는 일반 인벤토리 슬롯이며, 그 중 0-8까지는 퀵바 슬롯에 해당됩니다. 그리고 100부터 103까지는 갑옷 슬롯, -106은 플레이어의 보조 손 슬롯에 해당됩니다. 만약 슬롯에 아이템이 없다면 null 이 반환됩니다. | 예 |
pinv_open() | 반환 값이 비어있음 | [보여줄 플레이어,] 플레이어 인벤토리 | PlayerOfflineException LengthException | 주어진 플레이어에게 플레이어의 인벤토리를 엽니다. | 예 |
pinventory_holder() | 다양함 | [플레이어] | PlayerOfflineException FormatException BadEntityException InvalidWorldException CastException LengthException | 현재 플레이어가 보고 있는 인벤토리의 원래 위치(블록인 경우 위치 배열, 엔디티인 경우 엔디티 UUID, 가상 인벤토리라면 가상 인벤토리 ID) 를 반환합니다. 플레이어가 자기 자신의 인벤토리를 보고 있거나 인벤토리를 보고 있지 않은 경우 플레이어의 UUID 가 반환됩니다. 만약 인벤토리가 가상인데 id 가 존재하지 않는다면 null 을 반환합니다. 반환된 값은 null 이 아닌 경우 다른 인벤토리 펑션에서도 사용할 수 있습니다. | 예 |
pitem_slot() | 배열 | [플레이어], 아이템 배열 | CastException FormatException LengthException PlayerOfflineException NotFoundException | 주어진 아이템 배열을 하나라도 가지고 있는 아이템 슬롯을 반환합니다. | 예 |
popen_inventory() | 반환 값이 비어있음 | [플레이어], 대상 | PlayerOfflineException FormatException BadEntityException InvalidWorldException CastException LengthException IllegalArgumentException | 플레이어에게 인벤토리를 엽니다. 대상은 엔디티 UUID, 창고 블록의 위치 배열, 가상 인벤토리 ID 중 하나입니다. | 예 |
ptake_enderchest_item() | 정수 | [플레이어], 아이템 배열 | CastException PlayerOfflineException LengthException FormatException NotFoundException RangeException | pgive_enderchest_item() 의 반대로 작동합니다. 또한 실제로 가져간 아이템의 수를 반환합니다. 반환될 수는 0과 주어진 수 사이입니다. | 예 |
ptake_item() | 정수 | [플레이어], 아이템 배열 | CastException PlayerOfflineException RangeException FormatException NotFoundException LengthException | pgive_item() 의 반대로 작동합니다. 또한 실제로 가져간 아이템의 수를 반환합니다. 반환될 수는 0과 주어진 수 사이입니다. | 예 |
pworkbench() | 반환 값이 비어있음 | [플레이어] | PlayerOfflineException LengthException InsufficientArgumentsException | 플레이어에게 작업대 창을 엽니다. | 예 |
set_inventory() | 반환 값이 비어있음 | 대상, 인벤토리 배열 | CastException FormatException BadEntityException InvalidWorldException RangeException IllegalArgumentException | 주어진 대상의 인벤토리를 설정합니다. 대상은 엔디티 UUID, 위치 배열, 가상 인벤토리 ID 중 하나입니다. 만약 인벤토리가 존재할 수 없는 블록이나 엔디티가 주어진다면, FormatException 이 발생합니다. 인벤토리 배열은 get_inventory() 펑션에서 사용하는 형식과 동일합니다. 즉 set_inventory(123, get_inventory(123)) 은 의미는 없지만 정상적인 호출이 됩니다. | 예 |
set_inventory_item() | 반환 값이 비어있음 | 대상, 인덱스, 아이템 배열 | FormatException BadEntityException InvalidWorldException CastException RangeException IllegalArgumentException | 주어진 대상의 주어진 슬롯에 주어진 아이템을 설정합니다. 대상은 엔디티 UUID, 블록 위치 배열, 가상 인벤토리 ID 중 하나입니다. | 예 |
set_penderchest() | 반환 값이 비어있음 | [플레이어], 인벤토리 배열 | PlayerOfflineException CastException FormatException LengthException | 플레이어의 엔더 상자 인벤토리를 주어진 인벤토리로 설정합니다. 인벤토리 배열은 penderchest() 에서 반환되는 값과 같습니다. | 예 |
set_pheld_slot() | 반환 값이 비어있음 | [플레이어], 슬롯 번호 | RangeException PlayerOfflineException FormatException NotFoundException LengthException | 플레이어가 선택한 퀵바 슬롯을 주어진 슬롯으로 변경합니다. 슬롯 번호의 범위는 [0-8] 입니다. | 예 |
set_pinv() | 반환 값이 비어있음 | [플레이어, [슬롯]], 배열 | PlayerOfflineException CastException FormatException LengthException | 플레이어의 인벤토리를 주어진 인벤토리 배열로 설정합니다. 인벤토리 배열은 pinv() 에서 사용하는 것과 같습니다. 슬롯이 주어질 경우, 주어질 배열은 아이템 배열이여야 하며, 주어진 슬롯의 아이템만 설정됩니다. | 예 |
show_enderchest() | 반환 값이 비어있음 | [플레이어 [, 플레이어]] | PlayerOfflineException LengthException | 주어진 플레이어에게 엔더 상자를 보여줍니다. 두번째 플레이어가 주어질 경우 두번째 플레이어의 엔더 상자를 첫번째 플레이어에게 보여줍니다. | 예 |
take_from_inventory() | 정수 | 대상, 아이템 배열 대상, 아이템 ID, 수 | CastException FormatException BadEntityException InvalidWorldException RangeException NotFoundException IllegalArgumentException | add_to_inventory() 의 반대로 작동합니다. 또한 실제로 가져간 아이템의 수를 반환합니다. 반환될 수는 0과 주어진 수 사이입니다. 대상은 위치 배열이나 엔디티 UUID이여야만 합니다. | 예 |
아이템 메타
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
get_armor_color() | 색상 배열 | [플레이어], 인벤토리 슬롯 | CastException PlayerOfflineException | 주어진 슬롯에 있는 가죽 갑옷의 색상을 반환합니다. 해당 슬롯에 가죽 갑옷이 없다면 CastException 이 발생합니다. 색상 배열은 다음과 같습니다: array(r: 0, g: 0, b: 0) | 예 |
get_itemmeta() | 배열 | [플레이어,] 인벤토리 슬롯 | PlayerOfflineException CastException | 주어진 슬롯에 있는 아이템의 메타데이터가 포함되어 있는 키가 있는 배열을 반환합니다. 하지만 아이템이 없거나 아이템의 메타 정보(이름, 로어, 인첸트 등)가 없다면 null 을 반환합니다. | 예 |
is_leather_armor() | boolean | [플레이어], 아이템 슬롯 | CastException PlayerOfflineException | 주어진 아이템 슬롯에 있는 아이템이 가죽 갑옷인지 확인합니다. | 예 |
set_armor_color() | 반환 값이 비어있음 | [플레이어], 슬롯, 색상 배열 | CastException PlayerOfflineException FormatException | 주어진 플레이어의 주어진 아이템 슬롯에 있는 가죽 갑옷의 색상을 지정합니다. 색상 배열의 형식은 다음 중 하나입니다: array(r: 0, g: 0, b: 0) array(red: 0, green: 0, blue: 0) array(0, 0, 0). | 예 |
set_itemmeta() | 반환 값이 비어있음 | [플레이어,] 인벤토리 슬롯, 아이템 메타 배열 | PlayerOfflineException FormatException CastException NotFoundException | 주어진 슬롯에 있는 아이템의 아이템 메타 데이터를 적용합니다. 사용하지 않은 필드는 무시됩니다. 만약 null 이나 빈 배열이 주어지거나 사용할 수 있는 필드가 주어지지 않은 경우 이 펑션은 모든 존재하는 데이터를 덮어쓰기 때문에 아이템은 기본 아이템이 됩니다. | 예 |
흐르는 글씨
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
marquee() | 반환 값이 비어있음 | [흐르는 글씨 이름], 텍스트, 텍스트 크기, 딜레이 시간, 콜백 | CastException | 흐르는 글씨를 만듭니다. 주어진 텍스트를 자동으로 분할하고, 콜백을 부릅니다. 분할된 문자열은 자동으로 스크롤됩니다. | 예 |
marquee_stop() | 반환 값이 비어있음 | 흐르는 글씨 이름 | 주어진 흐르는 글씨를 멈춥니다. | 예 | |
수학
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
abs() | 다양함 | 값 | CastException | 주어진 값의 절댓값을 반환합니다. | 아니오 |
acos() | 실수 | 숫자 | CastException | 주어진 숫자의 역코사인을 반환합니다. | 아니오 |
add() | 다양함 | 값1, [값2...] | CastException | 주어진 두 인수를 더합니다. 연산자 구문도 지원합니다: @a + @b | 아니오 |
asin() | 실수 | 숫자 | CastException | 주어진 숫자의 역사인을 반환합니다. | 아니오 |
atan() | 실수 | 숫자 | CastException | 주어진 숫자의 역탄젠트를 반환합니다. | 아니오 |
atan2() | 실수 | y, x | CastException | 직각 좌표(x, y) 를 변환한 극좌표(r, 세타) 를 이용하여 각 세타를 반환합니다. | 아니오 |
ceil() | 정수 | 숫자 | CastException | 주어진 숫자보다 큰 최소의 정수값을 반환합니다. 예를 들어, ceil(3.2) 는 4를 반환하고, ceil(-1.1) 은 -1을 반환합니다. | 아니오 |
clamp() | float | 값, 최소, 최대 | CastException | 만약 값이 최솟값보다 작다면, 최솟값이 반환되고, 최댓값보다 크다면 최댓값이 반환됩니다. 만약 두 값 사이라면, 원래의 값이 반환됩니다. 추가로, 최솟값이 최댓값보다 크다면 거꾸로 작동합니다. | 아니오 |
cos() | 실수 | 숫자 | CastException | 주어진 숫자의 코사인을 반환합니다. | 아니오 |
cosh() | 실수 | 숫자 | CastException | 주어진 숫자의 쌍곡코사인을 반환합니다. | 아니오 |
dec() | i변수 | 변수, [값] | CastException | 변수에서 값을 뺍니다. 값은 기본적으로 1이며, --변수 와 같습니다.(혹은 변수 -= 값) 변수에는 i변수를 필요로 하며, 만약 변수가 상수라면, 값으 빼고 새 숫자를 반환합니다. 연산자 구문도 지원합니다: --@변수 | 아니오 |
divide() | 다양함 | 값1, [값2...] | CastException RangeException | 왼쪽에서 오른쪽으로 값을 나눕니다. 실수이든 정수이든 반환합니다. 0으로 나눌 경우, RangeException 이 발생합니다. 연산자 구문도 지원합니다: 2 / 2 | 아니오 |
expr() | 실수 | 연산, [값 배열] | FormatException CastException PluginInternalException | 어떨 땐, 복잡한 수식을 써야 할 때가 있습니다. 이럴 때는 펑션을 사용하는 것보다는, 일반 연산 식을 사용하는것이 더 편합니다. 이 펑션은 일반 연산 식을 사용할 수 있도록 해줍니다. 변수도 값 배열을 통해 사용할 수 있습니다. 예를 들어 expr('(x + y) * z', array(x: 2, y: 3, z: 4)) 와 같은 형식으로 사용하면 됩니다. 이 펑션은 월드에딧 플러그인을 필요로 합니다. | 아니오 |
floor() | 정수 | 숫자 | CastException | 주어진 숫자보다 작은 최대의 정수를 반환합니다. 예를 들어, floor(3.8) 은 3을 반환하며, floor(-1.1) 은 -2 를 반환합니다. | 아니오 |
inc() | i변수 | 변수, [x] | CastException | 변수에 x 를 더합니다. 그리고 새 값을 저장합니다. 다른 언어에서 ++변수 와 같습니다. 변수는 i변수거나 상수이며, 상수일 경우엔 상수에 x 를 더한 다음 새 숫자를 반환합니다. 연산자 구문도 지원합니다: ++@변수 | 아니오 |
logarithm() | 실수 | 값, [밑] | CastException RangeException | 주어진 밑에 맞는 로그 값을 반환합니다. 만약 밑이 주어지지 않았다면 자연 상수 e 를 밑으로 한 로그 값을 반환합니다.(혹은 자연로그 ln) 만약 값이 0보다 작거나 같다면, RangeException 이 발생됩니다. 수학적으로 보았을 때, 값이 0이라면 결과는 음의 무한대입니다. 또한 0보다 작을 경우, 이는 정의되지 않습니다. 하지만 MethodScript 가 이를 표현할 방법이 없으므로, RangeException 이 대신 발생됩니다. | 아니오 |
math_const() | 숫자 | 상수 | CastException | 다양한 수학적 상수를 반환합니다. 상수의 값은 다음과 같습니다:NaN, NEGATIVE_INFINITY, INFINITY, DOUBLE_MAX, DOUBLE_MIN, LONG_MAX, LONG_MIN, SHORT_MAX, SHORT_MIN, INTEGER_MAX, INTEGER_MIN, FLOAT_MAX, FLOAT_MIN, BYTE_MAX, BYTE_MIN, E, PI, PHI, C, EULER | 아니오 |
max() | 숫자 | 1번 수, [2번 수...] | CastException InsufficientArgumentsException | 주어진 수의 목록에서 가장 큰 숫자를 반환합니다. 만약 주어진 값이 배열이라면, 각각의 숫자로 분리되어 비교됩니다. | 아니오 |
min() | 숫자 | 1번 수, [2번 수...] | CastException InsufficientArgumentsException | 주어진 수의 목록에서 가장 작은 숫자를 반환합니다. 만약 주어진 값이 배열이라면, 각각의 숫자로 분리되어 비교됩니다. | 아니오 |
mod() | 정수 | x, n | CastException RangeException | x 를 n 으로 나눈 나머지를 반환합니다. n 이 0이라면 RangeException 이 반환됩니다. 연산자 구문 또한 지원합니다: @x % @n | 아니오 |
multiply() | 다양함 | 값1, [값2...] | CastException | 값을 곱합니다. 실수이든 정수이든 상관 없습니다. 연산자 구문 또한 지원합니다: 2 * 2 | 아니오 |
neg() | 숫자 | 숫자 | CastException | 숫자에 -1을 곱합니다. | 아니오 |
postdec() | i변수 | 변수, [x] | CastException | 변수에서 x 를 뺀 다음 새 값을 저장합니다. 다른 언어에서 var-- 와 같습니다. 연산자 구문 또한 지원합니다: @변수-- | 아니오 |
postinc() | i변수 | 변수, [x] | CastException | 변수에서 x 를 더한 다음 새 값을 저장합니다. 다른 언어에서 var++ 와 같습니다. 연산자 구문 또한 지원합니다: @변수++ | 아니오 |
pow() | 실수 | x, n | CastException | x 의 n 승을 반환합니다. 연산자 구문 또한 지원합니다: @x ** @n | 아니오 |
rand() | 다양함 | [] 최소/최대, [최대] | RangeException CastException | 0에서 최대값까지의 무작위 숫자를 반환합니다. 만약 인수가 하나밖에 주어지지 않았다면, 이는 최댓값이 되며, 두개가 주어졌다면 첫번째 인수가 최솟값, 두번째 인수가 최댓값이 됩니다. 만약 아무 인수도 주어지지 않았다면, 0부터 1 사이의 무작위 실수를 반환합니다. | 아니오 |
round() | 실수 | 숫자, [엄격 정도] | CastException RangeException | floor 와 ceil 과 달리, 숫자와 가장 가까운 수를 반환합니다. 엄격 정도의 기본값은 0이며, 1 이상일 경우 그 이상의 소숫점 이후 숫자까지도 허용합니다. 예를 들어, round(2.22) 는 2를 반환하고, round(2.22, 2) 는 2.23을 반환합니다.. 만약 엄격 정도가 0 미만일 경우, RangeExcpetion 이 반환됩니다. | 아니오 |
round15() | 실수 | 값 | CastException | 15째 소숫점 아래 수까지 수를 어림합니다. 이는 근사값을 계산할 때 유용합니다. 예를 들어, sin(math_const('PI')) 는 1.2246467991473532E-16 이지만, 사실 파이의 사인값은 0입니다. 이는 컴퓨터의 파이 연산값이 정확하지 않을 수 없기 때문에 일어나는 일이며, round15 로 이를 해결할 수 있습니다. 예를 들어, round15(sin(math_const('PI'))) 는 0입니다. 이 펑션은 sin() 과 같은 기본 메소드에는 적용되지 않으며, 이 펑션을 사용해서 실제로 사용자에게 값을 보여줄 때에 이 펑션을 사용하는 것이 좋습니다. | 아니오 |
sin() | 실수 | 숫자 | CastException | 주어진 숫자의 사인을 반환합니다. | 아니오 |
sinh() | 실수 | 숫자 | CastException | 주어진 숫자의 쌍곡사인을 반환합니다. | 아니오 |
sqrt() | 숫자 | 숫자 | RangeException CastException | 주어진 숫자의 루트 값을 반환합니다. 이는 수학적으로 pow(숫자, .5) 와 동일합니다. 허수는 지원되지 않습니다. 즉 숫자는 무조건 양수여야 합니다. | 아니오 |
subtract() | 다양함 | 값1, [값2...] | CastException | 왼쪽에서 오른쪽으로 숫자를 뺍니다. 연산자 구문 또한 지원합니다: @a - @b | 아니오 |
tan() | 실수 | 숫자 | CastException | 주어진 수의 탄젠트를 반환합니다. | 아니오 |
tanh() | 실수 | 숫자 | CastException | 주어진 수의 쌍곡탄젠트를 반환합니다. | 아니오 |
to_degrees() | 실수 | 숫자 | CastException | 주어진 숫자를 각도로 변환합니다.(라디안에서 각도로) | 아니오 |
to_radians() | 실수 | 숫자 | CastException | 주어진 숫자를 라디안으로 변환합니다.(각도에서 라디안으로) | 아니오 |
메타
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
build_date() | 정수 | 현재 스크립트의 컴파일된 시간을 유닉스 타임스탬프 형태로 반환합니다. | 예 | ||
call_alias() | boolean | 명령어 | 커맨드헬퍼 단축 명령어를 다른 커맨드헬퍼 스크립트에도 실행할 수 있게 해 줍니다. 일반적인 "/jail = /jail" 와 같은 단축 명령어에는 작동하지 않고, 실제로 작동하는 명령어를 우선적으로 불러옵니다. 하지만 이 펑션을 이용함으로써 커맨드헬퍼에서만 명령어가 반복되도록 할 수 있습니다. | 아니오 | |
capture_runas() | 문자열 | 플레이어, 명령어 | PlayerOfflineException FormatException PluginInternalException | runas 펑션과 동일하게 작동하지만, 명령어가 실행되는 동안 플레이어에게 메시지가 전달되지 않고 문자열로 반환됩니다. 주의할 점은 간단한 플러그인의 경우에만 작동한다는 것이고, 이외 많은 명령어에서 작동하지 않을 수 있습니다. 이는 커맨드헬퍼의 버그가 아닌 다른 플러그인의 명령어 결과를 가져오는 데에서 생기는 기본적인 문제입니다. 또한 어떠한 문제가 생길 경우 PluginInternalException 이 발생합니다. | 예 |
engine_build_date() | 정수 | 컴파일 엔진의 시간을 유닉스 타임스탬프로 반환합니다. 만약 어떠한 이유로 계산할 수 없는 경우, null 을 반환합니다. | 예 | ||
get_cmd() | 문자열 | 이 스크립트를 실행시킨 명령어를 문자열로 반환합니다. 이벤트와 같은 곳에서 실행되었을 경우 null 을 반환할 수 있습니다. | 아니오 | ||
get_command_block() | 위치 배열 | 명령어가 커맨드 블록이나 마인카트에 의해 실행되었을 경우, 블록이나 마인카트의 위치를 반환합니다. 위치 배열에서 yaw 와 pitch 키는 커맨드 블록 마인카트에서만 존재하고, 플레이어나 콘솔이 명령어를 실행했을 경우 null 을 반환합니다. | 아니오 | ||
get_locales() | 배열 | 이 시스템에 존재하는 언어들을 반환합니다. | 아니오 | ||
get_script_environment() | 리소스 | 엔진의 환경 객체의 복사본을 반환합니다. 메소드 스크립트에 콜백하려는 임베디드 스크립팅에서만 사용할 수 있습니다. 객체는 CResource 로 반환됩니다. | 예 | ||
is_alias() | boolean | 명령어 | IOException | 주어진 명령어가 커맨드헬퍼 단축 명령어인지 확인합니다.(call_alias 로 호출 가능한지 확인합니다.) | 예 |
noop() | 반환 값이 비어있음 | [...] | 아무 일도 하지 않습니다. 모든 인수들은 완전히 무시됩니다. | 아니오 | |
psetop() | 문자열 | [플레이어], 상태 | PlayerOfflineException | 플레이어의 관리자 권한을 설정합니다. 플레이어 이름이 주어지지 않았을 경우 이 스크립트를 실행하는 사람의 권한을 변경합니다. | 예 |
run() | 반환 값이 비어있음 | 값1 | FormatException PluginInternalException | 현재 플레이어로 명령어를 실행합니다. 반복문 안에서 명령어를 실행하는 등에 유용합니다. 참고로 이 펑션은 채팅에서 사용하는 것처럼 슬래쉬가 앞에 붙어있어야만 합니다. | 아니오 |
run_cmd() | 반환 값이 비어있음 | 명령어 | FormatException | 주어진 명령어가 커맨드헬퍼 단축 명령어이든 일반 명령어이든 상관없이 실행합니다. 즉, if(is_alias(@cmd)) { call_alias(@cmd) } else { run(@cmd) } 와 동일합니다. 이 펑션을 사용할때는 call_alias() 와 비슷하게 무한 루프를 조심하여야 합니다. 모든 펑션은 / 으로 시작해야 하며 아닐 경우 FormatException 을 발생시킵니다. | 아니오 |
runas() | 반환 값이 비어있음 | 플레이어, 명령어 | FormatException PlayerOfflineException | 명령어를 주어진 플레이어를 통해 실행합니다. 특별한 플레이어 '~console' 은 명령어를 콘솔으로 실행시킬 수 있도록 합니다. '~op' 플레이어는 사용을 비권장하고, 대신 sudo() 를 사용하시기 바랍니다. 명령어는 오프라인 플레이어를 통해 실행시킬 수 없으며, 만약 첫번째 인수가 플레이어 이름의 배열이라면, 배열 속 각 플레이어에게 한번씩 명령어를 실행시킵니다. | 예 |
scriptas() | 반환 값이 비어있음 | 플레이어, [라벨], 스크립트 | PlayerOfflineException | 주어진 스크립트를 주어진 플레이어에게 실행시킵니다. 예를 들어 player() 를 실행시키는 스크립트가 있고 이를 이 펑션에서 실행시킨다면, 이 펑션을 실행시킨 플레이어가 아닌 주어진 플레이어 이름이 반환될 것입니다. 라벨을 설정함으로써 플레이어의 스크립트 실행 권한을 설정할 수 있습니다. | 예 |
sudo() | 반환 값이 비어있음 | 명령어 | FormatException | 주어진 명령어를 관리자 권한으로 실행합니다. runas(~op, '/command') (비권장) 와 동일하게 작동합니다. | 예 |
마인크래프트
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
convert_legacy_item() | 배열 | 아이템 배열 | CastException FormatException RangeException NotFoundException | 1.13 이하 버전의 아이템 배열을 새 아이템 배열로 변환합니다. 거의 모든 아이템 배열이 아이템 배열을 요구하는 펑션에서 정상적으로 변환될 것이지만, 만약 배열이 'type' 키가 없다면 몇몇 아이템 종류는 이름 충돌으로 인해 정확히 변환되지 않을 수 있습니다. 이 펑션은 더 편리하고 확실한 변환을 위해 만들어졌습니다. 새로운 형식의 아이템 배열을 이 펑션에 넣는 것은 지원되지 않으며, 미래의 마인크래프트 버전에서는 변환이 지원되지 않을 수 있습니다. | 아니오 |
data_name() | 문자열 | 값 | CastException FormatException | 과거의 아이템 아이디, 이름, 데이터, 배열을 최신 물질 형식으로 변환합니다. 올바르지 않은 값이 입력될 경우, null 이 반환됩니다. 1 이나 '1:0' 을 입력할 경우, 'STONE' 을 반환하고, {name: STONE, data: 1} 배열을 입력할 경우, 'GRANITE' 을 반환합니다. | 아니오 |
data_values() | 정수 | 값1 | 주어진 이름에 대한 데이터 값을 반환합니다. 예를 들어, 'stone' 을 입력하면 1을 반환합니다. 데이터 값을 찾을 수 없는 경우, null 이 반환됩니다. | 아니오 | |
get_banned_players() | 배열 | 서버에서 밴 된 플레이어의 이름의 배열을 반환합니다. | 아니오 | ||
get_ip_bans() | 배열 | banned-ips.txt 에 있는 내용들을 배열으로 반환합니다. | 예 | ||
get_server_info() | 다양함 | [값] | CastException RangeException NotFoundException | 서버에 대한 다양한 값을 반환합니다. 주어진 값이 있고 세부 내용에 있는 숫자와 일치하는 경우 그 정보만 제공합니다. | 아니오 |
get_spawner_type() | 문자열 | 위치 배열 | FormatException | 주어진 몹 스포너의 스포너 종류를 반환합니다. | 예 |
get_whitelisted_players() | 배열 | 화이트리스트에 등록된 플레이어의 배열을 반환합니다. | 아니오 | ||
make_effect() | 반환 값이 비어있음 | 위치 배열, 효과, [범위] | CastException FormatException | 주어진 효과(시각, 음향 효과)를 주어진 위치에서 재생합니다. 범위 내에 있는(기본값은 64) 모든 플레이어가 보거나 들을 수 있습니다. 효과는 다음 중 하나입니다: DRAGON_BREATH, END_GATEWAY_SPAWN, ENDER_SIGNAL, MOBSPAWNER_FLAMES, POTION_BREAK, SMOKE, VILLAGER_PLANT_GROW, ANVIL_BREAK, ANVIL_LAND, ANVIL_USE, BAT_TAKEOFF, BLAZE_SHOOT, BOW_FIRE, BREWING_STAND_BREW, CHORUS_FLOWER_DEATH, CHORUS_FLOWER_GROW, CLICK1, CLICK2, DOOR_CLOSE, DOOR_TOGGLE, ENDERDRAGON_GROWL, ENDERDRAGON_SHOOT, ENDEREYE_LAUNCH, EXTINGUISH, FENCE_GATE_CLOSE, FENCE_GATE_TOGGLE, FIREWORK_SHOOT, GHAST_SHOOT, GHAST_SHRIEK, IRON_DOOR_CLOSE, IRON_DOOR_TOGGLE, IRON_TRAPDOOR_CLOSE, IRON_TRAPDOOR_TOGGLE, PORTAL_TRAVEL, RECORD_PLAY, STEP_SOUND, TRAPDOOR_CLOSE, TRAPDOOR_TOGGLE, ZOMBIE_CHEW_WOODEN_DOOR, ZOMBIE_CHEW_IRON_DOOR, ZOMBIE_DESTROY_DOOR, WITHER_BREAK_BLOCK, WITHER_SHOOT, ZOMBIE_CONVERTED_VILLAGER, ZOMBIE_INFECT. 효과:데이터 의 형태로 추가 데이터를 사용할 수 있습니다. 예를 들어 RECORD_PLAY 는 데이터로 디스크 id 를 사용하며, STEP_SOUND 는 블록의 id 와 SMOKE 는 방향(4가 위쪽)을 데이터로 사용합닌다. | 예 |
material_info() | 다양함 | 물질, [특성] | CastException FormatException IllegalArgumentException | 해당 물질에 대한 정보 배열을 가져옵니다. 특성이 주어졌을 경우, 해당 특성에 대한 정보만 가져옵니다. 사용 가능한 특성: hasGravity, isBlock, isBurnable, isEdible, isFlammable, isOccluding, isRecord, isSolid, isTransparent, isInteractable, maxDurability, hardness, blastResistance, maxStacksize. | 아니오 |
max_stack_size() | 정수 | 아이템 배열 | CastException FormatException RangeException NotFoundException | 주어진 아이템 배열이 몇개까지 겹칠 수 있는지 반환합니다. 이 펑션은 pinv() 등에서 반환하는 아이템 배열을 사용할 수 있습니다. | 아니오 |
monitor_redstone() | 반환 값이 비어있음 | 위치, [감지 여부] | CastException FormatException | 주어진 위치에서 레드스톤 전류 변경을 감지하도록 합니다. 만약 감지 여부가 참일 경우, redstone_changed 이벤트가 발동됩니다. 기본적으로, 감지 여부 값은 참이고, 거짓으로 설정할 경우 해당 위치를 감지 위치에서 제거합니다. | 예 |
send_resourcepack() | 반환 값이 비어있음 | 플레이어, url | PlayerOfflineException | 주어진 플레이어의 클라이언트에 리소스팩 URL 을 보냅니다. 만약 플레이어가 전에 리소스팩 변경을 묻는 창을 보지 못했다면, 리소스팩을 다운받겠냐는 창이 띄워집니다. 하지만 클라이언트가 거부할 경우, 계속 이 펑션을 사용해도 그 플레이어에겐 창이 띄워지지 않습니다. | 예 |
set_ip_banned() | 반환 값이 비어있음 | 주소, 밴 여부 | 밴 여부가 참일 경우, banned-ips.txt 에 추가됩니다. 아닐 경우, 주소는 제거됩니다. | 예 | |
set_spawner_type() | 반환 값이 비어있음 | 위치 배열, 종류 | FormatException | 주어진 위치에 있는 몹 스포너의 종류를 조정합니다. 만약 위치에 몹 스포너가 없거나, 종류가 올바르지 않은 경우, FormatException 이 발생합니다. 종류는 다음 중 하나입니다: AREA_EFFECT_CLOUD, ARMOR_STAND, ARROW, BAT, BLAZE, BOAT, CAVE_SPIDER, CHICKEN, COD, COMPLEX_PART, COW, CREEPER, DOLPHIN, DRAGON_FIREBALL, DROPPED_ITEM, DROWNED, DONKEY, EGG, ELDER_GUARDIAN, ENDERMAN, ENDERMITE, ENDER_CRYSTAL, ENDER_DRAGON, ENDER_EYE, ENDER_PEARL, EVOKER, EVOKER_FANGS, EXPERIENCE_ORB, FALLING_BLOCK, FIREBALL, FIREWORK, FISHING_HOOK, GHAST, GIANT, GUARDIAN, HORSE, HUSK, ILLUSIONER, IRON_GOLEM, ITEM_FRAME, LLAMA, LLAMA_SPIT, LEASH_HITCH, LIGHTNING, LINGERING_POTION, MAGMA_CUBE, MINECART, MINECART_CHEST, MINECART_COMMAND, MINECART_FURNACE, MINECART_HOPPER, MINECART_MOB_SPAWNER, MINECART_TNT, MULE, MUSHROOM_COW, OCELOT, PAINTING, PARROT, PHANTOM, PIG, PIG_ZOMBIE, PLAYER, POLAR_BEAR, PRIMED_TNT, PUFFERFISH, RABBIT, SALMON, SHEEP, SILVERFISH, SKELETON, SHULKER, SHULKER_BULLET, SKELETON_HORSE, SLIME, SMALL_FIREBALL, SNOWBALL, SNOWMAN, SQUID, SPECTRAL_ARROW, SPIDER, SPLASH_POTION, STRAY, THROWN_EXP_BOTTLE, TIPPED_ARROW, TRIDENT, TROPICAL_FISH, TURTLE, VEX, VILLAGER, VINDICATOR, WEATHER, WITCH, WITHER, WITHER_SKELETON, WITHER_SKULL, WOLF, ZOMBIE, ZOMBIE_HORSE, ZOMBIE_VILLAGER, UNKNOWN | 예 |
shutdown_server() | 반환 값이 비어있음 | 마인크래프트 서버를 종료합니다. | 예 | ||
몹 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
can_pickup_items() | boolean | 엔디티 ID | LengthException BadEntityException | 살아있는 엔디티가 아이템을 주울 수 있는지 여부를 반환합니다. | 예 |
damage_entity() | 반환 값이 비어있음 | 엔디티 ID, 양, [근원 엔디티 ID] | CastException LengthException BadEntityTypeException BadEntityException | 주어진 엔디티에게 데미지를 줍니다, 만약 근원 엔디티가 지정되었을 경우, 해당 엔디티를 데미지를 준 원인으로 설정합니다. | 예 |
entity_air() | 정수 | 엔디티 ID | LengthException BadEntityException | 엔디티에게 남은 공기의 양을 반환합니다. | 예 |
entity_can_see() | boolean | 엔디티 ID, 다른 엔디티 ID | LengthException BadEntityException | 주어진 엔디티가 주어진 다른 엔디티를 볼 수 있는지 여부를 반환합니다. 플레이어로 예를 들자면 화면 안에 다른 엔디티가 보이고 블록에 가려지지 않았을 때를 말하는 것입니다. 이 펑션은 적대적인 몹이 가장 가까운 플레이어를 찾는 알고리즘과 동일합니다. | 예 |
entity_line_of_sight() | 배열 | 엔디티 ID, [투명, [최대 거리]] | CastException LengthException BadEntityException | 엔디티의 시점에 있는 모든 블록들을 포함하는 배열을 반환합니다. 투명 값은 블록 ID 의 배열이며, 기본값은 공기 하나입니다. 최대 거리는 탐색할 거리를 뜻하고, 대부분 100미터 바깥은 탐지하지 못합니다. | 예 |
entity_max_air() | 정수 | 엔디티 ID | LengthException BadEntityException | 엔디티가 가질 수 있는 최대의 공기를 반환합니다. | 예 |
get_entity_ai() | boolean | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티가 AI 를 가지고 있는지 확인합니다. | 예 |
get_entity_breedable() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 번식할 수 있는지 여부를 반환합니다. | 예 |
get_entity_gliding() | boolean | 엔디티 ID | LengthException BadEntityException | 엔디티가 글라이딩 중인지 여부를 확인합니다. | 예 |
get_entity_health() | 실수 | 엔디티 ID | LengthException BadEntityException | 엔디티의 체력을 최대 체력의 퍼센트 형태로 반환합니다. 주어진 엔디티가 존재하지 않거나 살아있지 않으면, FormatException 이 발생합니다. | 예 |
get_entity_persistence() | boolean | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티가 디스폰될지 여부를 반환합니다. 참일 경우 디스폰되지 않는다는 뜨ㅡㅅ입니다. | 예 |
get_equipment_droprates() | 배열 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티가 각 장착 슬롯의 아이템을 떨어트릴 확률을 키가 있는 배열의 형태로 반환합니다. 확률이 0이라면 해당 장비는 절대 떨어지지 않을 것이고, 1일 경우 무조건 떨어트릴 것입니다. | 예 |
get_leashholder() | 정수 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티의 목줄을 잡고 있는 엔디티의 ID 를 반환합니다. 목줄을 잡고 있지 않을 경우 null 을 반환합니다. | 예 |
get_max_health() | 실수 | 엔디티 ID | LengthException BadEntityException | 주어진 엔디티의 최대 체력을 반환합니다. | 예 |
get_mob_age() | 정수 | 엔디티 ID | UnageableMobException LengthException BadEntityException | 주어진 엔디티의 나이를 반환합니다. 0은 성인이 되는 지점이며, 나이를 먹지 않는 몹의 경우 UnageableMobException 이 발생합니다. | 예 |
get_mob_effects() | 배열 | 엔디티 ID | LengthException BadEntityException | 주어진 몹에 적용된 포션 효과의 배열을 반환합니다. | 예 |
get_mob_equipment() | 배열 | 엔디티 ID | LengthException BadEntityException | 주어진 몹이 입고 있는 장비들의 배열을 반환합니다. 이는 거의 대부분의 "멍청한" 엔디티엔 사용할 수 없으며, 몹에게만 사용할 수 있습니다.(AI 가 있는 엔디티) | 예 |
get_mob_owner() | 문자열 | 엔디티 ID | UntameableMobException LengthException BadEntityException IllegalArgumentException | 주어진 몹의 주인 이름을 반환합니다. 몹의 주인이 없을 경우 null 을 반환합니다. 만약 길들일 수 없는 몹이라면 UntameableMobException 이 발생합니다. | 예 |
get_mob_target() | 엔디티 ID | 엔디티 ID | LengthException BadEntityException | 몹의 목표가 있다면 목표의 엔디티 ID 를 반환합니다. 목표가 없다면, null 이 반환됩니다. 모든 몹이 반환될 수 있는 목표를 가진 것은 아닙니다. | 예 |
set_can_pickup_items() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 주어진 살아있는 엔디티가 아이템을 주울 수 있는지 여부를 설정합니다. | 예 |
set_entity_ai() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티의 AI 를 끄거나 켭니다. | 예 |
set_entity_air() | 반환 값이 비어있음 | 엔디티 ID, 숫자 | FormatException LengthException BadEntityException | 엔디티에게 남은 공기의 양을 설정합니다. | 예 |
set_entity_breedable() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티가 번식 가능한지 여부를 설정합니다. | 예 |
set_entity_gliding() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 가능하다면, 엔디티를 글라이딩하게 만듭니다. | 예 |
set_entity_health() | 반환 값이 비어있음 | 엔디티 ID, 체력 퍼센트 | CastException BadEntityException RangeException LengthException | 주어진 엔디티의 체력을 퍼센트의 형식으로 설정합니다. 0으로 설정하면 몹은 죽고, 100은 최대 체력이 됩니다. 엔디티가 존재하지 않거나 살아있지 않으면 예외가 발생합니다. | 예 |
set_entity_max_air() | 반환 값이 비어있음 | 엔디티 ID, 숫자 | FormatException LengthException BadEntityException | 엔디티가 가질 수 있는 최대 공기의 양을 설정합니다. | 예 |
set_entity_persistence() | 반환 값이 비어있음 | 엔디티 ID, boolean | FormatException LengthException BadEntityException | 엔디티가 디스폰될지 여부를 설정합니다. 참이라면 디스폰되지 않습니다. | 예 |
set_equipment_droprates() | 반환 값이 비어있음 | 엔디티 ID, 배열 | FormatException LengthException BadEntityException | 엔디티의 각 부위별로 아이템을 떨어트릴 확률을 설정합니다. 플레이어에겐 적용되지 않으며, null 이 주어질 경우 자동으로 0이 되어 떨어트리지 않게 됩니다. 1로 주어질 경우 무조건 아이템을 떨어트립니다. | 예 |
set_leashholder() | 반환 값이 비어있음 | 엔디티 ID, 엔디티 ID | FormatException LengthException BadEntityException | 첫번째 엔디티가 목줄에 잡힌 엔디티, 두번째 엔디티가 목줄을 잡는 엔디티입니다. 첫번째 엔디티는 살아있어야 하며, 두번째 엔디티는 살아있지 않아도 됩니다. 박쥐, 엔더 드래곤, 플레이어와 위더는 마인크래프트의 제한에 의해 목줄에 잡힐 수 없습니다. | 예 |
set_max_health() | 반환 값이 비어있음 | 엔디티 ID, 실수(double) | FormatException LengthException BadEntityException | 주어진 엔디티의 최대 체력을 설정합니다. 이 값은 영구적이여서 서버 재시작 후에도 바뀌지 않습니다. | 예 |
set_mob_age() | 반환 값이 비어있음 | 엔디티 ID, 정수[, 고정 여부] | UnageableMobException CastException BadEntityException LengthException | 엔디티의 나이를 주어진 정수로 설정합니다. 고정 여부가 참이라면 나이가 바뀌지 않습니다. 기본값은 고정되어있지 않으며, 몹이 나이를 먹지 않는다면 UnageableMobException 이 발생합니다. | 예 |
set_mob_effect() | boolean | 엔디티 ID, 포션 ID, 강도, [초], [주변 감지 여부], [입자 여부], [아이콘] | LengthException FormatException BadEntityException RangeException | 포션은 1과 23 사이이며, 초는 기본적으로 30초입니다. 포션 ID 가 범위를 벗어났을 경우, RangeException 이 발생합니다. 왜냐하면 범위를 넘어선 포션 효과의 경우 클라이언트의 충돌을 발생시키기 때문입니다. http://www.minecraftwiki.net/wiki/Potion_effects 페이지를 통해 사용할 수 있는 포션 효과를 확인할 수 있으며, 0초로 설정할 경우 포션이 사라집니다. 만약 초가 0보다 작거나 107374182보다 크다면 RangeException 이 발생힙니다. 강도는 포션의 강도를 설정하고, 주변 감지 여부는 참일 경우 시각 효과가 주변에 덜 보이게 되며, 입자 여부는 포션 효과로 인한 입자의 표시 여부를 설정합니다. 아이콘은 참일 경우 플레이어에게 포션 아이콘을 보여주고, 거짓일 경우 보여주지 않게 됩니다. | 예 |
set_mob_equipment() | 반환 값이 비어있음 | 엔디티 ID, 배열 | FormatException LengthException BadEntityException | 장착 슬롯을 키로 하고 아이템 배열을 값으로 하는 배열을 요구합니다. set_pinv 에서 사용하는 것과 동일합니다. 대부분의 "멍청한" 엔디티에선 사용이 불가능하고, AI 가 있는 엔디티에서만 사용 가능합니다. 장착 슬롯들은 다음과 같습니다: WEPON, OFF_HAND, BOOTS, LEGGINGS, CHESTPLATE, HELMET. | 예 |
set_mob_owner() | 반환 값이 비어있음 | 엔디티 ID, 플레이어 | UntameableMobException LengthException BadEntityException IllegalArgumentException | 주어진 몹의 주인을 주어진 플레이어로 설정합니다. 오프라인인 플레이어도 지원하지만 존재하지 않는 플레이어의 이름은 지원하지 않습니다. 플레이어 이름은 정확해야 하고, null 으로 설정할 경우 몹의 길들여진 상태가 풀립니다. | 예 |
set_mob_target() | 반환 값이 비어있음 | 엔디티 ID, 엔디티 ID | BadEntityException LengthException | 첫번째 엔티티의 ID 가 목표를 가지는 엔티티이고, 두번째 엔티티가 목표입니다. null 으로 만들어 목표를 없앨 수 있습니다. 모든 몹이 목표를 가질 수 있는 것은 아닙니다. | 예 |
spawn_mob() | 배열 | 몹 종류, [수량], [위치] | CastException RangeException FormatException PlayerOfflineException InvalidWorldException NotFoundException | 주어진 몹 종류에 맞는 몹을 주어진 수량만큼 주어진 위치에 소환합니다. 기본 수량은 1이고, 기본 위치는 실행한 플레이어의 위치입니다. 스폰된 엔디티의 UUID 배열이 반환됩니다. | 예 |
tame_mob() | 반환 값이 비어있음 | [플레이어], 엔디티 ID | UntameableMobException LengthException BadEntityException | 주어진 몹을 주어진 플레이어에게 길들여지도록 설정합니다. 오프라인인 플레이어도 지원하지만 존재하지 않는 플레이어의 이름은 지원하지 않습니다. 플레이어 이름은 정확해야 하고, null 으로 설정할 경우 몹의 길들여진 상태가 풀립니다. | 예 |
OAuth
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
clear_oauth_tokens() | 반환 값이 비어있음 | [클라이언트 ID] | 주어진 클라이언트 ID 에 대한 OAuth 토큰을 전부 제거합니다. 주어진 ID 가 없을 경우, 모든 토큰이 제고됩니다. 이 펑션은 다양한 OAuth 토큰이 취소되었을 때 유용합니다. | 예 | |
x_get_oauth_token() | 반환 값이 비어있음 | 예 | |||
성능
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
enable_performance_logging() | 반환 값이 비어있음 | boolean | SecurityException | 성능 로깅을 활성화합니다. 설정 파일의 allow-profiling 옵션이 참이여야 하고, .play-dirty 모드가 켜져있어야 합니다. allow-profiling 이 거짓일 경우, securityExcetpion 이 발생합니다. 디버깅 필터는 성능 로거에 사용되며, 이벤트를 통해 필터링하고 싶다면 성능 로깅에 대한 문서를 참고하시기 바랍니다. | 예 |
권한
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
has_permission() | boolean | [플레이어], 권한 이름 | InsufficientPermissionException PlayerOfflineException | 내부 권한 시스템을 이용하여 플레이어가 주어진 권한을 가지고 있는지 확인합니다. 이는 단순히 권한 시스템에 전해주기만 하는 것으로, 이 펑션은 제한되어 있지 않습니다. 플레이어는 자신의 권한을 확인할 수 있으며, 만약 다른 사람의 권한을 확인하려 할 경우 제한됩니다. 또한 콘솔이나 커맨드 블록에서 실행될 경우 특별히 권한이 설정되지 않은 이상 항상 참을 반환할 것입니다. | 아니오 |
지속 저장소
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
clear_value() | 반환 값이 비어있음 | [네임스페이스, ...,] 키 | IOException FormatException | 저장소에서 모든 값을 제거합니다. has_value(키) 를 이 펑션 사용 다음에 사용한다면 거짓을 반환할 것입니다. | 예 |
get_value() | 다양함 | [네임스페이스, ...,] 키 | IOException FormatException | store_value 펑션으로 저장된 데이터를 불러옵니다. 해당 키에 대한 값이 존재하지 않는다면 null 이 반환됩니다. 또한 반한될 값이 구조적으로 문제가 있다면 null 이 반환됩니다. | 예 |
get_values() | 배열 | 이름[, 공간, ...] | IOException FormatException | 주어진 네임스페이스에 있는 모든 값들을 키가 있는 배열으로 반환합니다.(키: 값, 키: 값) 정확히 네임스페이스가 동일해야만 반환될 값에 포함되며, 키가 'user.data.username.hi' 가 데이터베이스에 있고 get_values('users,data,user') 를 한다면 아무것도 반환되지 않을것입니다. 또한 키의 마지막 부분도 역시 네임스페이스로 취급되어 'users.data.username.hi' 라고 적을 시엔 하나의 값만을 불러올 것입니다.(이 경우엔) | 예 |
has_value() | boolean | [네임스페이스, ...,] 키 | IOException FormatException | 주어진 값이 영구 저장소에 존재하는지 확인합니다. | 예 |
store_value() | 반환 값이 비어있음 | [네임스페이스, ...,] 키, 값 | FormatException IOException FormatException | 주어진 네임스페이스 아래의 키에 주어진 값을 저장합니다. 키는 무조건 알파벳, 숫자, 밑줄 기호만이 사용될 수 있는 문자열이여야만 합니다. | 예 |
플레이어 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
all_players() | 배열 | [월드] | InvalidWorldException | 서버에 모든 온라인 플레이어들의 배열을 반환합니다. 월드가 주어질 경우 해당 월드의 플레이어들만 반환합니다. | 예 |
clear_peffects() | 반환 값이 비어있음 | [플레이어] | PlayerOfflineException LengthException | 플레이어에 존재하는 모든 포션 효과를 제거합니다. | 예 |
display_name() | 문자열 | [플레이어] | LengthException PlayerOfflineException | 플레이어의 보이는 이름(display name) 을 반환합니다. | 아니오 |
get_compass_target() | 배열 | [플레이어] | PlayerOfflineException | 주어진 플레이어의 나침반 대상을 반환합니다. | 예 |
get_list_name() | 문자열 | [플레이어] | PlayerOfflineException | 주어진 플레이어의 목록 이름을 반환합니다. 플레이어가 주어지지 않았을 경우 실행한 플레이어가 됩니다. | 예 |
get_offline_players() | 배열 | 이 서버에 접속했었던 모든 사람들의 배열을 반환합니다. | 예 | ||
get_peffect() | 배열 | [플레이어] | PlayerOfflineException | 주어진 플레이어에게 적용된 모든 포션 효과의 배열을 반환합니다. 이 배열은 플레이어 포션 효과 배열로 이루어져 있으며, 이 배열은 "id", "strength", "seconds" 가 기본적으로 키로 존재하며, "ambient", "particles" 가 boolean 형태로 존재합니다. | 예 |
get_pflyspeed() | 실수 | [플레이어] | PlayerOfflineException FormatException | 플레이어의 속도를 구합니다. 속도는 -1과 1 사이입니다. | 예 |
get_pwalkspeed() | 실수 | [플레이어] | PlayerOfflineException FormatException | 플레이어의 속도를 구합니다. 속도는 -1과 1 사이입니다. | 예 |
give_pexp() | 반환 값이 비어있음 | [플레이어], 경험치 | PlayerOfflineException CastException | 주어진 플레이어에게 경험치를 줍니다. | 예 |
pbanned() | boolean | 플레이어 | NotFoundException | 주어진 플레이어가 밴되었는지 확인합니다. 이 펑션은 오프라인인 플레이어도 작동하지만 이름이 완전히 정확해야 합니다. 현재로써는 이 펑션은 바닐라 밴 시스템과 연동되며, 만약 써드 파티 밴 시스템을 사용중이라면 해당 플러그인의 명령어를 실행해야 할 것입니다. 참고: 이 펑션은 플레이어 이름 자리의 UUID 를 넣는 것도 허용됩니다. 하지만 모장의 서버 API 제한으로 인해 어떠한 서버는 제대로 된 플레이어의 정보를 가져오지 못할 수 있습니다. 이러한 문제가 있는 서버 소프트웨어는 버킷과 스피곳이 있으며, 바닐라 밴 시스템의 한계로 인해 추가로 다른 밴 시스템을 사용하는 것이 권장됩니다. | 예 |
pbed_location() | 배열 | [플레이어 이름] | InsufficientArgumentsException NotFoundException | 주어진 플레이어의 침대의 위치 배열을 반환합니다. 이 값은 플레이어가 자거나 set_pbed_location 펑션을 통해 설정할 수 있습니다. | 예 |
pcooldown() | 정수 | [플레이어], 물질 | LengthException FormatException PlayerOfflineException | 주어진 물질을 다시 사용할 수 있는 쿨타임을 구합니다. 물질 이름은 아이템 배열에서 찾을 수 있으며, 값은 게임 틱을 표현하는 정수로 되어 있습니다. | 예 |
pcursor() | 배열 | [플레이어], [배열] | PlayerOfflineException RangeException FormatException CastException PluginInternalException | 플레이어가 크로스헤어로 가르키고 있는 블록의 좌표(x, y, z, 월드) 를 반환합니다. 주어진 플레이어가 없다면 현재 플레이어가 사용되며, 블록이 너무 멀 경우 RangeException 이 발생합니다. 배열 부분엔 투명으로 취급되는 블록의 id 배열이 사용되며, 기본값은 공기입니다. 빈 배열이 주어질 경우 공기까지도 투명으로 취급되지 않게 되어 플레이어의 머리 위치를 반환하게 됩니다. | 예 |
pexp() | 정수 | [플레이어] | CastException PlayerOfflineException | 플레이어의 이 레벨에서의 경험치를 구합니다. 0부터 99까지의 백분율로 반환됩니다. | 예 |
pfacing() | 다양함 | F yaw, pitch 플레이어, F 플레이어, yaw, pitch 플레이어 <없음> | PlayerOfflineException RangeException CastException NotFoundException | 플레이어가 보고 있는 방향을 설정합니다. | 예 |
pfirst_played() | 정수 | [플레이어] | 플레이어가 처음으로 서버에 들어온 시간을 유닉스 타임스탬프로 반환합니다. 플레이어가 한번도 접속하지 않았을 경우 0이 되며, 이 펑션은 PlayerOfflineException 을 반환하지 않기 때문에 이름이나 UUID 가 정확하여야 합니다. | 예 | |
pfood() | 정수 | [플레이어] | PlayerOfflineException | 현재 플레이어의 허기 레벨을 반환합니다. | 예 |
pget_time() | 정수 | [플레이어] | PlayerOfflineException | 플레이어 자신만의 시간을 반환합니다. 0부터 23999 까지의 정수입니다. | 예 |
pgroup() | 배열 | [플레이어 이름] | PlayerOfflineException | 플레이어 이름이 주어질 경우 해당 플레이어의 그륩 배열을 반환합니다. 주어지지 않을 경우 현재 플레이어를 대상으로 합니다. | 예 |
phas_flight() | boolean | [플레이어] | PlayerOfflineException | 플레이어가 날 수 있는지 여부를 반환합니다. | 예 |
phas_played() | boolean | 플레이어 | 플레이어가 이 서버에 존재했는지 여부를 반환합니다. PlayerOfflineException 을 발생시키지 않기 때문에, 이름 혹은 UUID 가 정확해야 합니다. | 예 | |
phas_storm() | boolean | [플레이어] | PlayerOfflineException | 플레이어의 날씨가 비가 오는지 여부를 확인합니다. 월드 날씨와 상관 없이 set_pstorm() 펑션으로 설정된 날씨만을 확인합니다. | 예 |
phealth() | 실수 | [플레이어] | LengthException PlayerOfflineException | 플레이어의 체력을 반환합니다. | 예 |
phunger() | 정수 | [플레이어] | PlayerOfflineException | 플레이어의 허기 레벨을 반환합니다. | 예 |
pinfo() | 다양함 | [플레이어], [값] | PlayerOfflineException RangeException CastException NotFoundException | 주어진 플레이어에 대한 다양한 정보를 반환합니다. 플레이어가 주어지지 않을 경우 현재 플레이어에 대한 정보를 반환합니다. | 예 |
pisop() | boolean | [플레이어] | PlayerOfflineException | 주어진 플레이어(주어지지 않았을 경우 현재 플레이어) 가 관리자 권한을 가지고 있는지 여부를 반환합니다. | 예 |
pkick() | 반환 값이 비어있음 | [플레이어], [메시지] | PlayerOfflineException | 주어진 플레이어를 서버에서 추방합니다. 메시지가 주어지지 않았을 경우 기본 메시지인 "You have been kicked" 가 표시되며, 플레이어가 주어지지 않았을 경우 현재 플레이어를 추방합니다. | 예 |
pkill() | 반환 값이 비어있음 | [플레이어 이름] | PlayerOfflineException | 주어진 플레이어를 죽입니다. 플레이어가 주어지지 않았을 경우 현재 플레이어를 죽입니다. | 예 |
plast_known_name() | 문자열 | uuid | LengthException | 플레이어의 서버에서 마지막 이름을 반환합니다. 플레이어가 서버에 없었다면 null 을 반환합니다. 이는 그들의 현재 플레이어 이름이라는 보장이 없습니다. 이 펑션은 오프라인 플레이어의 데이터 파일에서 직접 가져옵니다. | 예 |
plast_played() | 정수 | [플레이어] | 플레이어가 마지막으로 존재했던 시간을 유닉스 타임스탬프로 반환합니다. 0일 경우 한번도 오지 않았다는 뜻이 됩니다. PlayerOfflineException 을 발생시키지 않으므로 이름이나 UUID 가 정확하여야 합니다. | 예 | |
player() | 문자열 | [플레이어 이름] | PlayerOfflineException | 플레이어의 이름을 반환합니다. 만약 문자열이 주어졌을 경우, 해당 이름을 가지고 있는 플레이어를 찾으려고 합니다. 또한 문자열이 없을 경우엔 현재 플레이어가 반환됩니다. UUID도 사용할 수 있습니다. 만약 명령어가 콘솔에서 사용될 경우 문자열 '~console' 이 반환됩니다. 명령 블록의 경우에는 앞에 # 과 함께 명령 블록의 이름이 반환됩니다. 참고로 대부분의 펑션에서는 콘솔이나 블록 이름을 지원하지 않습니다.(PlayerOfflineException 이 발생합니다.) 하지만 이것을 이용하여 명령어가 어디서 실행되는지 알 수 있습니다. | 아니오 |
players_in_radius() | 배열 | [위치 배열], 거리 | CastException FormatException PlayerOfflineException NotFoundException | 주어진 위치에서 주어진 거리 안에 있는 모든 플레이어 이름을 반환합니다. | 예 |
plevel() | 정수 | [플레이어] | CastException PlayerOfflineException | 플레이어의 레벨을 반환합니다. | 예 |
ploc() | 배열 | [플레이어 이름] | PlayerOfflineException NotFoundException | 플레이어의 위치 배열을 반환합니다. 참고로 y 좌표는 플레이어가 서 있는 블록의 좌표와 같습니다. | 예 |
pmode() | 문자열 | [플레이어] | PlayerOfflineException NotFoundException | 플레이어의 게임 모드를 반환합니다. SURVIVAL, ADVENTURE, SPECTATOR 중 하나입니다. | 예 |
ponfire() | 정수 | [플레이어] | PlayerOfflineException | 플레이어가 불에 탈 시간을 게임 틱으로 반환합니다. 0일 때는 불에 타지 않는다는 뜻입니다. | 예 |
ponline() | boolean | 플레이어 | 플레이어가 온라인 상태인지 확인합니다. 이름 혹은 UUID 가 정확하지 않아도 PlayerOfflineException 이 발생하지 않습니다. | 예 | |
preset_time() | 반환 값이 비어있음 | [플레이어] | InvalidWorldException PlayerOfflineException | 플레이어의 시간을 월드의 시간과 맞춥니다. | 예 |
psaturation() | 실수 | [플레이어] | RangeException PlayerOfflineException | 플레이어의 포화도를 반환합니다. | 예 |
psend_block_change() | 반환 값이 비어있음 | [플레이어], 위치 배열, 블록 이름 | FormatException PlayerOfflineException | 주어진 플레이어에게 해당 위치에 임시적으로 블록을 변경시킵니다. 해당 플레이어에게만 블록이 바뀐 것으로 보이기 때문에 가짜 블록을 만들 수 있습니다. | 예 |
psend_sign_text() | 반환 값이 비어있음 | [플레이어], 위치 배열, 1, 2, 3, 4 [플레이어], 위치 배열, 줄 배열 | FormatException PlayerOfflineException | 표지판의 텍스트를 변경합니다. 일시적으로 주어진 플레이어에게만 적용됩니다. 이는 가짜 표지판 텍스트를 플레이어에게 보여줄 때 유용합니다. 줄 배열이 사용될 경우 4개의 원소가 있어야만 합니다. | 예 |
psneaking() | boolean | [플레이어] | LengthException PlayerOfflineException | 플레이어가 숙이고 있는지 여부를 반환합니다. | 예 |
pspectator_target() | 문자열 | [플레이어] | PlayerOfflineException IllegalArgumentException | 관전자가 보고 있는 엔디티를 반환합니다. 만약 플레이어가 엔디티를 관전하고 있지 않다면, null 이 반환됩니다. 플레이어가 관전자 모드가 안닐 경우, IllegalArgumentException 이 발생합니다. | 예 |
ptarget_space() | 배열 | [플레이어] | PlayerOfflineException RangeException | 플레이어가 현재 대상으로 하는 공간을 반환합니다. 이 공간은 플레이어가 블록을 설치하려 할 때 블록이 설치되는 공간과 동일합니다. | 예 |
ptexp() | 정수 | [플레이어] | CastException PlayerOfflineException | 플레이어의 총 경험치를 반환합니다. | 예 |
puuid() | 문자열 | [플레이어], [대쉬 없음 여부] | PlayerOfflineException NotFoundException | 주어진 플레이어의 UUID 를 반환합니다. 오프라인 플레이어도 찾아볼 수도 있지만, 실패할 수도 있습니다. 실패할 경우, PlayerOfflineException 이 발생합니다. | 아니오 |
pvehicle() | 문자열 | [플레이어] | PlayerOfflineException | 플레이어가 타고 있는 운송 수단의 ID 를 반환합니다. 플레이어가 운송 수단을 타고 있지 않다면 null 을 반환합니다. | 예 |
pvehicle_leave() | boolean | [플레이어] | PlayerOfflineException | 플레이어를 운송 수단에서 내리게 합니다. 만약 타고있지 않다면 거짓을 반환합니다. | 예 |
pvelocity() | 배열 | [플레이어] | PlayerOfflineException NotFoundException | 플레이어의 속도를 표현하는 키가 있는 배열을 반환합니다. 배열은 다음을 포함합니다: magnitude, x, y, z. 이 키들은 방향 벡터를 표현합니다. 중요한 키들은 x, y, z 이며, 강도(magnitude) 는 편리를 위해 제공됩니다.(sqrt(x ** 2 + y ** 2 + z ** 2) 와 같습니다.) | 예 |
pwhitelisted() | boolean | 플레이어 | 플레이어가 화이트리스트에 포함되어 있는지 확인합니다. 이는 오프라인 플레이어에게도 작동하기 때문에 이름이 정확해야 합니다. 알림: 이 펑션은 플레이어 이름 대신 UUID 도 사용 가능합니다, 하지만 모장 API 의 문제 때문에 어떤 서버 소프트웨어는 최근의 온라인이지 않은 플레이어의 제대로 된 UUID 를 구할 수 없습니다. 그렇기 때문에, UUID 를 통해 밴이나 화이트리스트를 하지 못할 수 있습니다. 이러한 문제가 확인된 서버 소프트웨어는 버킷과 스피곳입니다. 이러한 문제 때문에 바닐라 밴/화이트리스트 시스템 대신 써드 파티 시스템을 사용하시거나 자체 시스템을 만들어 쓰시는 것을 권장합니다. | 예 | |
pworld() | 문자열 | [플레이어 이름] | PlayerOfflineException | 주어진 플레이어가 있는 월드를 반환합니다. | 예 |
reset_display_name() | 반환 값이 비어있음 | [플레이어 이름] | PlayerOfflineException | 플레이어의 보이는 이름(display name) 을 진짜 이름으로 초기화시킵니다. | 예 |
save_players() | 반환 값이 비어있음 | CastException | 현재 플레이어들을 디스크에 저장합니다. | 예 | |
set_compass_target() | 배열 | [플레이어], 위치 배열 | PlayerOfflineException FormatException | 주어진 플레이어의 나침반 목표를 설정하고 이전 위치를 반환합니다. | 예 |
set_display_name() | 반환 값이 비어있음 | [플레이어 이름], 새로운 보이는 이름 | PlayerOfflineException | 플레이어의 보이는 이름(display name) 을 설정합니다. 만약 첫번째 사용법이 사용되지 않을 경우 경우, 스크립트를 실행하는 플레이어의 보이는 이름이 설정됩니다. 또한 모든 플레이어 펑션은 진짜 플레이어의 이름을 사용합니다. 보이는 이름은 사용하지 않습니다. | 예 |
set_list_name() | 반환 값이 비어있음 | [플레이어], [목록 이름] | PlayerOfflineException LengthException IllegalArgumentException | 플레이어의 목록 이름을 설정합니다. 색상을 지원하며 null 으로 설정할 경우 이름을 초기화시킵니다. 1.8 버전 이하의 마인크래프트에서는 16자 제한이 있으며, 이 버전들에서는 이미 있는 이름을 사용할 경우 IllegalArgumentException 이 발생하며 16자를 넘을 경우 LengthException 이 발생합니다. 1.8 이상의 버전의 경우 이미 있는 이름은 무시됩니다. | 예 |
set_pbanned() | 반환 값이 비어있음 | 플레이어, 밴 여부 | NotFoundException | 주어진 플레이어의 밴 여부를 설정합니다. 오프라인 플레이어에게도 작동합니다. 참고로 이 펑션은 바닐라 밴 시스템을 사용하기 때문에 만약 써드 파티 밴 시스템을 사용하신다면 해당 플러그인의 명령어를 이용하셔야 합니다. 알림: 이 펑션은 플레이어 이름 대신 UUID 도 사용 가능합니다, 하지만 모장 API 의 문제 때문에 어떤 서버 소프트웨어는 최근의 온라인이지 않은 플레이어의 제대로 된 UUID 를 구할 수 없습니다. 그렇기 때문에, UUID 를 통해 밴이나 화이트리스트를 하지 못할 수 있습니다. 이러한 문제가 확인된 서버 소프트웨어는 버킷과 스피곳입니다. 이러한 문제 때문에 바닐라 밴/화이트리스트 시스템 대신 써드 파티 시스템을 사용하시거나 자체 시스템을 만들어 쓰시는 것을 권장합니다. | 예 |
set_pbed_location() | 반환 값이 비어있음 | [플레이어], 위치 배열, [강제 여부] [player], x, y, z, [forced] | CastException LengthException PlayerOfflineException FormatException NullPointerException | 플레이어의 리스폰 위치를 설정합니다. 주어진 리스폰 위치는 리스폰 위치로부터 한칸 아래여야 합니다. 만약 강제 여부가 거짓일 경우, 플레이어는 주어진 위치 주변에 침대가 있어야만 리스폰됩니다.(기본값은 참입니다.) | 예 |
set_pcooldown() | 정수 | [플레이어], 물질, 쿨타임 | LengthException FormatException PlayerOfflineException RangeException CastException | 플레이어의 주어진 물질에 대한 쿨타임을 설정합니다. 물질은 아이템 배열의 name 키와 같습니다. 쿨타임은 게임 틱을 따르는 양의 정수여야만 합니다. | 예 |
set_peffect() | boolean | 플레이어, 포션 ID, 강도, [초], [주변 감지 여부], [입자 여부], [아이콘] | PlayerOfflineException CastException RangeException | 포션은 1과 23 사이이며, 초는 기본적으로 30초입니다. 포션 ID 가 범위를 벗어났을 경우, RangeException 이 발생합니다. 왜냐하면 범위를 넘어선 포션 효과의 경우 클라이언트의 충돌을 발생시키기 때문입니다. http://www.minecraftwiki.net/wiki/Potion_effects 페이지를 통해 사용할 수 있는 포션 효과를 확인할 수 있으며, 0초로 설정할 경우 포션이 사라집니다. 만약 초가 0보다 작거나 107374182보다 크다면 RangeException 이 발생힙니다. 강도는 포션의 강도를 설정하고, 주변 감지 여부는 참일 경우 시각 효과가 주변에 덜 보이게 되며, 입자 여부는 포션 효과로 인한 입자의 표시 여부를 설정합니다. 아이콘은 참일 경우 플레이어에게 포션 아이콘을 보여주고, 거짓일 경우 보여주지 않게 됩니다. | 예 |
set_pexp() | 반환 값이 비어있음 | [플레이어], 경험치 | CastException PlayerOfflineException RangeException | 현재 레벨에서의 경험치를 설정합니다. 0부터 100까지의 백분율로 설정됩니다. | 예 |
set_pflight() | 반환 값이 비어있음 | [플레이어], 날기 여부 | PlayerOfflineException | 플레이어가 날 수 있는지 여부를 설정합니다. | 예 |
set_pflying() | 반환 값이 비어있음 | [플레이어], 날기 여부 | PlayerOfflineException IllegalArgumentException | 플레이어가 날고 있는지 여부를 설정합니다. 플레이어가 날 수 있는 능력이 있어야 합니다.(set_pflight() 로 설정함.) | 예 |
set_pflyspeed() | 반환 값이 비어있음 | [플레이어], 속도 | PlayerOfflineException RangeException CastException | 플레이어의 비행 속도를 설정합니다. -1과 1 사이여야 합니다. | 예 |
set_pfood() | 반환 값이 비어있음 | [플레이어], 레벨 | PlayerOfflineException CastException | 플레이어의 허기 레벨을 설정합니다. 0 이상과 최대치 이하의 정수여야 합니다. | 예 |
set_phealth() | 반환 값이 비어있음 | [플레이어], 체력 | CastException RangeException PlayerOfflineException | 플레이어의 체력을 설정합니다. 체력은 0과 최대 체력 사이의 실수여야 합니다. | 예 |
set_phunger() | 반환 값이 비어있음 | [플레이어], 허기 | RangeException PlayerOfflineException CastException | 플레이어의 허기 레벨을 설정합니다. | 예 |
set_plevel() | 반환 값이 비어있음 | [플레이어], 레벨 | CastException PlayerOfflineException | 플레이어의 레벨을 설정합니다. | 예 |
set_ploc() | boolean | [플레이어], 위치 배열 [플레이어], x, y, z | CastException LengthException PlayerOfflineException FormatException InvalidWorldException | 플레이어의 위치를 설정합니다. 좌표가 올바르지 않을 경우 플레이어는 텔레포트되지 않고 거짓이 반환됩니다. 정상적으로 텔레포트 된 경우 참을 반환합니다. 참고로 y 좌표에선 자동으로 1이 더해집니다. | 예 |
set_pmode() | 반환 값이 비어있음 | [플레이어], 모드 | PlayerOfflineException FormatException | 플레이어의 게임 모드를 설정합니다. 게임 모드는 SURVIVAL, CREATIVE, ADVENTURE, SPECTATOR 중 하나입니다. | 예 |
set_ponfire() | 반환 값이 비어있음 | [플레이어], 틱 | PlayerOfflineException CastException | 플레이어가 불에 타고 있는지 설정합니다. 틱 위치에 boolean 이 주어진다면 거짓은 0, 참은 20으로 자동 변환됩니다. | 예 |
set_psaturation() | 반환 값이 비어있음 | [플레이어], 포만감 | RangeException PlayerOfflineException CastException | 예 | |
set_pspectator_target() | 반환 값이 비어있음 | [플레이어], 엔디티 | PlayerOfflineException IllegalArgumentException BadEntityException | 플레이어가 관전할 엔디티를 설정합니다. null 일 경우, 관전자가 엔디티 관전을 중지합니다. 플레이어가 관전자 모드가 아닐 경우 IllegalArgumentException 이 발생합니다. | 예 |
set_pstorm() | 반환 값이 비어있음 | [플레이어], 비 여부 | PlayerOfflineException | 주어진 플레이어에게만 날씨를 설정합니다. 비 여부가 참이라면 플레이어에게 비가 올 것이고, 거짓이라면 비가 오지 않습니다. null 이라면 플레이어의 날씨를 월드의 날씨와 일치시킵니다. | 예 |
set_ptexp() | 반환 값이 비어있음 | [플레이어], 경험치 | CastException PlayerOfflineException RangeException | 플레이어의 총 경험치를 설정합니다. | 예 |
set_ptime() | 반환 값이 비어있음 | [플레이어], 시간, [상대적] | PlayerOfflineException FormatException | 플레이어만의 시간을 설정합니다. 상대적 여부는 기본적으로 거짓이지만, 참일 경우 시간이 월드의 시간보다 주어진 시간만큼 차이를 두고 갑니다. 거짓일 경우 주어진 시간으로 고정됩니다. 또한 일반적인 시간 표현(9:30 pm, 4:00am) 도 사용 가능하고, 영어 사전 설정도 존재합니다:<ul><li>afternoon = 8000</li><li>dawn = 22500</li><li>day = 2000</li><li>dusk = 13500</li><li>earlymorning = 20000</li><li>evening = 12000</li><li>midday = 6000</li><li>midnight = 18000</li><li>morning = 0</li><li>night = 14000</li><li>noon = 6000</li><li>sunrise = 23000</li><li>sunset = 13000</li></ul> | 예 |
set_pvelocity() | boolean | [플레이어], 벡터 [플레이어], x, y, z | CastException PlayerOfflineException FormatException | 플레이어의 속도를 설정합니다. 벡터는 x, y, z 키가 있는 배열이여야 합니다. ( magnitude 가 설정될 경우엔 무시됩니다.) 만약 벡터의 강도(magnitude) 가 10 이상일 경우, 작업이 취소됩니다. 그 이유는 서버가 그 이상 빠르게 움직일 수 있도록 허용하지 않기 때문입니다. 또한 동시에 거짓이 반환됩니다. | 예 |
set_pwalkspeed() | 반환 값이 비어있음 | [플레이어], 속도 | PlayerOfflineException RangeException CastException | 플레이어의 걷는 속도를 설정합니다. -1과 1 사이여야 합니다. | 예 |
set_pwhitelisted() | 반환 값이 비어있음 | 플레이어, 화이트리스트 여부 | NotFoundException | 주어진 플레이어의 화이트리스트 여부를 설정합니다. 오프라인 플레이어에도 작동하지만 이름이 정확해야 합니다. 알림: 이 펑션은 플레이어 이름 대신 UUID 도 사용 가능합니다, 하지만 모장 API 의 문제 때문에 어떤 서버 소프트웨어는 최근의 온라인이지 않은 플레이어의 제대로 된 UUID 를 구할 수 없습니다. 그렇기 때문에, UUID 를 통해 밴이나 화이트리스트를 하지 못할 수 있습니다. 이러한 문제가 확인된 서버 소프트웨어는 버킷과 스피곳입니다. 이러한 문제 때문에 바닐라 밴/화이트리스트 시스템 대신 써드 파티 시스템을 사용하시거나 자체 시스템을 만들어 쓰시는 것을 권장합니다. | 예 |
stop_named_sound() | 반환 값이 비어있음 | 플레이어, 소리 [분류] | InvalidWorldException LengthException FormatException PlayerOfflineException | 주어진 플레이어에 주어진 소리를 중지합니다. | 예 |
stop_sound() | 반환 값이 비어있음 | 플레이어, 소리 [분류] | InvalidWorldException LengthException FormatException PlayerOfflineException | 주어진 플레이어에 주어진 소리를 중지합니다. | 예 |
플러그인 메타
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
fake_incoming_plugin_message() | 반환 값이 비어있음 | [플레이어,] 채널, 메시지 | CastException PlayerOfflineException IllegalArgumentException | 플레이어에게 가짜 플러그인 메시지가 들어오게 합니다. 채널은 문자열(채널 이름) 이여야 하며, 메시지는 바이트 배열이 될 수 있는 자료형이여야 합니다. 플러그인에 따라, 이 인수는 다양한 형태를 가지고 있을 수 있습니다. 메시지가 null 이라면 빈 바이트 배열이 전송됩니다. | 예 |
get_registered_channels() | 배열 | NotFoundException IllegalArgumentException | 커맨드헬퍼가 수신하고 있는 모든 채널의 이름 문자열 배열을 반환합니다. | 예 | |
is_channel_registered() | boolean | 채널 | NotFoundException IllegalArgumentException | 주어진 채널을 커맨드헬퍼가 수신하고 있다면 참을 반환합니다. | 예 |
register_channel() | 반환 값이 비어있음 | 채널 | PluginChannelException NotFoundException IllegalArgumentException | 커맨드헬퍼가 수신하도록 플러그인 채널을 등록합니다. 채널 이름은 32자 이하의 소문자여야 하며, 콜론을 포함해야 합니다. 들어오는 메시지는 'plugin_message_received' 이벤트를 통해 활용할 수 있습니다. | 예 |
send_plugin_message() | 반환 값이 비어있음 | [플레이어,] 채널, 메시지 | CastException PlayerOfflineException IllegalArgumentException | 플레이어에게 플러그인 메시지를 보냅니다. 채널 이름은 32자 이하의 소문자여야 하며, 콜론을 포함해야 하고 그렇지 않으면 IllegalArgumentException이 발생합니다. 메시지는 바이트 배열이 될 수 있는 자료형이여야 합니다. 플러그인에 따라 인수는 다양할 수 있습니다. 메시지가 null 이라면 빈 바이트 배열이 보내집니다. | 예 |
unregister_channel() | 반환 값이 비어있음 | 채널 | PluginChannelException NotFoundException IllegalArgumentException | 커맨드헬퍼가 수신하고 있는 플러그인 채널을 등록 해제합니다. | 예 |
조합법
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
add_recipe() | boolean | 조합법 배열 | CastException FormatException | 서버에 조합법을 추가하고 정상적으로 추가되었는지 여부를 반환합니다. | 예 |
clear_recipes() | 반환 값이 비어있음 | 모든 조합법을 지웁니다. | 예 | ||
get_all_recipes() | 배열 | 서버의 모든 조합법을 반환합니다. | 예 | ||
get_recipe_for() | 배열 | 아이템 배열 | FormatException | 주어진 아이템을 결과로 하는 모든 조합법을 가져옵니다. 참고: 아이템의 메타와 인첸트에 상관 없는 모든 조합법을 가져옵니다. | 예 |
reset_recipes() | 반환 값이 비어있음 | 모든 레시피를 기본 레시피로 초기화합니다. | 예 | ||
리플렉션
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
get_aliases() | 배열 | 등록된 단축 명령어의 배열을 반환합니다.( = 기호 왼쪽 부분) | 예 | ||
get_events() | 배열 | 모든 주어진 이벤트 이름의 배열을 반환합니다. | 예 | ||
get_functions() | 배열 | 모든 로드된 펑션을 포함하는 키가 있는 배열을 반환합니다. 배열의 키는 펑션의 분류이며(API 페이지의 분류와 같음), 값은 해당 분류 안에 있는 펑션들의 이름 배열입니다. | 예 | ||
get_procedures() | 배열 | 현재 시점에서 호출할 수 있는 프로시저의 배열을 반환합니다. | 예 | ||
reflect_docs() | 문자열 | 요소, 문서 필드 | FormatException | 주어진 요소에 대한 문서를 반환합니다. 요소에 따라 문서 필드는 달라질 수 있습니다. 문서 필드는 type, return, args, description 중 하나이며 사용 가능한 요소는 i변수의 이름, 펑션/프로시저 일 수 있습니다. 예를 들어, reflect_docs('reflect_docs', 'description') 은 지금 읽고 있는 것을 반환합니다. 사용자가 지정한 변수와 프로시저의 경우 아무 문서도 없을 수 있으며, 이 경우에는 null 이 반환됩니다. 만약 주어진 요소가 없다면, FormatException 이 반환되며, 아무 인수가 주어지지 않는다면 reflect_docs 의 문서를 반환합니다. 즉, 지금 읽고 있는 것을 말합니다. | 예 |
reflect_pull() | 다양함 | 매개 변수, [인수들, ...] | FormatException IOException | 런타임에 대한 정보를 사용할 수 있는 형식으로 반환합니다. 반환된 정보에 따라, 곧바로 사용할 수도 있고 더 참조에 가까운 형식일 수도 있습니다. | 예 |
reflect_value_source() | 문자열 | 영구변수 키 | 영구 저장소에서 해당 키에 해당하는 데이터가 저장되는 위치를 반환합니다. 예를 들어, persistence.ini 파일에서 "storage.test.**=json:///path/to/file.json" 이라는 설정이 있고, reflect_value_source('storage.test.testing') 을 호출하면 'json:///path/to/file.json' 이 반환될 것입니다. 이는 값의 정확한 원본 위치를 알려 줌으로써 디버깅에 유용합니다. | 예 | |
정규식
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
reg_count() | 정수 | 패턴, 대상 | FormatException | 대상에서 패턴에 일치하는 수를 반환합니다. | 아니오 |
reg_escape() | 문자열 | 값 | 인수를 이스케이프하여 정규식에서 바로 사용할 수 있게 해 줍니다. 즉, 모든 특별 글자들을 전부 이스케이프하여 오류가 나지 않도록 합니다. 검색과 같은 사용자 입력이 필요한 부분에서 유용합니다. | 아니오 | |
reg_match() | 배열 | 패턴, 대상 | FormatException | 주어진 패턴을 검색하여 결과의 배열을 반환합닌다. 캡쳐 또한 지원됩니다. 만약 패턴에 맞는 결과가 없다면 빈 배열이 반환됩니다. 배열의 인덱스는 일반적인 정규식을 따릅니다. 0번째 원소는 일치하는 전체 부분익고, 1 - n 범위에선 각각의 일치하는 부분을 포함합니다. | 아니오 |
reg_match_all() | 배열 | 패턴, 대상 | FormatException | 대상에서 주어진 패턴과 전부 일치하는 부분을 반환합니다. reg_match 와 달리, 첫번째 일치하는 부분만 반환합니다. | 아니오 |
reg_replace() | 문자열 | 패턴, 대체, 대상 | FormatException | 패턴에서 일치하는 대상을 전부 대체 문자열로 변경합니다. | 아니오 |
reg_split() | 배열 | 패턴, 대상, [제한] | FormatException CastException | 주어진 정규식에 맞게 문자열을 나눕니다. 그리고 나눈 부분 부분의 배열을 반환합니다. 아무것도 일치하지 않는다면, 하나의 원소만 있는 배열이 반환될 것입니다. 제한 값은 기본적으로 무한이며, 만약 주어졌을 경우 제한된 번째 일치까지만 나눕니다. | 아니오 |
리소스 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
res_create_resource() | 리소스 | 종류, [데이터] | CastException FormatException | 메모리에 저장되는 리소스를 만듭니다. 다양한 펑션들이 다양한 종류의 리소스를 요구합니다. 이 펑션으로 만든 리소스는 영구적으로 남지 않아야 하므로 res_create_resource 는 res_free_resource 와 함께 실행되어야 합니다. 리소스가 삭제되고 나서도 res_free_resource 가 실행되어 예외가 발생하지 않도록 주의하십시오. 각 리소스는 만들 때 각자의 데이터를 가지고 있습니다. 종류는 다음 중 하나입니다: XML_DOCUMENT, STRING_BUILDER, RANDOM. | 예 |
res_free_resource() | 반환 값이 비어있음 | 리소스 | CastException NotFoundException | 주어진 리소스를 삭제합니다. 이 펑션은 res_create_resource 펑션으로 리소스가 만들어진 이후에 무조건 리소스를 이용한 작업이 완료된 이후 호출되어야 합니다. | 예 |
SQL
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
query() | 다양함 | 프로필, 쿼리, [매개 변수...] | SQLException | SQL 쿼리를 실행하고 쿼리 종류에 따른 다양한 데이터를 반환합니다. | 예 |
query_async() | 반환 값이 비어있음 | 프로필, 쿼리, [매개 변수...], 콜백 | CastException | 비동기적으로 SQL 서버에 쿼리를 합니다. 프로필, 쿼리, 매개 변수는 query 과 동일하고, 콜백은 다음과 같은 클로저입니다: closure(@contents, @exception) { <code> } @contents 는 일반 query 에서 반환하는 값과 같고, @exception 이 null 이 아니라면, 쿼리 도중에 예외가 발생했고 그 데이터가 해당 변수에 저장되어 있다는 것입니다. 하지만 @exception 이 null 이라도 @contents 는 null 이 될 수 있습니다. | 예 |
unsafe_query() | 다양함 | 프로필, 쿼리, [매개 변수...] | SQLException | 쿼리를 실행합니다. query 과 비슷하지만, SQL 인젝션이 일어날 수 있습니다. | 예 |
샌드박스(불안정)
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
raw_pcan_see() | boolean | [플레이어], 다른 플레이어 | PlayerOfflineException | 플레이어가 다른 플레이어를 볼 수 있는지 여부를 반환합니다. 이는 raw access 펑션이기 때문에 사용하면 안될수도 있습니다. | 예 |
raw_set_pvanish() | 반환 값이 비어있음 | [플레이어], 사라짐 여부, 다른 플레이어 | PlayerOfflineException | 현재 플레이어가 주어진 다른 플레이어에게 사라질지 여부를 설정합니다. 이는 raw access 펑션이기 때문에 사용하면 안될수도 있습니다. | 예 |
srand() | 실수 | 랜덤 리소스 | CastException | 새로운 랜덤 값을 반환합니다. 만약 리소스를 만들 때 사용된 시드가 같다면, 결과로 반환될 숫자들도 같을 것입니다. | 아니오 |
super_cancel() | 반환 값이 비어있음 | BindException | 이벤트를 "슈퍼 취소" 합니다. 이 펑션은 play-dirty 가 참일 경우에만 동작합니다. 이벤트가 슈퍼 취소되면 취소 플래그가 참으로 변경될 뿐만 아니라 이벤트의 전송을 멈춥니다. 즉 다른 플러그인(CH 스크립트가 아닌 서버의 다른 플러그인) 은 이벤트를 받을 수 없습니다.(모니터 레벨 플러그인이 아닌 이상) 이는 취소 플래그를 무시하는 플러그인의 이벤트를 오버라이딩 하는데에 유용합니다. 이 펑션은 play-dirty 프레임워크를 이용하여 버킷에 커스텀 이벤트 핸들러를 삽입하는 원리를 이용합니다. | 예 | |
test_composite_function() | boolean | a, b | CastException | 이 펑션은 테스트 펑션입니다. 확장기능 개발자들에게 합성 펑션을 만드는 원리를 알리기 위한 것이기도 합니다. 만약 a 와 b 가 더해졌을때 0보다 크다면 참을 반환합니다. | 아니오 |
x_recompile_includes() | 정수 | 경로 | IOException IncludeException | 주어진 *.ms 파일을 읽고 컴파일합니다. 이것은 파일이 include() 로 이미 컴파일 되었을 때 사용할 수 있습니다. 그러면 include() 로 해당 파일을 가져오는 스크립트는 업데이트된 코드를 사용할 것입니다. 경로는 디렉토리나 파일이 될 수 있습니다. 모든 서브 디렉토리에도 전부 컴파일 작업을 진행하고, 컴파일 도중에 오류가 발생한다면 예외를 발생시키고 다른 스크립트는 과거 버전의 코드를 사용할 것입니다. 다시 컴파일된 파일의 수를 반환합니다. | 예 |
스케줄링
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
clear_cron() | 반환 값이 비어있음 | [크론 ID] | RangeException CastException | 이전에 등록된 크론 작업들을 전부 제거합니다. 이는 같은 작업을 후에 또 실행하는 것을 방지해 줍니다. 만약 크론 작업 안에서 이 펑션이 실행된다면 크론 ID 는 필수가 아니게 되고 해당 작업이 중지됩니다. 만약 주어진 ID 가 올바르지 않다면, RangeException 이 발생합니다. | 예 |
clear_task() | 반환 값이 비어있음 | [id] | CastException InsufficientArgumentsException | 주어진 인터벌이나 타임아웃을 중지합닌다. id 는 set_timeout 이나 set_interval 의 반환값과 같습니다. 올바르지 않는 id 는 단순히 무시되며, set_interval, set_timeout 클로저 안에서 실행될 경우 id 는 필수가 아니고 해당 작업을 중지시키게 됩니다. | 예 |
get_system_timezones() | 배열 | 시스템에 등록된 모든 시간대의 배열을 반환합니다. | 예 | ||
nano_time() | 정수 | 시스템에서 가장 정확한 시계를 사용하여 임의의 수를 반환합니다. 다른 nano_time() 펑션과 비교할 때에만 유용합니다. 반환 값은 나노초이며, 자바 API 의 System.nanoTime() 부분을 통해 자세한 정보를 알아보세요. | 아니오 | ||
parse_date() | 정수 | 날짜 형식, 날짜 문자열 | FormatException | 날짜 문자열을 파싱합니다. 그리고 해당 시간에 해당하는 정수 타임스탬프를 반환합니다. 이는 simple_date 의 반대로 적용됩니다. 날짜 형식 문자열은 simple_date 에서 사용되는 것과 동일하기 때문에 해당 펑션의 문서를 보면 자세한 정보를 알 수 있을 것입니다. 날짜 문자열은 실제로 파싱될 데이터입니다. 날짜 형식과 날짜 문자열의 형식은 동일해야 합니다. 동일하지 않더라도 파싱을 하려곤 하지만 날짜의 형식은 다양하기 때문에 올바른 정보를 제공하지 않을 가능성이 큽니다. | 아니오 |
set_cron() | 정수 | 크론 형식, 클로저 | CastException FormatException | 작업이 주어진 시각에 실행되도록 설정합니다. 이는 크론 형식으로 설정되며, 이를 통해 쉽게 작업이 일어날 시각을 지정할 수 있습니다. 예를 들어 특정 시(6:00 처럼) 에 작업을 실행하고 싶을 때 좋습니다. set_interval 과 달리 타이머가 아닌 정확한 시간을 사용하기 때문입니다. 작업 id 가 반환되기 때문에, 나중에 clear_cron 으로 작업을 지울 수 있습니다. 만약 clear_cron 이 작업 내부에서 실행될 경우 id 는 필수가 아닙니다. | 예 |
set_interval() | 정수 | 밀리초 시간, [밀리초 최초 지연, ] 클로저 | CastException | 주어진 시간이 지날 때마다 작업을 실행합니다. set_timeout 과 비슷하지만, 작업이 끝날 때 다시 타이머가 시작한다는 것이 다릅니다. 참고로 시간의 단위는 밀리초이지만 서버는 50밀리초 단위로 세기 때문에 1-50밀리초는 실제론 50밀리초와 같습니다. 최초 지연은 처음 실행 전에 기다리는 시간을 뜻합니다. | 예 |
set_timeout() | 정수 | 밀리초 시간, 클로저 | CastException | 주어진 시간 후에 작업이 실행되도록 합니다. 작업은 단 한번만 실행됩니다. 참고로 시간의 단위는 밀리초이지만 서버는 50밀리초 단위로 세기 때문에 1-50밀리초는 실제론 50밀리초와 같습니다. | 예 |
simple_date() | 다양함 | 형식, [시간, [시간대, [언어]]] | CastException FormatException | 현재 시간과 날짜를 주어진 형식으로 반환합니다.(혹은 주어진 시간의 시간과 날짜) | 아니오 |
sleep() | 반환 값이 비어있음 | 초 | CastException | 스크립트를 주어진 시간만큼 중지합니다. 최대 중지 시간은 설정 파일에서 수정할 수 있습니다. 초는 실수가 될 수 있습니다. 즉 0.5 는 0.5초를 쉰다는 뜻입니다. 주의: 중지 시간은 아주 정확하지 않으므로 신뢰해서는 안됩니다. | 예 |
time() | 정수 | 현재 유닉스 타임스탬프를 밀리초로 반환합니다. 이 시간의 정확도는 아주 완벽하지는 않습니다. 만약 완전 정확한 시간이 필요하다면, nano_time() 을 사용하세요. | 아니오 | ||
스코어보드
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
create_objective() | 반환 값이 비어있음 | 이름, [기준, [스코어보드]] | LengthException ScoreboardException | 스코어보드에 새로운 목표를 추가합니다. 이름이 이미 사용중이라면 CREScoreboardException 이 발생합니다. 바닐라 기준 이름은 DEATHCOUNT, HEALTH, PLAYERKILLCO UNT, TOTALKILLCOUNT, DUMMY. 중 하나입니다. 또한 아무 값이나 넣을 수 있지만, 일치하는 이름이 아니라면 자동으로 DUMMY 가 사용됩니다. DUMMY 가 아닌 값은 서버에서 설정되며, 이름이 16자 이상일 경우 LengthException 이 발생합니다. 스코어보드 이름은 주어지지 않을 경우 'main' 이 사용됩니다. | 예 |
create_scoreboard() | 반환 값이 비어있음 | 이름 | NullPointerException | 주어진 이름을 한 스코어보드를 만듭니다. 또 나중에 사용하기 위해 내부적으로 저장합니다. 이름이 이미 사용되고 있다면 예외를 반환합니다. | 예 |
create_team() | 반환 값이 비어있음 | 이름, [스코어보드] | LengthException ScoreboardException | 스코어보드에 새로운 팀을 추가합니다. 팀 이름이 이미 존재할 경우 CREScoreboardException 이 발생합니다. 만약 팀 이름이 16자보다 길면 LengthException 이 발생합니다. 스코어보드 이름이 주어지지 않을 경우 'main' 이 주어집니다. | 예 |
get_objectives() | 배열 | [스코어보드], [기준] | ScoreboardException | 주어진 스코어보드의 목표의 정보의 배열이 담긴 배열을 반환합니다. 스코어보드가 주어지지 않았을 경우 'main' 을 기본으로 하며, 기준이 주어졌다면 해당 기준을 가진 목표들만 반환됩니다. 목표 정보 배열은 name, displayname, slot, modifiable, criteria 키를 가지고 있습니다. | 예 |
get_pscore() | 정수 | 목표 이름, 플레이어, [스코어보드] | ScoreboardException | 주어진 플레이어의 주어진 스코어보드의 목표에 대한 점수를 반환합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
get_pscoreboard() | 스코어보드 | 플레이어 | PlayerOfflineException ScoreboardException | 해당 플레이어가 등록된 스코어보드 이름을 반환합니다. 만약 등록된 스코어보드가 없다면, 주어진 플레이어 이름을 이용하여 스코어보드에 등록합니다. 이 방법을 이용하면 다른 플러그인이 만든 스코어보드를 가져올 수 있습니다. | 예 |
get_pteam() | 배열 | 플레이어, [스코어보드] | ScoreboardException | 주어진 플레이어의 팀 배열을 가져옵니다. 만약 플레이어가 아무 팀에도 없다면 null 을 반환합니다. 팀 정보 배열엔 name, displayname, prefix, suffix, size, options, players 키가 있습니다. 스코어보드 이름이 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
get_scoreboards() | 배열 | 현재 등록된 스코어보드의 ID 를 반환합니다. 특별한 스코어보드 'main' 은 바닐라 스코어보드 명령어를 이용한 서버의 기본 스코어보드입니다. | 예 | ||
get_teams() | 배열 | [스코어보드] | ScoreboardException | 주어진 스코어보드에 있는 팀의 배열을 반환합니다. 스코어보드가 주어지지 않았을 경우 'main' 을 기본으로 하며, 팀 정보 배열엔 name, displayname, prefix, suffix, size, options, players 키가 있습니다. | 예 |
remove_objective() | 반환 값이 비어있음 | 목표 이름, [스코어보드] | ScoreboardException | 스코어보드에서 목표를 제거합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
remove_scoreboard() | 반환 값이 비어있음 | 스코어보드, [완전 삭제] | ScoreboardException | 'main' 을 제외한 주어진 스코어보드를 제거합니다. 'main' 은 기본 스코어보드이기 때문에 지워지지 않습니다. 완전 삭제가 참일 경우(기본값은 참) 모든 저장된 팀과 목표가 제거됩니다. 그리고 해당 스코어보드에 등록되어 있는 모든 플레이어는 메인 스코어보드로 이동합니다. | 예 |
remove_team() | 반환 값이 비어있음 | 팀 이름, [스코어보드] | ScoreboardException | 주어진 스코어보드에서 팀을 제거합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
reset_all_pscores() | 반환 값이 비어있음 | 플레이어, [스코어보드] | ScoreboardException | 주어진 스코어보드에서 플레이어의 점수를 전부 초기화합니다. 이는 어떤 표시 목표에도 보이지 않는다는 뜻입니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
set_objective_display() | 반환 값이 비어있음 | 목표 이름, 배열, [스코어보드] 목표 이름, 보일 이름, [스코어보드] | FormatException LengthException ScoreboardException | 주어진 목표가 보일 이름과 슬롯을 설정합니다. 만약 두번째 인수가 배열이 아니라면, 이름을 설정하는 것으로 간주합니다. 배열이라면 두번째 인수는 'displayname' 과 'slot' 키가 있는 배열이여야 합닏다. null 이름은 원래 목표 이름으로 만들며, null 슬롯은 목표를 보이지 않도록 합니다. 슬롯은 BELOW_NAME, PLAYER_LIST, SIDEBAR 중 하나입니다. 스코어보드 이름이 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
set_pscore() | 반환 값이 비어있음 | 목표 이름, 이름, 정수, [스코어보드] | LengthException ScoreboardException | 주어진 목표에서 주어진 플레이어의 점수를 설정합니다. 이름은 플레이어의 이름이 아니어도 됩니다. 너무 긴 이름이라면 LengthException이 발생합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
set_pscoreboard() | 반환 값이 비어있음 | 플레이어, [스코어보드] | PlayerOfflineException ScoreboardException | 플레이어가 사용하는 플레이어를 주어진 스코어보드로 설정합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
set_team_display() | 반환 값이 비어있음 | 팀 이름, 배열, [스코어보드] 팀 이름, 보일 이름, [스코어보드] | LengthException ScoreboardException | 주어진 팀의 보이는 이름(display name), 접두사, 접미사를 설정합니다. 만약 두번째 인수가 배열이 아니라면, 보일 이름을 설정하는 것으로 간주합니다. 배열이라면 'displayname', 'prefix', 'suffix' 키가 있는 배열이여야 합니다. null 이름은 실제 이름으로 초기화하며, null 접두사나 접미사는 해당 부분을 보이지 않도록 설정합니다. 스코어보드 이름이 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
set_team_options() | 반환 값이 비어있음 | 팀 이름, 배열, [스코어보드] | ScoreboardException FormatException | 팀에 대한 다양한 설정을 합니다. 키 'friendlyfire' 와 'friendlyinvisibles' 값은 boolean 이여야만 합니다. 키 'collisionrule', 'nametagvisibility', 'deathmessagevisibility' 는 ALWAYS, FOR_OTHER_TEAMS, FOR_OWN_TEAM, NEVER 중 하나입니다. 스코어보드 이름이 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
team_add_player() | 반환 값이 비어있음 | 팀 이름, 플레이어, [스코어보드] | LengthException ScoreboardException | 주어진 팀에 플레이어를 추가합니다. 가짜 플레이어를 추가할 수 있으며, 플레이어의 이름은 40자까지 허용됩니다. 같은 스코어보드에 이미 등록된 팀이 있다면 자동으로 제거됩니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
team_remove_player() | boolean | 팀 이름, 플레이어, [스코어보드] | ScoreboardException | 플레이어를 팀에서 제거하려고 합니다. 성공하였다면 참을 반환합니다. 플레이어가 팀의 일원이 아니라면 거짓을 반환합니다. 스코어보드가 주어지지 않았을 경우 'main' 이 사용됩니다. | 예 |
문자열 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
char_from_unicode() | 문자열 | 윤니코드 | CastException RangeException | 유니코드 값에서 유니코드 문자를 반환합니다. 이는 유니코드 문자를 변환하는데 다양한 입력이 가능하다는 뜻입니다. 만약 하드코딩을 할 경우, '\u1234' 형식을 사용하는 것이 좋습니다, 하지만 만약 \u 코드에 다양한 입력이 필요하다면 이 펑션을 사용하는 것이 좋습니다. 즉, '\u1234' == char_from_unicode(parse_int('1234', 16)) 과 같습니다. 이름과 달리, 특정 유니코드 이스케이프는 여러 글자를 반환할 수 있습니다. 즉, length(char_from_unicode(@val)) 이 항상 1이라는 보장은 없습니다. | 아니오 |
char_is_uppercase() | boolean | 문자 | FormatException CastException | 주어진 문자가 대문자인지 여부를 반환합니다. 문자열은 항상 한 글자여야 합니다. 아닐 경우 FormatException 이 발생합니다. | 아니오 |
concat() | 문자열 | 값1, [값2...] | 인수의 모든 값을 합치고, 합친 문자열을 반환합니다. | 아니오 | |
decrypt_secure_string() | 배열 | 문자열 | CastException | secure_string 을 문자 배열로 반환합니다. 이전 버전 호환성을 위해 복호화되지 않는 일반 문자열도 지원합니다. 하지만 secure_string 을 한것과 동일한 형태로 반환됩니다. 예제는 secure_string 에서 살펴보세요. | 예 |
length() | 정수 | 문자열 배열 | 주어진 문자열의 길이를 반환합니다. 문자열로 변환 가능한 자료형도 가능하며, 배열의 경우 배열의 길이를 반환합니다. | 아니오 | |
levenshtein() | 정수 | 문자열 1, 문자열 2 | 두 문자열의 레벤슈타인 거리를 반환합니다. 예를 들어, "123" 과 "133" 은 1의 거리를 가집니다. "123" 과 "123" 은 같은 문자열이기 때문에 0의 거리를 가집니다. | 아니오 | |
lsprintf() | 문자열 | 언어, 형식 문자열, 매개 변수... 언어, 형식 문자열, 배열(매개 변수...) | FormatException InsufficientArgumentsException CastException | 주어진 형식 문자열에 맞게 매개 변수가 삽입된 문자열을 반환합니다. 언어는 en_US, nl_NL, no_NO 와 같은 형식을 따르는 문자열이여야 합니다. 시스템의 언어를 사용하려면 null 을 사용하세요. 형식 문자열은 기준안 에 맞는 형식을 따라야 합니다. 주어진 매개 변수 형은 자동으로 호환되는 형으로 변환됩니다. 날짜/시간 변수(t 와 T) 는 유닉스 시간을 표현하는 정수가 무조건 주어져야 하고, 그 외에는 동일합니다. | 아니오 |
parse_args() | 배열 | 문자열, [고급 방법 사용] | 문자열을 인수들의 목록 배열으로 파싱하여 반환합니다. $ 을 스크립트에서 사용할 수 있는 배열으로 반환하는데 유용합니다. 추가 공간은 무시됩니다. 즉 빈 문자열은 얻을 수 없습니다. 고급 방법 사용은 기본적으로 거짓이지만, 참이라면 따옴표가 있는 인수의 경우 빈 공간이 있어도 인정하는 파서를 사용합니다. | 아니오 | |
replace() | 문자열 | 대상, 검색 대상, 변경 값 | 대상에서 검색 대상인 문자열을 변경 값으려 변경합니다. | 아니오 | |
sconcat() | 문자열 | 값1, [값2...] | 모든 인수들을 합치지만 인수 사이에 빈 공간을 하나 넣습니다. | 아니오 | |
secure_string() | 암호화된 문자열 | 문자 배열 문자열 | FormatException | secure_string 을 주어진 문자 배열이나 문자열에 맞게 구성합니다. | 아니오 |
split() | 배열 | 나눌 문자, 문자열 [한계] | CastException | 문자열을 나눌 문자를 기준으로 나눕니다. 이는 reg_split 처럼 사용할 수 있지만, 이 펑션은 정규식을 사용하지 않습니다. 그러므로 성능 상에서 이득을 볼 수도 있고, 복잡한 식을 쓰지 않아도 됩니다. 한계는 기본적으로 없지만, 설정될 경우 설정된 한계까지만 나누어집니다. | 아니오 |
sprintf() | 문자열 | 형식 문자열, 매개 변수... 형식 문자열, 배열(매개 변수...) | FormatException InsufficientArgumentsException CastException | 주어진 형식 문자열에 맞게 매개 변수가 삽입된 문자열을 반환합니다. 형식 문자열은 다음 기준안 에 맞게 작성되어야 합니다. 매개 변수 형은 자동으로 호환되는 형식으로 바뀝니다. 날짜/시간 변수(t 와 T) 는 유닉스 시간을 표현하는 정수가 무조건 주어져야 하고, 그 외에는 동일합니다. 이는 lsprintf 를 'DEFAULT' 언어로 한 것과 같습니다. | 아니오 |
string_append() | 반환 값이 비어있음 | 자료, 확장한 것... | CastException | 어떤 수의 값이든 문자열 빌더를 통해 확장합니다. 이는 일반 문자열을 이용해 합치는 것보다 훨씬 효율적입니다. 리소스는 string(@res) 와 같이 문자열로 변환 가능합니다. | 예 |
string_contains() | boolean | 대상, 찾는 값 | NullPointerException | 찾는 값이 대상에 존재한다면 참을 반환합니다. 이는 string_position(@대상, @찾는 값) != -1 과 같지만 더 보기 쉽습니다. | 아니오 |
string_ends_with() | boolean | 확인 문자열, 문자열 | NullPointerException | 주어진 확인 문자열이 주어진 문자열로 끝나는지 확인합니다. 모든 자료형은 문자열의 형식으로 변환됩니다. 즉, boolean 참은 문자열 'true' 가 되고, 정수 1은 문자열 '1' 이 됩니다. 빈 문자열이 두번째 인수로 주어졌을 경우, 항상 참을 반환합니다. | 아니오 |
string_from_bytes() | 문자열 | 바이트_배열, [인코딩] | CastException FormatException | 주어진 바이트 배열을 주어진 인코딩을 이용하여 문자열로 반환합니다. 인코딩은 기본적으로 UTF-8 입니다. 인코딩 형식이 올바르지 않을 경우, FormatException 이 발생합니다. | 아니오 |
string_get_bytes() | 바이트_배열 | 문자열, [인코딩] | CastException FormatException | 주어진 문자열을 주어진 인코딩을 이용하여 바이트 배열으로 변환합니다. 인코딩은 기본적으로 UTF-8 입니다. 올바른 인코딩은 자바가 지원하는 인코딩입니다. 인코딩 형식이 올바르지 않을 경우, FormatException 이 발생합니다. | 아니오 |
string_multiply() | 문자열 | 문자열, 횟수 | RangeException CastException | 주어진 문자열을 주어진 횟수만큼 반복합니다. 예를 들어, string_multiply('a', 3) 는 'aaa' 를 반환합니다. 만약 문자열이 비어 있다면, 빈 문자열이 반환됩니다. 문자열이 null 이라면, null 이 반환됩니다. 만약 횟수가 0이라면, 빈 문자열이 반환됩니다. 0 보다 작은 횟수가 반환된다면 RangeException 이 발생합니다. | 아니오 |
string_position() | 정수 | 대상, 찾는 값 | NullPointerException | 대상에서 찾는 값이 처음으로 발견되는 위치를 반환합니다.(0부터 시작) 만약 찾는 값이 발견되지 않았을 경우, -1 이 반환됩니다. | 아니오 |
string_starts_with() | boolean | 확인 문자열, 문자열 | NullPointerException | 주어진 확인 문자열이 주어진 문자열로 시작하는지 확인합니다. 모든 자료형은 문자열의 형식으로 변환됩니다. 즉, boolean 참은 문자열 'true' 가 되고, 정수 1은 문자열 '1' 이 됩니다. 빈 문자열이 두번째 인수로 주어졌을 경우, 항상 참을 반환합니다. | 아니오 |
substr() | 문자열 | 문자열, 시작, [끝] | RangeException CastException | 주어진 문자열을 시작 위치와 끝 위치에 해당되는 문자들의 전 후를 다 자른 값을 반환합니다. 만약 시작 위치나 끝 위치가 문자열의 크기 이상일 경우, 예외가 발생합니다. 예를 들어, substr('hamburger', 4, 8) 은 "urge" 를 반환합니다. substr('smiles', 1, 5) 는 "mile" 을 반환합니다. 그리고 substr('lightning', 5) 는 "ning" 를 반환합니다. | 아니오 |
to_lower() | 문자열 | 문자열 | FormatException | 주어진 문자열을 모두 소문자로 바꿉니다. | 아니오 |
to_upper() | 문자열 | 문자열 | FormatException | 주어진 문자열을 모두 대문자로 바꿉니다. | 아니오 |
trim() | 문자열 | s | 주어진 문자열 s 를 양 끝의 모든 빈공간을 지우고 반환합니다. | 아니오 | |
triml() | 문자열 | s | 주어진 문자열 s 를 앞쪽의 모든 빈공간을 지우고 반환합니다. | 아니오 | |
trimr() | 문자열 | s | 주어진 문자열 s 를 뒷쪽의 모든 빈공간을 지우고 반환합니다. | 아니오 | |
unicode_from_char() | 정수 | 문자 | CastException RangeException | 주어진 문자의 유니코드 코드를 반환합니다. 문자는 무조건 한 코드 포인트 문자여야 합니다.(length(@문자) == 2 일 수도 있음) | 아니오 |
작업 관리
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
tm_get_tasks() | 배열 | 현재 실행중인 작업의 배열을 반환합니다. | 예 | ||
tm_kill_task() | 반환 값이 비어있음 | 작업 종류, id | CastException | 주어진 작업을 강제 종료합니다. 작업 종류와 id 는 작업 관리자에 표시되어 있습니다. 작업이 끝났거나 존재하지 않거나, 혹은 끝나는 중이라면 아무 일도 일어나지 않습니다. | 예 |
쓰레드
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
synchronized() | 반환 값이 비어있음 | 동기화 대상, 코드 | NullPointerException | 주어진 코드를 모든 호출(다른 쓰레드에서의) 과 동기화되도록 합니다. 즉, 두 쓰레드가 synchronized('example', <code>) 를 사용한다면, 두번째 호출은 첫번째 호출이 끝날 때까지 중지됩니다. 만약 이 펑션을 이 펑션 안에서 같은 동기화 대상에서 호출할 경우, 코드는 그냥 실행됩니다. 동기화에 대해 더 자세히 알고 싶다면, https://en.wikipedia.org/wiki/Synchronization_(computer_science) (영어) 를 보세요. | 예 |
x_get_current_thread() | 문자열 | 현재 쓰레드 id(쓰레드 이름) 을 반환합니다. | 예 | ||
x_new_thread() | 반환 값이 비어있음 | id, 클로저 | CastException | id 로 이름지어진 새 쓰레드를 만들고, 클로저를 쓰레드에서 실행합니다. 참고로 많은 작업이 달리 명시하지 않는 한다른 쓰레드에서 작업하는 것을 권장하지 않습니다. 펑션은 일반적으로 쓰레드 안전이 아니며, x_run_on_main_thread_later() 와 x_run_on_main_thread_now() 를 통해 작업이 정확히 실행되도록 할 수 있습니다. | 예 |
x_run_on_main_thread_later() | 반환 값이 비어있음 | 클로저 | 클로저를 메인 쓰레드에서 나중에 실행합니다. 만약 펑션 호출이 메인 쓰레드에서 이루어졌다면, 펑션이 오류를 일으키진 않습니다. 만약 예외가 클로저에서 일어날 경우, 오류 종류에 상관 없는 예외 핸들러에서 핸들링됩니다. | 예 | |
x_run_on_main_thread_now() | 다양함 | 클로저 | 메인 쓰레드에서 클로저를 바로 실행합니다. 현재 쓰레드는 작업이 끝날 때까지 중지됩니다. 만약 펑션이 메인 쓰레드에서 호출될 경우, 펑션은 예상대로 중지됩니다. 이는 메인 쓰레드의 에러가 아닙니다. 만약 주어진 코드가 예외를 발생시킨다면, 이는 일반 호출처럼 예외가 발생합니다. 만약 클로저가 값을 반환하면, x_run_on_main_thread_now 의 반환값이 됩니다. | 예 | |
날씨
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
has_storm() | boolean | [월드] | InvalidWorldException | 주어진 월드(기본값은 플레이어의 월드) 에 비가 오는지 여부를 반환합니다. | 아니오 |
has_thunder() | boolean | [월드] | InvalidWorldException | 주어진 월드(기본값은 플레이어의 월드) 에 번개가 치는지 여부를 반환합니다. | 아니오 |
lightning() | 정수 | 위치 배열, [안전 여부] x, y, z, [안전 여부] | CastException LengthException InvalidWorldException FormatException | 주어진 위치(배열 혹은 x, y, ,z 좌표) 에 번개가 치도록 합니다. 안전 여부는 기본적으로 거짓이고, 참일 경우 번개가 플레이어에 맞아도 데미지를 주지 않습니다. 번개의 엔디티 ID 를 반환합니다. | 예 |
set_thunder() | 반환 값이 비어있음 | boolean, [월드], [정수] | InvalidWorldException CastException | 날씨에 번개가 칠지 여부를 설정합니다. 세번째 인수는 번개가 얼마나 칠지 정합니다. | 예 |
storm() | 반환 값이 비어있음 | 우천 여부, [월드], [정수] | CastException FormatException InvalidWorldException | 만약 우천 여부가 참이라면 비가 오고, 거짓이라면 비가 오지 않습니다. 두번째 인수는 세번째 인수가 없을 경우 날씨의 지속 시간, 있을 경우 날씨를 조정할 월드 이름이며, 세번째 인수는 얼마나 주어진 날씨가 지속될지 틱으로 지정하는 것입니다. 두번째 인수는 콘솔에서 실행될 경우 무조건 월드 이름이여야합니다. | 예 |
웹
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
email() | 반환 값이 비어있음 | [프로필], 옵션 | FormatException PluginInternalException IOException | 이메일을 보냅니다. 더 많은 정보를 원한다면 이곳(영어) 을 참조하세요. | 예 |
http_clear_session_cookies() | 반환 값이 비어있음 | cookieJar | CastException | "세션" 의 쿠키를 지웁니다. 쿠키는 만료되지 않는 쿠키를 말합니다. | 아니오 |
http_request() | 반환 값이 비어있음 | url, callback url, 설정 | FormatException | 주어진 URL 에 HTTP 요청을 보냅니다 더 보기...(영어) | 예 |
url_decode() | 문자열 | 매개 변수 | URL 인코드된 문자열을 디코드합니다. | 아니오 | |
url_encode() | 문자열 | 매개 변수 | 주어진 매개 변수를 URL 인코드합니다. 이는 모든 특별한 문자를 x-www-form-urlencoded 형식으로 이스케이프 합니다. | 아니오 | |
월드
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
create_world() | 반환 값이 비어있음 | 이름, [종류, 환경, [시드, [생성기]]] | FormatException CastException | 주어진 옵션으로 새 월드를 만듭니다. 월드가 이미 존재할 경우, 디스크에서 불러오게 되고 뒤에서 세 인수는 무시됩니다. 이름은 월드의 이름이고, 종류는 NORMAL, FLAT, VERSION_1_1, LARGE_BIOMES, AMPLIFIED, CUSTOMIZED, BUFFET 중 하나이며, 환경은 NORMAL, NETHER, THE_END 중 하나입니다. 시드는 숫자나 문자열(해쉬 코드가 됨) 이 주어질 수 있으며, null(무작위 정수가 됨) 일수도 있습니다. 생성기는 서버에 로드된 월드 생성기의 이름입니다. | 예 |
distance() | 실수 | A 위치, B 위치 | RangeException FormatException InvalidWorldException IllegalArgumentException | 두 위치 사이의 거리를 반환합니다. | 아니오 |
get_chunk_loc() | 배열 | [위치 배열] | FormatException InsufficientArgumentsException NotFoundException | 위치 배열에 따른 청크의 위치를 x, z, 월드 형태의 배열으로 반환합니다. | 아니오 |
get_difficulty() | 문자열 | 월드 | InvalidWorldException | 월드의 난이도를 반환합니다. PEACEFUL, EASY, NORMAL, HARD 중 하나입니다. | 예 |
get_gamerule() | 다양함 | 월드, [게임 룰] | InvalidWorldException FormatException | 주어진 월드에 대한 게임 룰이 포함되어 있는 키가 있는 배열을 반환합니다. 만약 게임 룰이 주어졌을 경우, 펑션은 해당 게임 룰에 대한 값만 반환합니다. 게임 룰은 ANNOUNCEADVANCEMENTS, COMMANDBLOCKOUTPUT, DISABLEELYTRAMOVEMENTCHECK, DODAYLIGHTCYCLE, DOENTITYDROPS, DOFIRETICK, DOLIMITEDCRAFTING, DOMOBLOOT, DOMOBSPAWNING, DOTILEDROPS, DOWEATHERCYCLE, KEEPINVENTORY, LOGADMINCOMMANDS, MAXCOMMANDCHAINLENGTH, MAXENTITYCRAMMING, MOBGRIEFING, NATURALREGENERATION, RANDOMTICKSPEED, REDUCEDDEBUGINFO, SENDCOMMANDFEEDBACK, SHOWDEATHMESSAGES, SPAWNRADIUS, SPECTATORSGENERATECHUNKS. 중 하나입니다. | 예 |
get_loaded_chunks() | 배열 | [월드] | CastException FormatException InvalidWorldException NotFoundException | 주어진 월드 혹은 현재 플레이어의 월드에서 현재 로드된 모든 청크를 불러옵니다. | 예 |
get_pitch() | 실수 | 원 위치, 대상 위치 | InvalidWorldException FormatException | 원 위치에서 대상 위치에서의 각도를 구합니다. | 예 |
get_pvp() | boolean | 월드 | InvalidWorldException | 월드에 PvP 가 허용되어 있는지 여부를 반환합니다. | 예 |
get_spawn() | 배열 | [월드] | InvalidWorldException FormatException | 주어진 월드 혹은 주어지지 않은 경우 현재 플레이어의 월드의 스폰 위치 배열을 반환합니다. | 예 |
get_temperature() | 실수 | 위치 배열 | FormatException | 주어진 위치에서의 현재 온도를 반환합니다. | 아니오 |
get_vector() | 배열 | 위치, [강도] | RangeException FormatException | 주어진 위치 배열의 yaw와 pitch 에서 벡터를 반환합니다. 두번째 인수는 벡터의 강도를 정의합니다. 기본은 1.0 입니다. | 아니오 |
get_world_border() | 배열 | 월드 이름 | InvalidWorldException | 주어진 월드의 경계에 대한 정보가 담긴 키가 있는 배열을 반환합니다. 키는 width, center, damagebuffer, damageamount, warningtime, warningdistance. 중 하나입니다. | 예 |
get_world_time() | 정수 | [월드] | InvalidWorldException | 주어진 월드의 시간을 반환합니다. 0부터 23999 까지 정수 중 하나입니다. | 예 |
get_worlds() | 배열 | 현재 로드된 월드의 배열을 반환합니다. | 예 | ||
get_yaw() | 실수 | 원 위치, 대상 위치 | InvalidWorldException FormatException | 원 위치에서 다른 x-z 평면에서의 yaw 를 구합니다. 각도는 60분법(0-359.99...) 으로 측정되며, (x=0,z=1) 벡터(남쪽) 이 기본입니다. 만약 위치가 다른 월드에 있다면 FormatException 이 발생합니다. | 예 |
is_slime_chunk() | boolean | x, z, [월드] locationArray, [월드] | CastException FormatException InvalidWorldException | 주어진 청크가 슬라임 청크인지 여부를 반환합니다. | 예 |
load_chunk() | 반환 값이 비어있음 | [월드], x, z [월드], 위치 배열 | CastException FormatException InvalidWorldException | 해당 청크 좌표 혹은 해당 위치에 있는 청크를 로드합니다. | 예 |
location_shift() | 위치 배열 | 원 위치, 대상, [거리] 원 위치, 방향, [거리] | InvalidWorldException FormatException | 원 위치에서 대상의 방향 혹은 주어진 방향으로 거리만큼 움직인 위치를 반환합니다. | 예 |
refresh_chunk() | 반환 값이 비어있음 | [월드], x, z [월드], 위치 배열 | CastException FormatException InvalidWorldException | 이 펑션은 제대로 작동하지 않을 수도 있습니다! 청크 데이터를 모든 클라이언트에 다시 보냅니다. | 예 |
regen_chunk() | 반환 값이 비어있음 | x, z, [월드] locationArray, [월드] | CastException FormatException InvalidWorldException | 주어진 월드나 현재 플레이어의 월드에서 주어진 청크를 다시 생성합니다. 이는 해당 청크의 모든 데이터가 손실되는 작업이므로 주의하시기 바랍니다! | 예 |
save_world() | 반환 값이 비어있음 | 월드 이름 | InvalidWorldException | 주어진 월드를 저장합니다. | 예 |
set_difficulty() | 반환 값이 비어있음 | [월드], 난이도 | InvalidWorldException FormatException | 월드의 난이도를 설정합니다. PEACEFUL, EASY, NORMAL, HARD 중 하나입니다. | 예 |
set_gamerule() | 반환 값이 비어있음 | [월드], 게임 룰, 값 | InvalidWorldException FormatException | 주어진 월드에 대한 게임 룰을 설정합니다. 만약 월드가 주어지지 않았을 경우 모든 월드에 적용됩니다. 게임 룰이 성공적으로 적용되면 참을 반환합니다. 게임 룰은 다음 중 하나입니다: ANNOUNCEADVANCEMENTS, COMMANDBLOCKOUTPUT, DISABLEELYTRAMOVEMENTCHECK, DODAYLIGHTCYCLE, DOENTITYDROPS, DOFIRETICK, DOLIMITEDCRAFTING, DOMOBLOOT, DOMOBSPAWNING, DOTILEDROPS, DOWEATHERCYCLE, KEEPINVENTORY, LOGADMINCOMMANDS, MAXCOMMANDCHAINLENGTH, MAXENTITYCRAMMING, MOBGRIEFING, NATURALREGENERATION, RANDOMTICKSPEED, REDUCEDDEBUGINFO, SENDCOMMANDFEEDBACK, SHOWDEATHMESSAGES, SPAWNRADIUS, SPECTATORSGENERATECHUNKS. | 예 |
set_pvp() | 반환 값이 비어있음 | [월드], boolean | InvalidWorldException | 월드에 PvP 가 가능한지 설정합니다. | 예 |
set_spawn() | 반환 값이 비어있음 | 위치 배열 [월드], x, y, z | InvalidWorldException CastException FormatException | 주어진 월드의 스폰 지점을 설정합니다. 어떤 경우에는 다른 플러그인이 임의로 스폰 지점을 바꾸는 경우도 있습니다. 이 경우에는 해당 플러그인의 명령어를 이용하여 스폰 지점을 설정하여야 합니다. | 예 |
set_world_border() | 반환 값이 비어있음 | 월드 이름, 매개 변수 배열 | CastException FormatException InvalidWorldException RangeException | 월드의 경계를 주어진 값으로 갱신합니다. 매개 변수 배열의 형식은 get_world_border() 의 형식과 같지만 주어진 "width" 가 적용될 "seconds" 를 추가로 지정할 수도 있습니다. | 예 |
set_world_time() | 반환 값이 비어있음 | [월드], 시간 | InvalidWorldException FormatException | 주어진 월드의 시간을 설정합니다. 0과 24000 사이의 값입니다. 아니라면 해당 범위에 들어가도록 값을 조정한 후 사용합니다. | 예 |
spawn_falling_block() | 정수 | 위치 배열, 블록 이름, | FormatException | 떨어지는 블록을 주어진 위치에 스폰합니다. 벡터 배열이 주어졌다면 해당 배열으로 속도를 설정합니다. 벡터 배열의 값은 실수일 수 있으며, 1.0 은 걸어가는 속도의 3배정도에 해당합니다. y 벡터엔 중력이 작용합니다. | 예 |
unload_chunk() | 반환 값이 비어있음 | [월드], x, z [월드], 위치 배열 | CastException FormatException InvalidWorldException | 주어진 월드 혹은 월드가 주어지지 않을 경우 플레이어의 월드에서의 청크를 언로드합니다. | 예 |
unload_world() | boolean | 월드, [저장 여부] | InvalidWorldException | 월드를 언로드합니다. 만약 저장 여부가 참이라면(기본값은 참) 월드를 저장하고, 작업 성공 여부를 반환합니다. | 예 |
world_info() | 배열 | 월드 | InvalidWorldException | 월드를 복사하는데 필요한 모든 정보를 키가 있는 배열으로 반환합니다. 키는 name, seed, environment, generator, worldtype, sealevel 입니다. | 예 |
XGUI
펑션 이름 | 반환 | 인수 | 예외 | 설명 | 제한됨 |
---|---|---|---|---|---|
x_launch_browser() | 반환 값이 비어있음 | url | IOException | 데스크톱의 기본 브라우저에 주어진 url 을 엽니다. 그래픽 UI 가 없는 시스템의 경우 예외를 발생시킵니다. | 예 |
페이지에 문제를 발견하셨나요? TEAM STEAK 디스코드의 #commandhelper-localize 채널에 글을 남겨 주세요.