매크로 입문 – 5-2. 예시를 통한 매크로 실전 (2)

 

계속해서 매크로 예시를 보도록 하겠습니다.

다음으로 볼 매크로는 약간 깁니다.

 

#showtooltip
/cast [nomod, equipped:
낚싯대낚시; [nomod, nochanneling:정신의 채찍정신의 채찍; [mod:ctrl,harm] 잿불비단 그물; [mod:alt] 마법 무효화

 

이는 제가 암흑 사제로 pvp를 할 경우 사용하는 매크로입니다.

단축키가 마우스 휠 위로이기 때문에 편한 스킬을 많이 넣고 씁니다.

 

1순위로 기능키 없고 낚싯대를 끼고 있다면 낚시를 합니다.

그래서 전 낚시 애드온 같은 거 필요 없습니다. 더블클릭보다 휠이 쉽거든요.

 

2순위로 기능키 없고 낚싯대 안 끼고 채찍 채널링 중이 아니라면 채찍을 씁니다.

 

그리고 ctrl을 누르고 있는데 대상이 적대적이라면 재봉 그물을 대상에게 던지고,

alt를 누른다면 대상에게 피아 무관하게 마법 무효화를 씁니다.

암사일 때는 아군 마해가 불가능하므로 아군 대상을 잡고 있다면

에러메세지가 나오면서 작동하지 않지만, 자신 마해를 할 경우도 생각해서 조건을 뺐습니다.

 

이번엔 약간 더 긴 매크로를 보도록 하겠습니다.

 

#showtooltip

/stopmacro [channeling:회개]

/cast [equipped:낚싯대] 낚시;[nomod,harm][nomod,@targettarget,harm][nomod,@focustarget,harm][nomod,@focus] 성스러운 일격; [harm][@targettarget,harm][@focustarget,harm][@focus] 신성한 불꽃

 

이것은 제가 수양 사제로 pve 속죄 힐링을 할 경우 사용하는 매크로입니다.

마찬가지로 단축키는 마우스 휠 위로이므로 낚시가 똑같이 들어갑니다.

회개 뿅뿅이는 끊어먹기 싫으므로 회개가 채널링 중이라면 매크로 정지 명령을 넣었습니다.

 

그리고 사제의 속죄힐이라는 것은 이제는 많이 알려졌지만서도,

성스러운 일격과 신성한 불꽃으로 딜링을 한 만큼 힐링이 되는 매커니즘입니다.

따라서 아군을 늘 대상으로 잡고 있는 힐러에게 타겟을 바꿔가며

공격 주문을 시전한다는 것은 깨나 정신사납고 비효율적인 방식입니다.

 

그러므로 조건문이 길어지게 되는데,

1순위 조건은 기능키 없고 현재 대상이 적대적이라면,

2순위 조건은 기능키 없고 현재 대상의 대상이 적대적이라면,

3순위 조건은 기능키 없고 주시 대상의 대상이 적대적이라면,

4순위 조건은 기능키 없고 주시 대상에게

가 됩니다.

 

4순위 조건에서 왜 harm 조건을 뺐냐 하면

4순위 조건까지 harm 조건을 넣게 되면 만약 4순위 조건까지 모두 거짓일 경우

성스러운 일격의 아이콘과 툴팁이 보이지 않게 됩니다.

 

따라서 제일 마지막 조건에는 harm을 빼줌으로 해서

실제로 4순위까지 내려온 상황에서 주시 대상이 아군일 경우에는 오류메세지가 나지만,

오히려 스킬 아이콘을 보는 것이 저에게는 더욱 중요하므로 그건 감수하기로 했습니다.

 

만약 이 모든 조건이 거짓이라면 앞의 매크로와 마찬가지로

세미콜론 이후로 넘어와서 신성한 불꽃을 저 조건에 맞는 대상에게 사용하게 됩니다.

 

왜 성스러운 일격에는 nomod 조건이 있는데 신성한 불꽃에는 mod 조건이 없느냐 하면,

세미콜론은 앞의 조건이 모두 거짓인 상황에서 넘어오게 되는 경우이므로

nomod 조건을 만족시키지 못해서 넘어왔다는 것은 기능키가 눌러져 있다는 뜻이 됩니다.

따라서 기능 키를 누르면 신성한 불꽃 이라는 것과 동일한 구조가 되는 것입니다.

 

실제로 기능키를 누르면 신성한 불꽃 이라는 조건을 달기 위해서는

신성한 불꽃 앞의 조건에 모두 [mod:기능키]를 넣어야 하므로 글자수도 많이 차지하게 됩니다.

 

저는 쉬프트-마우스 휠단축키를 시점 앞으로/뒤로로 사용하고 있는데다

힐링을 할 경우엔 alt ctrl 모두를 따로 써야 할 만큼 단축키가 부족하지 않아

기능키가 있는 경우와 없는 경우 두 가지로 단순히 나누었습니다.

 

 

 

 

 

 

 

 

 

 

제가 계속 사제 스킬로만 예시를 들어 사제를 하시지 않는 분들은

대체 이게 무슨 소용인가.. 하고 생각을 하실 수도 있지만,

 

저는 다만 이런 식으로 매크로를 작성할 수 있다는 걸 보여드리기 위함일 뿐

제 매크로를 모두 사용하십시오 라고 하는 것은 절대 아닙니다.

 

저보다 훨씬 효율적으로 매크로를 작성하셔서 사용하시는 분도 많으신데,

제가 감히 제 허접한 매크로를 강요해서야 쓰겠습니까.

 

더군다나 각 직업 게시판에는 각 직업에 유용한 매크로들이

상단 공지 글에 충분히 많이 올라와 있을 겁니다.

 

그런 매크로를 이제 무작정 가져다 이게 왜 이런지도 모르고 쓰시기 보다는

여러분도 얼마든지 응용하셔서 자신에게 맞는 매크로를 작성하실 수 있습니다.

 

원래 계획은 스크립트를 이용한 매크로까지 짚어보려고 했지만,

- 사실상 스크립트 매크로가 훨씬 더 강력할 수 밖에 없죠 -

제 체계 없는 지식은 실제로 lua를 다루시는 애드온 제작자 분들이나

프로그래머 분들에게 굉장히 우스울 소지가 다분한데다,

그 쪽으로 박학한 것도 아니고 그저 스크립트 해독이나 하고

간단한 매크로나 수준이라 관두기로 했습니다.

 

또한 제 창의성은 이미 나와 있는 매크로보다

월등하거나 독창적이거나 쓸모 있는 매크로를 생각해내지 못하더군요.

그런 아이디어가 있다면 만들어 볼 텐데 말입니다.

 

만약 여러분이 스크립트로 짜여진 매크로를 보시다가

대체 이 함수가 어떤 놈을 리턴하길래 요 모양으로 생겨먹었는지

그런게 궁금하시다면 와우위키에서 'api_함수이름' 으로 검색하시면 잘 나옵니다.

혹은 www.lua.org 에 방문하셔도 찾아보실 수 있을 겁니다.

 

이미 많은 분들이 충분히 잘 활용하시고 계신 매크로지만,

혹시나 매크로가 궁금하셨을 분들에게 조금이나마 도움이 됐으면 하는 바람으로 이만 마칩니다.