-
-
Notifications
You must be signed in to change notification settings - Fork 17
Command Trigger_kr
서버에 새로운 명령어를 추가 합니다. (이미 있는 명령어와 겹치는경우 트리거로 생성된 명령어가 우선적으로 처리됩니다.)
아래의 명령어를 입력하세요:
/trg cmd <새명령어> <스크립트>
예제:
/trg cmd hi #MESSAGE "Hi"
생성이 되었다면 /hi
라는 명령어를 게임내에서 실행 해서 확인 해 보세요.
주의) 최신버전의 마인크래프트 에서는 소문자만 사용 가능합니다. (한글은 다행히도 예외 입니다.) 이는 마인크래프트 자체의 (1.17부터) 변화로 인한 것 이며 트리거 리엑터의 문제가 아닙니다.
그냥 생성시에 사용한 명령어를 그대로 치면 됩니다. (<스크립트> 부분은 없어도 상관없으나 있는경우 무시됩니다)
예를들어 방금 생성한 hi 트리거를 수정하려면:
/trg cmd hi
또한 CommandTrigger폴더 안에서 해당 스크립트를 찾아서 수정 하신 뒤 /trigger reload
명령어를 이용해도 됩니다.
삭제하려면 /trigger delete cmd hi
나 폴더 에서 삭제 후 리로드 하시면 됩니다.
3.1.0 버전부터 탭 완성 기능을 지원 합니다. 아무거나명령어.json 안에 보시면
{
"sync": false,
"aliases": ["this", "andthat"],
"permissions": ["x.y.z", "y.z.z"],
"tabs": [{
"hint": "<set/add/remove>",
"candidates": "set,add,remove"
},
{
"hint": "<player name>",
"candidates": "$playerlist"
},
{
"hint": "<money/gold/credit>",
"candidates": "money,gold,credit"
},
{
"hint": "amount"
}
]
}
tabs
라는 항목이 새로 생긴걸 알 수 있습니다.
하지만 파일을 직접 수정하는건 추천드리지 않으며 추가할때는 가급적이면 /trg cmd <name> tab
명령어를 사용하세요.
예제) /trg cmd myCommand tab <a,b,c>:a,b,c <playername>:$playerlist this,it,that
:
의 왼쪽에 있는 것은 힌트 이며 :
의 오른쪽에 있는것들은 완성값 에 쓰일 값들 입니다.
힌트는 하나의 문자열
이며 플레이어가 방금 막 스페이스바를 넣었을때 나타나는 문구 입니다.
막 스페이스바를 넣었다는 뜻은 구문값을 넣기위해 스페이스바를 넣었지만 아직 값 자체는 넣지 않은 상태를 말합니다. 예를들어 아래와 같이 <a,b,c>가 짖은 회색으로 나오게 됩니다.
/myCommand <a,b,c>
그리고 이 힌트의 자리에 뭔가를 작성하면 그 즉시 완성값으로 변경 됩니다. 완성값에 대한 설명은 아래에 있습니다.
플레이어가 인자값의 위치에 뭔가를 입력하면 완성값 목록중 그 알파벳으로 시작하는 완성값 목록이 나열 됩니다.
완성값들을 나눌때 반점 ,
이 사용된것을 확인 해 주세요.
만약 완성값에 this,it,that
, 로 설정이 되어있고 t
를 유저가 입력 했다면
/myCommand a wysohn t
this
와 that
탭완성 리스트에 나타나게 되고 유저는 키보드 화살표키와 탭키로 탭완성 기능을 사용 할 수 있게됩니다.
만약 기존 플러그인 커맨드와 동일한 이름으로 커맨드 트리거를 생성하면, 해당 커맨드를 "오버라이딩" 하고 새로운 동작을 추가 하게 됩니다. 만약 덮어씌워진 원본 커맨드를 원래의 인자와 함께 실행하려면 다음을 사용하세요:
original.forward()
원본 커맨드로 전달하기 전에 인자를 수정하려면 다음을 사용하세요:
original.run("arg1", "arg2")
필요한 만큼 많은 인자를 전달할 수 있습니다. 위의 스크립트는 게임 내에서 /the_original_command arg1 arg2
커맨드와 동등합니다.
완성값의 경우 직접 값을 입력하지 않고 동적인 값을 사용 할 수도 있습니다. 이는 지원 예정이며 현재까지는 단 하나만 존재합니다.
Placeholder | 설명 |
---|---|
$playerlist | 이름 그대로 현재 접속중인 플레이어 이름 목록을 가져옵니다. |
command 트리거 내에서 사용 가능한 내부 변수 목록입니다. 또한 Third Party Internal Variables 에 있는 내부 변수 들 역시 사용 가능합니다.
변수 | 타입 | 설명 |
---|---|---|
event | PlayerCommandPreprocessEvent | 해당 트리거를 작동시킨 이벤트 입니다. |
player | Player | 트리거를 작동시킨 플레이어 |
command | String | 명령어 이름 입니다. |
args | Array<String> | 명령어 뒤의 인자값 입니다. args[0] 가 첫번째, args[1] 가 두번째, ... |
argslength | Number | 인자값의 수 입니다. args.length 와 같습니다. |
original | Link |
변수가 뭔지 잘 모른다면 변수
Basic Syntax (한) (рус)
1. Getting Started (한) (рус)
S.L. In-game Editor (한) (рус)
List and usage of Triggers / 트리거 목록과 사용 방법:
- Click/Walk Trigger (한) (рус)
- Command Trigger (한) (рус)
- Area Trigger (한) (рус)
- Named Trigger (한) (рус)
- Custom Trigger (한) (рус)
- Inventory Trigger (한) (рус)
- Repeating Trigger (한) (рус)
- List of Executors / 실행자(Executor) 목록
4. Placeholders (한) (рус)
- Using PlaceholderAPI / PlaceholderAPI 사용법
- List of Placeholders / 플레이스 홀더(Placeholder) 목록
5. Conditions (한) (рус)
- Creating Conditions / 조건식 만들기
- Boolean Expressions / 부울 (Boolean) 표현 방법
- Logical Operators / 연산자 사용법
- IF statement / IF 조건문
- Null Checking / Null 검사법
- Switch Case / Switch Case 조건
- Local Variables / 지역 변수
- Global Variables / 전역 변수
S.L. Understanding Exceptions (한) (рус)
- Using Methods / 메소드 사용법
- Special Data Types / 특수한 데이터 형식
- Reading Javadocs / Javadoc 읽기
- Handling Enum / Enum 데이터 처리
- Lambda Expresion / Lambda(람다) 식 사용법
- Creating an empty array / 빈 배열 만들기
- Storing data into array / 배열에 데이터값 저장하기
- Read data from array / 배열에서 데이터 읽기(불러오기)
- WHILE loop / WHILE 반복문
- FOR loop / FOR 반복문
- Iterating Collection / Collection 형식의 변수 순회법
- #BREAK executor / #BREAK 실행자
- #CONTINUE executor / #CONTINUE 실행자
- #CANCELEVENT executor / #CANCELEVENT 실행자
- Setting Sync/Async Mode / 동기, 비동기 모드 전환
- Custom Trigger
- Area Trigger
11. Custom Executors (한) (рус)
12. Plugin Access (한) (рус)
- Check And Use / 플러그인 존재여부 확인
- Get Third Party Plugin / 제 3자 플러그인 불러오기
- Check Eligibility / 호환성 확인하기
- Use the Plugin / 플러그인 사용하기
13. IMPORT Statement (한) (рус)
- Creating new instance / 새 인스턴스 생성하기
- Accessing static method / 종속 메소드 불러오기
- Accessing static field / 종속 Enum 불러오기
14. IS Statement (한) (рус)
- Understanding / 이해하기
- Understanding Instance / 인스턴스 이해하기
- Understanding Superclass / 부모클래스 이해하기
- Understanding Subclass / 자식클래스 이해하기
- Using IS Statement / IS조건연산자 사용하기
15. TRY-CATCH Statement (한) (рус)
- Understanding TRY-CATCH Exception Handling / TRY-CATCH 예외처리 이해하기
16. Interface Casting (한) (рус)
module x.x does not "opens x.x" problem
- List of Custom Events