현재 와우의 API로는 매크로가 차단(해제)을 성공했는지를 확인할 수가 없습니다. 그래서 차단(해제)의 성공여부를 정확하게 확인하고 성공했을 때만 메시지를 출력하기 위해서는 전투로그의 이벤트를 확인해야 합니다. 매크로만으로 이를 완벽하게 처리할 수 없으므로, 100% 차단(해제)이 성공했을 때만 메시지를 출력하도록 Event Handler를 통한 간단한 애드온을 작성해 보겠습니다.

Addons 폴더내에 MySimpleAddon 폴더를 만듭니다. 예를 들면 아래와 같은 구조로 폴더가 만들어지겠죠.
C:/Program Files/World of Warcraft/Interface/AddOns/MySimpleAddon/

메모장을 열어서

위처럼 입력하고 MySimpleAddon.lua라는 이름으로 위에서 만들어 놓은 폴더 안에 저장하세요. (위 파일은 한글을 포함하고 있으므로 반드시 엔코딩을 UTF-8로 바꾼 후 저장해야 합니다. 그렇지 않으면 게임 내에서 한글이 깨져서 나옵니다.)

다시 메모장에

위처럼 입력하고 MySimpleAddon.toc라는 이름으로 위에 만들어 놓은 폴더 안에 저장하세요. (위 파일은 한글을 포함하고 있으므로 반드시 엔코딩을 UTF-8로 바꾼 후 저장해야 합니다. 그렇지 않으면 애드온 목록 툴팁의 한글이 깨져서 나옵니다.)

이제 MySimpleAddon폴더 안에

MySimpleAddon.lua
MySimpleAddon.toc

이렇게 두 개의 파일이 있습니다.

와우를 실행하고 애드온 목록에 MySimpleAddon 항목이 체크 되어 있나 확인하고 접속을 한 후 차단 스킬을 사용하면 메시지가 출력됩니다. 어떤 스킬을 사용하였는가는 문제가 되지 않습니다. 내가 사용한 스킬에 의해서 누군가가 시전 중인 스킬이 차단이 되면 메시지가 출력됩니다. (예, 도적의 발차기, 마법사의 마법 차단, 주술사의 날카로운 바람, 죽기의 정신 얼리기 등등) 추가로, 내가 사용한 스킬에 의해서 누군가의 마법, 저주, 독 등이 해제되어도 메시지를 출력합니다. (예, 드루이드의 자연의 치유력, 주술사의 정화, 사제의 정화 등등)

메시지가 출력되는 형식은

차단시:
  [발차기] 차단 홍길동의 [재생]
  [마법 차단] 차단 홍길동의 [성스러운 빛]

해제시:
  [자연의 치유력] 해제 홍길동의 [어둠의 권능: 고통]
  [정화] 해제 홍길동의 [회복]

입니다. 이 애드온은 전투로그의 이벤트를 확인하기 때문에 차단(해제)이 100% 성공한 경우에만 메시지를 출력합니다. 비록 스킬이 시전되었더라도 어떤 이유로든지 차단(해제)이 성공하지 못했다면 메시지는 출력되지 않습니다.

메시지 출력형식을 바꾸기를 원한다면 7,9라인에 있는 SendChatMessage를 적절히 수정하면 됩니다. 메시지는 일반채널에 출력하게 되어 있는데, "say" 부분을 아래의 예처럼 수정하면 출력되는 메시지의 채널을 변경할 수 있습니다.

"GUILD" 길드 채널
"INSTANCE_CHAT" 인스턴스 채널
"OFFICER" 길드 오피서 채널
"PARTY" 파티 채널
"RAID" 공격대 채널
"RAID_WARNING" 공격대 경고 채널
"YELL" 외치기
"WHISPER" 귓속말

"WHISPER"의 경우는 SendChatMessage()인자가 약간 다릅니다.
SendChatMessage("출력할 메시지", "WHISPER", nil, "귓말 받을 대상의 아이디")

게임내에서 쓰는 매크로는 아래의 예처럼 /run코드 부분없이 순수한 매크로로 명령어만으로 만들면 됩니다. 조건은 원하는 대로 알맞게 추가하거나 수정하세요.

/시전 [@mouseover,harm][harm] 차단스킬명

애드온 이름(MySimpleAddon)이 맘에 들지 않으면 원하는 이름으로 변경해도 됩니다. 단, 폴더명, lua 파일명, toc 파일명, toc 파일 내에 포함된 MySimpleAddon.lua 부분 이렇게 4곳의 이름은 같게 만드세요.

에디터로 파일을 직접 만들기 힘드신 분을 위해서 파일을 첨부했으니 다운로드 받으셔도 됩니다.

제가 몇달전에 매크로 게시판에 남겼던 "스킬 시전 시 귓말 넣는 방법"에 관련된 글도 있으니 참고하세요.

링크:
http://www.inven.co.kr/board/powerbbs.php?come_idx=2872&query=view&p=1&my=&category=&sort=PID&orderby=&where=&name=subject&subject=&content=&keyword=%B1%D3%B8%BB&sterm=&iskin=&mskin=&l=2886