NeuroWhAI의 잡블로그
[ClickWar2] 스크립트 설명서 본문
[ClickWar2 스크립트란?]
칩을 생산할때 필요한 기술 중 프로그램 개발에 쓰이는 언어입니다.
[문법]
명령어 : 매개변수1, 매개변수2, ..., 매개변수n ;
이렇게 됩니다.
'(매개변수n)' 이렇게 괄호가 있는경우 굳이 없어도 된다는 의미입니다.
또한 변수를 사용할때
"이름" : 이렇게 사용하면 쓰기작업용이고
이름 : 이렇게 사용하면 읽기용 입니다.
[용어 설명]
숫자 : -1, -2, 0, 1, 2 등의 정수
문자열 : "Hello", "뭐지What is good." 등의 큰따옴표(")로 감싸진 값
값 : 숫자 또는 문자열
방향 : 문자열인데 특수하게 방향을 나타냅니다. "here", "up", "down", "left", "right"가 있습니다.
* '숫자'나 '문자열'은 변수로 대치할 수 있습니다.
[명령어의 종류와 사용법]
jump : 숫자 ;
ex) jump : -1 ; // jump명령어가 위치한 곳에서 바로 이전 명령어로 실행점을 옮깁니다.
ex) jump : 6 ; // jump명령어가 위치한 곳에서 6번째 뒤의 명령어로 실행점을 옮깁니다.
ex) jump : hi ; // hi라는 변수에 담긴 값만큼 실행점을 옮깁니다.
축약어 : jmp
jump if equals : 값1, 값2, 숫자 ;
ex) jump if equals : 123, 123, -1 ; // 123과 123은 같으므로 바로 이전 명령어로 실행점을 옮깁니다.
ex) jump if equals : 123, 456, 22 ; // 123과 456은 다르므로 아무것도 하지않고 바로 다음 명령어로 실행점을 옮깁니다.
ex) jump if equals : "Hi", "Hello", 22 ; // "Hi"와 "Hello"는 다르므로 아무것도 하지않고 바로 다음 명령어로 실행점을 옮깁니다.
축약어 : jmp==
jump if not equals : 값1, 값2, 숫자 ;
ex) jump if not equals : 123, 123, 22 ; // 123과 123은 같으므로 아무것도 하지않고 바로 다음 명령어로 실행점을 옮깁니다.
ex) jump if not equals : 123, 456, -1 ; // 123과 456은 다르므로 바로 이전 명령어로 실행점을 옮깁니다.
축약어 : jmp!=
jump if small : 숫자1, 숫자2, 숫자3 ;
ex) jump if small : 12, 123, 2 ; // 12는 123보다 작으므로 2번째 뒤의 명령어로 실행점을 옮깁니다.
ex) jump if small : 456, 123, -1 ; // 456은 123보다 작지 않으므로 아무것도 하지않고 바로 다음 명령어로 실행점을 옮깁니다.
축약어 : jmp<
jump if big : 숫자1, 숫자2, 숫자3 ;
ex) jump if big : 12, 123, 2 ; // 12는 123보다 크지 않으므로 아무것도 하지않고 바로 다음 명령어로 실행점을 옮깁니다.
ex) jump if big : 456, 123, 2 ; // 456은 123보다 크므로 2번째 뒤의 명령어로 실행점을 옮깁니다.
축약어 : jmp>
interrupt : 방향, 문자열, 값 ;
ex) interrupt : "down", "inputFromUp", 1 ; // 아래쪽 칩이 가지는 inputFromUp이라는 변수에 1을 넣습니다. (자기 칩 아니더라도 가능)
ex) interrupt : "left", "asdf", "data!!" ; // 왼쪽 칩이 가지는 asdf라는 변수에 "data!!"를 넣습니다. (자기 칩 아니더라도 가능)
축약어 : intr
add : 문자열, 값1, 값2 ;
ex) add : "sum", 12, 3 ; // 12와 3을 더한 값을 sum이라는 변수에 넣습니다.
ex) add : "text", "hello ", 123 ; // "hello "와 123을 합치면 "hello 123"이 되고 이 값을 text라는 변수에 넣습니다.
ex) add : "text", "hello ", "world!" ; // "hello "와 "world!"를 합치면 "hello world!"가 되고 이 값을 text라는 변수에 넣습니다.
축약어 : '없음'
subtract : 문자열, 숫자1, 숫자2 ;
ex) subtract : "sub", 12, 3 ; // 12에서 3을 뺀 값을 sub라는 변수에 넣습니다.
축약어 : sub
multiply : 문자열, 숫자1, 숫자2 ;
ex) multiply : "mul", 12, 3 ; // 12에 3을 곱한 값을 mul이라는 변수에 넣습니다.
축약어 : mul
attack : 방향 ;
ex) attack : "up" ; // 칩이 위치한 곳을 기준으로 위쪽의 타일을 공격합니다. (단, 규칙상으로 가능할때만)
ex) attack : "right" ; // 칩이 위치한 곳을 기준으로 오른쪽의 타일을 공격합니다. (단, 규칙상으로 가능할때만)
축약어 : atk
send : 방향 ;
ex) send : "down" ; // 칩이 위치한 곳을 기준으로 아래쪽으로 힘을 보냅니다. (단, 규칙상으로 가능할때만)
ex) send : "left" ; // 칩이 위치한 곳을 기준으로 왼쪽으로 힘을 보냅니다. (단, 규칙상으로 가능할때만)
축약어 : snd
variable : 문자열, 값 ;
ex) variable : "value", 123 ; // value라는 변수에 123을 대입합니다. (없으면 만듬)
ex) variable : "ㅋㅋㅋ6", "z..." ; // ㅋㅋㅋ6이라는 변수에 "z..."를 대입합니다. (없으면 만듬)
축약어 : var
get power : 문자열, 방향 ;
ex) get power : "power", "here" ; // 칩이 설치된 곳의 힘값을 power라는 변수에 넣습니다.
ex) get power : "asdf", "left" ; // 칩이 설치된 곳을 기준으로 왼쪽의 힘값을 asdf라는 변수에 넣습니다.
축약어 : pwr
get owner : 문자열, 방향 ;
ex) get owner : "owner", "here" ; // 칩이 설치된 곳의 주인 이름을 owner라는 변수에 넣습니다.
ex) get owner : "asdf", "left" ; // 칩이 설치된 곳을 기준으로 왼쪽의 주인 이름을 asdf라는 변수에 넣습니다.
축약어 : owr
get resource : 문자열1, 문자열2 ;
ex) get resource : "wow", "뭐지What" ; // 뭐지What이라는 플레이어의 자원 보유량을 wow라는 변수에 넣습니다.
축약어 : src
get area : 문자열1, 문자열2 ;
ex) get area : "aaa", "뭐지What" ; // 뭐지What이라는 플레이어의 영토 넓이를 aaa라는 변수에 넣습니다.
축약어 : ara
get sign : 문자열, 방향 ;
ex) get sign : "sign", "here" ; // 칩이 설치된 곳의 푯말을 sign이라는 변수에 넣습니다.
ex) get sign : "뀨뀨", "right" ; // 칩이 설치된 곳을 기준으로 오른쪽의 푯말을 뀨뀨라는 변수에 넣습니다.
축약어 : sgn
convert : 숫자 ;
ex) convert : 120 ; // 자신의 자원에서 120만큼 칩이 설치된 곳의 힘으로 변환합니다. (단, 자원이 충분할때만)
축약어 : cvt
to integer : 문자열, 문자열 ;
ex) to integer : "num", "123" ; // num이라는 변수에 "123"을 숫자로 변환한 값인 123을 넣습니다.
ex) to integer : "num", text ; // text라는 변수에 담긴 문자열을 숫자로 변환한 값을 num이라는 변수에 넣습니다.
축약어 : int
random : 문자열, (숫자1), (숫자2) ;
ex) random : "rnd" ; // rnd라는 변수에 랜덤한 숫자값을 넣습니다.
ex) random : "rnd", 5 ; // rnd라는 변수에 0~4 중의 숫자 중 랜덤한 값을 넣습니다.
ex) random : "rnd", 3, 7 ; // rnd라는 변수에 3~6 중의 숫자 중 랜덤한 값을 넣습니다.
축약어 : rnd
divide : 문자열, 숫자1, 숫자2 ;
ex) divide : "div", 4, 2 ; // div라는 변수에 4 나누기 2의 몫인 2를 넣습니다.
ex) divide : "div", -6, 4 ; // div라는 변수에 -6 나누기 4의 몫인 -1을 넣습니다.
축약어 : div
modulo : 문자열, 숫자1, 숫자2 ;
ex) modulo : "mod", 4, 2 ; // div라는 변수에 4 나누기 2의 나머지인 0을 넣습니다.
ex) modulo : "mod", -6, 4 ; // div라는 변수에 -6 나누기 4의 나머지인 -2를 넣습니다.
축약어 : mod
'자료' 카테고리의 다른 글
Visual Studio 2017 v15.8 Preview 3 소식 (0) | 2018.06.27 |
---|---|
Kanji RNN - 가짜 간지(일본어 한자) 생성기 (0) | 2018.06.23 |
[ClickWar2] 도움말 허브 (0) | 2018.06.07 |
사이버 지식 정보방(사지방) 노하우(?) - 이어폰 인식 등 (1) | 2018.06.06 |
티스토리 애드센스 서브(하위) 도메인 거부 오류 해결 (0) | 2018.06.03 |
Comments