앞에서 function 예시를 보여드리긴 했지만 낯선 요소가 많았을 겁니다.
세부적인 내용을 짚고 넘어 가겠습니다.
기본적인 형태는 이렇습니다.
앞의 예시를 다시 가져오면
CheckSpell 이 함수 이름
Spell 이 parameter 입니다.
%Spell% 부분이 낯설 텐데 sendinput에 전달할 내용이
'S','p','e','l','l' 이 아니고
parameter의 Spell을 의미하는 것을 나타내기 위한 표시입니다.
만약 이렇게 %% 기호를 빼먹게 되면
이렇게 그냥 "Spell"이 나오게 됩니다.
그러면 {} 중괄호(curly brackets/braces). 이 기호의 의미도 궁금해집니다.
이렇게 작성하고 실행해 보겠습니다.
는 'E','S','C' 각각의 key들을 순차적으로 입력하는 것이고
는 ESC key 하나를 누르는 것입니다.
즉 {} 안에 들어가는 것은 하나의 key 이름에 해당합니다.
그렇기 때문에
이런 것은 사용할 수 없습니다.
%% 는 parameter를 구분하는 문자
{}는 Key 이름을 구분하는 문자라고 보시면 됩니다.
------------------------------------------------------------------------------------------
이번에는 위에 sleep 300 이라고 되어 있었는데, 이 부분도 parameter로 바꿔보겠습니다.
이렇게 Delay라는 새로운 parameter를 추가해주면 Delay도 마법마다 서로 다르게 줄 수 있습니다.
parameter에 기본값(default value)을 주는 것도 가능합니다.
기본값은 parameter에 값을 주지 않았을 때 사용될 값입니다.
Delay := 300 이 표시는 Delay 자리에 아무것도 주지 않으면
300이라는 값을 기본으로 사용하겠다는 의미가 됩니다.
예시에서 "파력무참", "만공"은 Delay가 default value인 300으로 적용됩니다.