컴퓨터 지식 네트워크 - 컴퓨터 교육 - 월드 오브 워크래프트 매크로 편집, 전문가에게 해결을 요청하세요.

월드 오브 워크래프트 매크로 편집, 전문가에게 해결을 요청하세요.

함수를 정의하시겠습니까?

/run function SIS_M(a,b,c,d,e,f,g,type) --채팅 메시지를 보내기 위한 SIS_M 함수 정의

p>

SendChatMessage( --호출된 이 메서드는 "[HH:mm:ss] [AA]의 [BB]가 [CC]의 [DD]를 중단했습니다."와 같은 문자열을 보내는 데 사용됩니다.

"[" --타임스탬프에 대괄호 추가

..date("%H:%M:%S",a) --타임스탬프 형식 지정, 매개변수 a는 16진수 시간을 저장합니다. 현재 획득한 메시지

.."] [" -- 타임스탬프와 메시지 사이에 공백을 둡니다.

..b --매개변수 b는 플레이어 1의 이름을 저장합니다.

.."]\124cff71d5ff\124Hspell:" --플레이어 1이 시전한 스킬에 링크 코드를 추가합니다.

..d --매개변수 d는 스킬 시전의 ID 값을 저장합니다. by 플레이어 1

.."\124h[" --플레이어 1이 시전한 스킬 이름에 대괄호를 추가합니다.

..e - -매개변수 e는 플레이어의 이름을 저장합니다. 플레이어 1이 시전한 스킬

.."]\124h\124r Interrupted [" --중간에 "interrupted"를 추가합니다.

.c --매개변수 c는 이름을 저장합니다. of player 2

.."]\124cff71d5ff\124Hspell:" --플레이어 2가 시전한 스킬에 링크 코드를 추가합니다.

.f --매개변수 f는 ID를 저장합니다. 플레이어 2가 시전한 스킬의 값

.."\124h[" --플레이어 2가 시전한 스킬 이름에 대괄호를 추가합니다.

..g --매개변수 g는 플레이어 2가 시전한 스킬의 이름을 저장합니다.

.."]\124h\124r.", --끝에 마침표를 추가하고,

유형 --두 번째 SendChatMessage의 매개변수는 채팅 정보를 보내는 방법을 지정합니다.

) --문자열을 결합한 후 채팅 정보를 보냅니다.

end --함수 정의의 끝입니다.

두 번째 매크로

/run function EV_M(...) -- 전투 기록을 필터링하고 주문 시전을 방해하는 전투 기록만 남기는 EV_M 함수를 정의합니다. EV_M 함수의 매개변수는 "..."로 LUA 언어의 특수 정의 방식으로 매개변수 개수가 불확실함을 나타냅니다.

local a,v,_,b,_, _,c,_ ,d,e,_,f,g=...; --전투 기록에서 순서대로 데이터를 얻기 위해 일부 임시 변수를 정의합니다. "_" 변수는 LUA 예약 변수로 일반적으로 사용됩니다. 다중 할당을 위한 임시 변수

if (v=="SPELL_INTERRUPT" and SIS_M) then -- 임시 변수 v에서 얻은 메시지 유형이 "SPELL_INTERRUPT"이고 SIS_M 함수가 정의된 시기를 결정하고 if

SIS_M(a,b,c,d,e,f,g,"YELL")에서 명령문을 실행합니다. --주문 시전 프롬프트의 정보 문자열을 중단하려면 SIS_M 조합을 호출하세요. , 그리고 "YELL"(고함을 지르다) 형태로 보내세요.

end --if 문의 끝

end --함수 정의의 끝.

세 번째 매크로

/run if (MSG_F 아님) then -- MSG_F 프레임이 생성되었는지 확인

CreateFrame("Frame", "MSG_F ",UIParent); --메시지를 수신할 MSG_F 프레임워크 생성;

end --if 문의 끝

MSG_F:RegisterEvent("COMBAT_LOG_EVENT"); --MSG_F 메시지의 경우 프레임워크 등록에 의해 수신된 유형은 "COMBAT_LOG_EVENT"입니다.

MSG_F:SetScript( --MSG_F에 대한 이벤트를 설정하기 위해 실행된 스크립트

"OnEvent", --어떤 MSG_F 이벤트를 지정합니다. 스크립트 설정, 여기서는 "OnEvent"로 설정,

function(_,_,...) -- 함수 정의가 시작되고 매개변수 1과 2는 사용되지 않으며 LUA 예약 변수에 의해 수신됩니다.

p>

if (EV_M) then --if는 Lua 오류 메시지가 표시되는 것을 방지하고 두 번째 매크로가 사용되었는지 확인하는 데 사용됩니다.

EV_M(...) -- 호출 EV_M 함수 매칭 메시지를 받은 후 "YELL" 형식으로 채팅 메시지를 보냅니다.

end --end of if 문의

end --end of function 정의

) --SetScript가 종료됩니다.

위 단락에서는 이 세 가지 매크로의 기능을 각각 설명합니다. 물론 이 매크로의 효과에 만족하지 못하는 사람도 있을 수 있으므로 다음 내용을 시도해 보는 것이 좋습니다.

● 큰 소리로 외치는 것이 채팅 기록에 표시하는 것보다 더 나쁘다고 생각하는 사람들은 첫 번째 매크로를 다음과 같이 변경할 수 있습니다.

/run function SIS_M(a, b,c,d,e,f,g,_) DEFAULT_CHAT_MESSAGE:AddMessage("["..date("%H:%M:%S",a).."] ["..b.." ]'s\124cff71d5ff\124Hspell:"..d.."\124h["..e.."]\124h\124r ["..c.."]'s\124cff71d5ff\124Hspell:"..을 중단했습니다. f.."\124h["..g.."]\124h\124r.");end

● 어떤 사람들은 이 매크로 세트가 좋다고 생각합니다. 투기장. 주문을 발동한 사람은 투기장에 있는 적들이 그러한 정보를 보는 것을 원하지 않습니다. 그는 어떻게 해야 합니까? 상관없습니다. 두 번째 매크로를 변경하세요(인터럽트 캐스팅 프롬프트 매크로의 이전 버전이 세 번째 매크로로 변경되었다는 점에 유의하세요).

/run function EV_M(...) local a,v ,_, b,_,_,c,_,d,e,_,f,g=...;if (v=="SPELL_INTERRUPT" 및 SIS_M) 그러면 SIS_M(a,b,c,d,e ,f, g,"RAID");end end

이전 두 번째 매크로와 비교

/run function EV_M(...) local a,v,_,b, _,_,c,_,d,e,_,f,g=...;if (v=="SPELL_INTERRUPT" 및 SIS_M) 그러면 SIS_M(a,b,c,d,e,f,g, "YELL");end end

마지막 "YELL"이 "RAID"로 변경된 것을 볼 수 있습니다. WOW에는 여러 가지 채팅 방법이 있다는 것을 우리는 모두 알고 있습니다. " 말하기", "외침", "분대", "팀", "길드", "전장" 등을 포함합니다. 여기서 보낼 채팅 방법을 지정할 수 있습니다.

다음은 이 매크로 세트에 사용할 수 있는 모든 채팅 방법 목록입니다.

SAY say(/s)

EMOTE 표현(/e)

PARTY 팀 (/ p)

BATTLEGROUND (/bg)

GUILD (/g)

OFFICER (/o)

YELL 외침(/y)

RAID 팀(/ra)

RAID_WARNING 팀 알람(/rw)

설명하기가 좀 귀찮네요 다른 설명 없이 제가 직접 설명합니다

上篇: 비이온성 콘택트렌즈와 실리콘 하이드로겔 콘택트렌즈 중 어느 것이 더 좋나요? 下篇: 죄송합니다. X1XXX5XXX XX8XX7XXX XXX268XXX XX4XXX7XX X7X6X3X5X X3XXXXXX8X XX97123XX XXX48XXXX XX7536129
관련 내용