▶ Lua Script ◀ 사용법 및 공유 Ⅱ

 

 

 

 

 

 

 ■ 루아 스크립트 사용 방법 (설치 방법) / 삭제 방법 설명

 

 

1첫번째 방법 : 보통의 월드오브워크레프트 설치 시 위치

 

C: / Program Files (x86) / World of Warcraft / Interface / AddOns / 로 가셔서

 

본인이 필수적으로 사용 하고있는 애드온 폴더의 파일들 중에 확장자 또는 유형이 Lua 로 지정되어있는

 

파일을 메모장으로 열기 후, 아래의 루아 스크립트 중 필요한 부분을 복사 붙여 넣기 하시고 저장 하시면 됩니다.

 

 

2두번째 방법 : 첨부 파일의 폴더 World 라는 영문명을 본인이 희망하는 동일명으로 수정하여

 

보통의 월드오브워크레프트 설치 시 위치

 

C: / Program Files (x86) / World of Warcraft / Interface / AddOns /  안에 넣어 주시면 작동 합니다.

 

(다운로드 받은 파일 그대로 스크립트만 추가 해서 사용하셔도 정상 작동 합니다)

 

 

World 라는 영문 명은 총 5군데 이며

 

1. 폴더명, 2. 파일2개 명, 3. TOC 확장자 또는 유형 파일을 메모장으로 열면,

 

## Title: World 와 World.lua 명 으로 명시되어있습니다.

 

원하는 루아 스크립트(Lua Script)를 복사 붙여넣기 하시고 저장 하시면 작동 합니다.

 

 

3삭제 방법 : 기존의 애드온을 삭제 하듯이 폴더 자체를 삭제 하시거나, 스크립트 내용 중에 불필요한

 

부분을 삭제 후 저장 하시고 /reload 를 채팅창 입력 후 엔터 또는 클라이언트 재접속을 하시면 삭제 됩니다.

 

 

 

 ■ 각종 창 또는 프레임 크기, 위치 조정 해보기

 

 

채팅창에 /fstack 또는 /프레임구성 을 입력 후 엔터 를 치시면,

 

마우스오버 위치에 있는 창 또는 프레임의 구성요소 이름들을 툴팁으로 알 수 있습니다.

 

해당 위치에 마우스오버 한 채 Alt 키를 클릭 해보시면 프레임 구성요소들의 이름을, 영역 지정하여 알려줍니다.

 

또한 채팅창에 /reload 을 입력 후 엔터를 치시면, 본인이 입력하고 저장 한 스크립트를 바로 볼 수 있습니다.

 

 

1. 프레임의 크기를 조정 해봅시다.

 

모든 프레임의 기본 Scale 값은 1 =100% 이며, 1.5 = 150%, 2 = 200%, 2.5 = 250% 라고 표현합니다.

 

framename:SetScale(1.1)     -- 수정 및 저장

 

프레임이름:SetScale(1.1), 프레임이름:SetScale(1.5), 프레임이름:SetScale(2), 프레임이름:SetScale(2.5)

 

등 원하는 크기로 수정이 가능합니다.

 

 

2. 프레임의 위치를 이동 시켜 봅시다.

 

framename:ClearAllPoints()     -- 위치 값 초기화
framename
:SetPoint("CENTER", X, Y)     -- 위치 값 지정
framename
.SetPoint = function() end     -- 위치 값 고정

 

프레임이름:ClearAllPoints()
프레임이름:SetPoint("CENTER", X, Y)     -- ("CENTER", X좌표 = 가로 값의 위치, Y좌표 = 세로 값의 위치)
프레임이름.SetPoint = function() end

 

X좌표 값과 Y의 좌표 값은 + 는 표기를 하지 않고, - 만 표기를 합니다. ex : ("CENTER", X, -Y)

 

 

 ■ R, G, B, Alpha 값 ( 빨강, 녹색, 파랑, 투명도)


빨: (1,0,0)

주: (1,0.323,0)

노: (1,1,0)

초: (0,1,0)

파: (0,0,1)

짙은 보: (0.191,0,0.331)

보: (0.484,0.127,0.51)

검: (0,0,0)

흰: (1,1,1)

 

 ■ 채팅창 투명도 설정


DEFAULT_CHATFRAME_ALPHA = 0                    --- 배경 투명도 설정


CHAT_FRAME_TAB_SELECTED_MOUSEOVER_ALPHA = 1;   --- 탭 투명도 설정

CHAT_FRAME_TAB_SELECTED_NOMOUSE_ALPHA = 0;

CHAT_FRAME_TAB_ALERTING_MOUSEOVER_ALPHA = 0;

CHAT_FRAME_TAB_ALERTING_NOMOUSE_ALPHA = 0;

CHAT_FRAME_TAB_NORMAL_MOUSEOVER_ALPHA = 0;

CHAT_FRAME_TAB_NORMAL_NOMOUSE_ALPHA = 0; 


 

 ■ 채팅창 페이드 인/아웃 시간 설정

CHAT_TAB_SHOW_DELAY = 1;                      

CHAT_TAB_HIDE_DELAY = 0;

CHAT_FRAME_FADE_TIME = 0;

CHAT_FRAME_FADE_OUT_TIME = 0;


 

 ■ 각종 게임 내 폰트 글씨 설정


for i = 1, 7 do

    local chat = _G["ChatFrame"..i]

    local font, size = chat:GetFont()

    chat:SetFont(font, 11, "OUTLINE")         --- 채팅

    chat:SetShadowOffset(0, 0)

    chat:SetShadowColor(0, 0, 0, 0)


CHAT_FONT_HEIGHTS = {13,12,11,10,9,8}   --- 채팅창 글씨 크기 크기 설정 새 값으로 지정


QuestFont:SetFont(STANDARD_TEXT_FONT, 11)               --- 퀘스트 창

QuestFontNormalSmall:SetFont(STANDARD_TEXT_FONT, 11, "THICKOUTLINE")


ItemTextFontNormal:SetFont(STANDARD_TEXT_FONT, 11, "THICKOUTLINE")     --- 아이템 툴팁


GameTooltipText:SetFont(STANDARD_TEXT_FONT, 11, "THICKOUTLINE")        --- 설명 툴팁

GameTooltipTextSmall:SetFont(STANDARD_TEXT_FONT, 11, "THICKOUTLINE")

GameTooltipHeaderText:SetFont(STANDARD_TEXT_FONT, 12, "THICKOUTLINE")


PlayerName:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")            --- 플레이어 유닛프레임 이름

CastingBarFrame.Text:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")  --- 캐스팅바 이름


TargetFrameTextureFrameName:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")  --- 타겟 유닛프레임 이름

TargetFrameSpellBar.Text:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")     --- 캐스팅바 이름


FocusFrameTextureFrameName:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")   --- 주시 유닛프레임 이름

FocusFrameSpellBar.Text:SetFont(STANDARD_TEXT_FONT, 11, "OUTLINE")      --- 캐스팅바 이름


end


 

 ■ 적군 / 아군 이름표 이름 설정


local f = CreateFrame("Frame")               --- 이름표 위 이름 폰트

f:RegisterEvent("PLAYER_LOGIN")

f:SetScript("OnEvent", function(self, event, unit) 

 

local function SetFont(obj, optSize)            

   local fontName= obj:GetFont() 

   obj:SetFont(STANDARD_TEXT_FONT,13,"OUTLINE")  --- 글씨체, 크기, 아웃라인 유무

end

 

SetFont(SystemFont_LargeNamePlate,10)

SetFont(SystemFont_NamePlate,10)

SetFont(SystemFont_LargeNamePlateFixed,10)

SetFont(SystemFont_NamePlateFixed,10) 

end)



local f = CreateFrame("Frame")                --- 이름표 밑 시전바 폰트

f:RegisterEvent("NAME_PLATE_UNIT_ADDED")

f:SetScript("OnEvent", function(self, event, unit)

if self:IsForbidden() then return end


    local p = C_NamePlate.GetNamePlateForUnit(unit).UnitFrame

    local fontName, fontHeight, fontFlags = p.castBar.Text:GetFont()

    p.castBar.Text:SetFont(STANDARD_TEXT_FONT,13,"OUTLINE") --- 글씨체, 크기, 아웃라인 유무

end)

 


 ■ 적군 / 아군 이름표 이름 색깔 설정 (인스턴스 던전 안 에서는 블리자드 패치로 인해 작동 안됨)


hooksecurefunc("CompactUnitFrame_UpdateName", function(frame)

 if not ShouldShowName(frame) then

  frame.name:Hide()

 else

  frame.name:SetText(GetUnitName(frame.unit, true))


  if CompactUnitFrame_IsTapDenied(frame) then

   frame.name:SetVertexColor(0.5, 0.5, 0.5)

  elseif frame.optionTable.colorNameBySelection then

   if UnitIsPlayer(frame.unit) then

    if UnitIsEnemy("player", frame.unit) then

     frame.name:SetVertexColor(1,0,0) --- 적, 빨간색

    else

     frame.name:SetVertexColor(1,1,1) --- 아군, 하얀색

    end

   elseif frame.optionTable.considerSelectionInCombatAsHostile and CompactUnitFrame_IsOnThreatListWithPlayer(frame.displayedUnit) then

    frame.name:SetVertexColor(1.0, 0.0, 0.0)

   else

    frame.name:SetVertexColor(UnitSelectionColor(frame.unit, frame.optionTable.colorNameWithExtendedColors))

   end

  end


  frame.name:Show()

 end

end) 



 ■ 이름표 크기 변경 시 이름(글씨) 크기는 고정


DefaultCompactNamePlateFrameSetUpOptions.useLargeNameFont=false;



 ■ 캐릭터 하단, 자원 표시 바 밑의 직업 특수 자원 바 크기 조정


ClassNameplateBarWindwalkerMonkFrame:SetScale(1.85)  --- 수도사


ClassNameplateBarPaladinFrame:SetScale(1.85)         --- 성기사

     
ClassNameplateBarRogueDruidFrame:SetScale(1.85)      --- 도적


ClassNameplateBarMageFrame:SetScale(1.85)            --- 마법사


ClassNameplateBarWarlockFrame:SetScale(1.85)         --- 흑마법사


DeathKnightResourceOverlayFrame:SetScale(1.85)       --- 죽음의 기사

 

 ■ 초상화 PVP 아이콘 숨김

 

PlayerPVPIcon:SetAlpha(0)

TargetFrameTextureFramePVPIcon:SetAlpha(0)

FocusFrameTextureFramePVPIcon:SetAlpha(0)


 

 ■ 레이드 프레임 이름 뒤에 써있는 서버명 숨기고 폰트 설정

 

hooksecurefunc("CompactUnitFrame_UpdateName",function(frame)

if frame and not frame:IsForbidden() then

local frame_name = frame:GetName()

if frame_name and frame_name:match("^CompactRaidFrame%d") and frame.unit and frame.name then

local unit_name = GetUnitName(frame.unit,true)

if unit_name then

frame.name:SetText(unit_name:match("[^-]+"))

                                frame.name:SetFont(STANDARD_TEXT_FONT , 9, "OUTLINE") --- 글씨체, 크기, 아웃라인 유무)

end

end

end

end)


 

 ■ 이름표 이름 뒤에 써있는 서버명 숨김

 

hooksecurefunc("CompactUnitFrame_UpdateName", function(frame)

    if ( string.match(frame.displayedUnit,"nameplate") ~= "nameplate") then return end

    

    if ( not ShouldShowName(frame) ) then

        frame.name:Hide()

    else

        local newName = GetUnitName(frame.displayedUnit, false) or UNKNOWN

        frame.name:SetText(newName)

    end

end)


 

 ■ 매크로 지정 스킬 매크로명(글씨) 숨김 (SetAlpha 1사용, 0미사용)

 

for i=1, 12 do

    _G["ActionButton"..i.."Name"]:SetAlpha(0) --- 메인

    _G["MultiBarBottomRightButton"..i.."Name"]:SetAlpha(0) --- 아래 오른쪽

    _G["MultiBarBottomLeftButton"..i.."Name"]:SetAlpha(0) --- 아래 왼쪽

    _G["MultiBarRightButton"..i.."Name"]:SetAlpha(0) --- 오른쪽

    _G["MultiBarLeftButton"..i.."Name"]:SetAlpha(0) --- 왼쪽

end

 


 ■ 단축키 지정 칸 단축키명(글씨) 숨김 (SetAlpha 1사용, 0미사용)

 

for i=1, 12 do

    _G["ActionButton"..i.."HotKey"]:SetAlpha(0) --- 메인

    _G["MultiBarBottomRightButton"..i.."HotKey"]:SetAlpha(0) --- 아래 오른쪽

    _G["MultiBarBottomLeftButton"..i.."HotKey"]:SetAlpha(0) --- 아래 왼쪽

    _G["MultiBarRightButton"..i.."HotKey"]:SetAlpha(0) --- 오른쪽

    _G["MultiBarLeftButton"..i.."HotKey"]:SetAlpha(0) --- 왼쪽

end

 


 ■ 그룹 넘버 창 숨김

 

PlayerFrameGroupIndicator.Show = function() return end


 

 ■ 모험 안내서, 선택하지 않은 특성 알림 팝업 숨김

 

MainMenuMicroButton_SetAlertsEnabled(false)

 


 ■ 솔로 플레이시 레이드 프레임(자신) 표시

 

CompactRaidFrameManager:Show()                 --- 레이드 프레임 매니저

CompactRaidFrameManager.Hide = function() end


CompactRaidFrameContainer:Show()               --- 레이드 프레임 표시

CompactRaidFrameContainer.Hide = function() end



 ■ 유닛프레임 이름표 뒤 배경 색상 설정

 

PlayerFrameBackground:SetColorTexture(0,0,0)           --- 플레이어

TargetFrameNameBackground:SetColorTexture(0.4,0,0.4)   --- 타겟

FocusFrameNameBackground:SetColorTexture(0.4,0,0.4)    --- 주시


 

 ■ 유닛프레임 하단 또는 상단의 버프 / 디버프 창 크기 조정

 

local LARGE_AURA_SIZE = 25 --- 내가걸은 버프&디버프 대상/주시, 기본 크기 21

local SMALL_AURA_SIZE = 21 --- 남이 걸은 버프&디버프 대상/주시, 기본 크기 17

local AURA_OFFSET_Y = 3

local NUM_TOT_AURA_ROWS = 3

local AURA_ROW_WIDTH = 126; --122

hooksecurefunc("TargetFrame_UpdateAuraPositions", function(self, auraName, numAuras, numOppositeAuras, largeAuraList, updateFunc, maxRowWidth, offsetX, mirrorAurasVertically)

-- 

maxRowWidth = AURA_ROW_WIDTH

local offsetX = 2

-- 

local size;

local offsetY = AURA_OFFSET_Y;

-- 

local rowWidth = 0;

local firstBuffOnRow = 1;

for i=1, numAuras do

-- 

if ( largeAuraList[i] ) then

size = LARGE_AURA_SIZE;

offsetY = AURA_OFFSET_Y + AURA_OFFSET_Y;

else

size = SMALL_AURA_SIZE;

end

-- 

if ( i == 1 ) then

rowWidth = size;

self.auraRows = self.auraRows + 1;

else

rowWidth = rowWidth + size + offsetX;

end

if ( rowWidth > maxRowWidth ) then

-- 

-- 

updateFunc(self, auraName, i, numOppositeAuras, firstBuffOnRow, size, offsetX, offsetY, mirrorAurasVertically);

rowWidth = size;

self.auraRows = self.auraRows + 1;

firstBuffOnRow = i;

offsetY = AURA_OFFSET_Y;

if ( self.auraRows > NUM_TOT_AURA_ROWS ) then

-- 

-- note: don't have to check if we have tot because AURA_ROW_WIDTH is the default anyway

maxRowWidth = AURA_ROW_WIDTH;

end

else

updateFunc(self, auraName, i, numOppositeAuras, i - 1, size, offsetX, offsetY, mirrorAurasVertically);

end

end

end)

 


 ■ 툴팁 이름 색상을 각 직업 색상에 맞게 설정

 

GameTooltip:HookScript("OnTooltipSetUnit", function(GameTooltip)

--print("OnTooltipSetUnit")

local _, unit = GameTooltip:GetUnit()

--print(unit)

if UnitIsPlayer(unit) then

--print("UnitIsPlayer")

local _, class = UnitClass(unit)

--print(class)

local color = class and (CUSTOM_CLASS_COLORS or RAID_CLASS_COLORS)[class]

if color then

local text = GameTooltipTextLeft1:GetText()

--print(text)

GameTooltipTextLeft1:SetFormattedText("|cff%02x%02x%02x%s|r", color.r * 255, color.g * 255, color.b * 255, text:match("|cffxxxxxx(.+)|r") or text)

end

end

end)


 

 ■ 회색 아이템 자동 판매 및 아이템 자동 수리

 

local function OnEvent(self, event)

-- 자동 판매

totalPrice = 0

for myBags = 0,4 do

for bagSlots = 1, GetContainerNumSlots(myBags) do

CurrentItemLink = GetContainerItemLink(myBags, bagSlots)

if CurrentItemLink then

_, _, itemRarity, _, _, _, _, _, _, _, itemSellPrice = GetItemInfo(CurrentItemLink)

_, itemCount = GetContainerItemInfo(myBags, bagSlots)

if itemRarity == 0 and itemSellPrice ~= 0 then

totalPrice = totalPrice + (itemSellPrice * itemCount)

UseContainerItem(myBags, bagSlots)

end

end

end

end

if totalPrice ~= 0 then

DEFAULT_CHAT_FRAME:AddMessage("회색 아이템 판매로 벌어들인 금액: "..GetCoinTextureString(totalPrice), 255, 255, 255)

end


--- 자동 수리

if (CanMerchantRepair()) then

repairAllCost, canRepair = GetRepairAllCost();

if (canRepair and repairAllCost > 0) then

-- 길드 금고 금액 사용

guildRepairedItems = false

if (IsInGuild() and CanGuildBankRepair()) then

-- Checks if guild has enough money

local amount = GetGuildBankWithdrawMoney()

local guildBankMoney = GetGuildBankMoney()

amount = amount == -1 and guildBankMoney or min(amount, guildBankMoney)


if (amount >= repairAllCost) then

RepairAllItems(true);

guildRepairedItems = true

DEFAULT_CHAT_FRAME:AddMessage("Equipment has been repaired by your Guild", 255, 255, 255)

end

end

-- 내 금고 금액 사용

if (repairAllCost <= GetMoney() and not guildRepairedItems) then

RepairAllItems(false);

DEFAULT_CHAT_FRAME:AddMessage("장비 수리에 소모된 금액: "..GetCoinTextureString(repairAllCost), 255, 255, 255)

end

end

end

end

local f = CreateFrame("Frame")

f:SetScript("OnEvent", OnEvent);

f:RegisterEvent("MERCHANT_SHOW");


 

 ■ UI 정리용 화면안에 선 긋기

 

SLASH_EA1 = "/al"    --- 채팅창 명령어


local f


SlashCmdList["EA"] = function()

if f then

f:Hide()

f = nil

else

f = CreateFrame('Frame', nil, UIParent) 

f:SetAllPoints(UIParent)

local w = GetScreenWidth() / 64

local h = GetScreenHeight() / 36

for i = 0, 64 do

local t = f:CreateTexture(nil, 'BACKGROUND')

if i == 32 then

t:SetColorTexture(1, 1, 0, 0.5)

else

t:SetColorTexture(1, 1, 1, 0.15)

end

t:SetPoint('TOPLEFT', f, 'TOPLEFT', i * w - 1, 0)

t:SetPoint('BOTTOMRIGHT', f, 'BOTTOMLEFT', i * w + 1, 0)

end

for i = 0, 36 do

local t = f:CreateTexture(nil, 'BACKGROUND')

if i == 18 then

t:SetColorTexture(1, 1, 0, 0.5)

else

t:SetColorTexture(1, 1, 1, 0.15)

end

t:SetPoint('TOPLEFT', f, 'TOPLEFT', 0, -i * h + 1)

t:SetPoint('BOTTOMRIGHT', f, 'TOPRIGHT', 0, -i * h - 1)

end

end

end

 


 ■ 리로드(/reload) 명령어 단축

 

SlashCmdList['RELOAD'] = function() ReloadUI() end

SLASH_RELOAD1 = '/rl'   --- 채팅 창 명령어


 

 ■ 전투 시작 / 전투 종료 알림

 

local posX = 0 --- 위치 x

local posY = -37 --- 위치 y

local TimeToShow = 1 --- 표시할 시간

local FontSize = 15 --- 글자 크기


local addon = CreateFrame("frame")

local CombatStartStop = addon:CreateFontString()

CombatStartStop:SetFont(STANDARD_TEXT_FONT, FontSize,"OUTLINE")

CombatStartStop:SetVertexColor(1, 1, 1)

CombatStartStop:SetPoint("CENTER",nil,"CENTER",posX,posY)


local etime = 0

addon:RegisterEvent("PLAYER_REGEN_DISABLED")

addon:RegisterEvent("PLAYER_REGEN_ENABLED")


addon:SetScript("OnEvent",function(self,event)

    local t = "전 투 종 료"

    if event == "PLAYER_REGEN_DISABLED" then

        t = "전 투 시 작"

    end

    etime = GetTime()+ TimeToShow

    CombatStartStop:SetText(t)

    CombatStartStop:Show()

    addon:SetScript("OnUpdate",function()

        if GetTime() > etime then

            CombatStartStop:Hide()

            addon:SetScript("OnUpdate",nil)

        end

    end)    

end)


 

 ■ 그 밖의 SetCVar 명령어 모음(사용 1 또는 값 , 미사용 0)             ※ SetCVar 명령어는 신중히 사용하십시오. 해당 명령어로 인해 되돌리지 못하는 부분이 발생할 수 있습니다.


local Frame = CreateFrame("Frame")

Frame:RegisterEvent("PLAYER_LOGIN")

Frame:SetScript("OnEvent", function(...)


 SetCVar("nameplateMaxDistance", 40) --- 이름표 사거리 40m 고정


 SetCVar("showArenaEnemyFrames", 1) --- 투기장 적 프레임 숨김


 SetCVar("nameplateShowSelf", 1)       --- 플레이어 자원 표시

 SetCVar("nameplateShowAll", 1)        --- 항상 이름표 표시


 SetCVar("nameplatePersonalShowAlways", 1)  --- 개인자원 항상 표시

 SetCVar ("nameplateSelfTopInset", .51)     --- 개인자원 표시 고정

 SetCVar ("nameplateSelfBottomInset", .43)

 

 SetCVar("WorldTextScale", 1.25)    --- 데미지 폰트 크기 조정


 SetCVar ("nameplateSelfScale", 0.9)    --- 플레이어(본인) 이름표 크기

 SetCVar ("nameplateSelfAlpha", 1)    --- 플레이어(본인) 이름표 투명도


 SetCVar ("nameplateSelectedScale", 0.8)   --- 선택 이름표 크기

 SetCVar ("nameplateSelectedAlpha", 1)   --- 선택 이름표 투명도


 SetCVar ("nameplateMinScale", 0.8) --- 비 선택 이름표 크기

 SetCVar ("nameplateMaxScale", 0.8)

 SetCVar("nameplateMinAlpha", 0.6) --- 비 선택 이름표 투명도

 SetCVar("nameplateMaxAlpha", 0.6) 


 SetCVar("cameraDistanceMaxZoomFactor", 2.6)  --- 화면 시야 최대로 확장


 SetCVar("ShowClassColorInNameplate", 1)          --- 적군 이름표 직업 색상

 SetCVar("ShowClassColorInFriendlyNameplate", 1)  --- 아군 이름표 직업 색상


 SetCVar("nameplateOtherTopInset", -1)     --- 이름표 화면 밖으로 고정 

 SetCVar("nameplateOtherBottomInset", -1)


end)



 ■ SetCVar 명령어 기본값 으로 설정 또는 초기화


/console cvar_default   --- 게임 내 채팅창에 입력

게임의 모든 설정을 기본값으로 돌리지만 사용에 주의를 요합니다.


 ■ 1.기본 재사용 대기 시간 색상 지정 및 글씨 설정 (2번과 함께 사용시 OmniCC 대체 가능)

 

local CDText={}; 

local function OnUpdate(self)

local ptr=CDText[self];

if ptr then

local now,start,duration=GetTime(),self:GetCooldownTimes();

start,duration=start/1000,duration/1000;


--Calculate needed values

local elapsed=now-start;

local remain=math.max(0,duration-elapsed);

--Colorize text

if elapsed<0 then

elseif remain>=600 then         ptr:SetTextColor(1,1,1,0.5);      --- 10분 이상 투명

elseif remain>=60 then          ptr:SetTextColor(1,1,1,0.9);      --- 61초 이상 흰색 

elseif remain>=5 then        ptr:SetTextColor(1,1,0);      --- 6초 이상 노란색       

elseptr:SetTextColor(1,0,0);    --- 1초 이상 빨간색

end

end

end

hooksecurefunc(getmetatable(CreateFrame("Cooldown")).__index,"SetCooldown",function(self,start,duration,enabled)

if CDText[self]==nil then

self:SetHideCountdownNumbers(false);


local txt=self:GetRegions();

if txt then

txt:ClearAllPoints();

txt:SetPoint("Center", 1,0);                          --- 폰트 위치(중간기준, X,Y)

txt:SetFontObject("NumberFontNormalSmall");           --- 폰트 크기(작게 Small, 크게 Large)

--Color Manager

self:HookScript("OnUpdate",OnUpdate);

end

CDText[self]=txt or false;

end

end)


 

 ■ 2.기본 재사용 대기시간 액션바 폰트 크기 조정 (1번과 함께 사용 시 OmniCC 대체 가능)

 

hooksecurefunc("ActionButton_UpdateCooldown", function(btn) local cdt = _G[btn:GetName().."Cooldown"] cdt:SetScale(1.7)end)    --- 크기


 

 ▶ Lua Script ◀ 사용법 및 공유 Ⅰ(1탄) 바로 가기


 http://www.inven.co.kr/board/wow/17/28424?name=subject&keyword=lua



 ■ 그 밖의 활용도가 높은 애드온 소개

 

 

 

 

Lorti Ui ( 각종 기본 프레임 테두리 색상을 검정색으로 변경 )

https://mods.curse.com/addons/wow/lorti_ui

 

 

 

OmniCC ( 각종 스킬 및 버프 디버프 쿨 타임 시간을 표시{ 현재 블리자드의 고의적인 패치로 오류} ) 

https://www.curseforge.com/wow/addons/omni-cc


OmniBar ( 상대 차단 스킬 쿨타임 표시 ) 

https://www.curseforge.com/wow/addons/omnibar




Foglight ( 월드맵 안개 지움 ) 

https://www.curseforge.com/wow/addons/foglight

 



Flyplatebuff ( 이름표 위 적 버프 또는 디버프 표시 ) 

https://www.curseforge.com/wow/addons/flyplatebuffs




Bigdebuffs ( 레이드 프레임에 적 주요 cc기 표시 ) 

https://www.curseforge.com/wow/addons/bigdebuffs

 

 

 

Deadly Boss Mods ( 던전 및 레이드 각종 알림 필수 애드온 )

https://www.curseforge.com/wow/addons/deadly-boss-mods     -- 메인 (필수)


https://www.curseforge.com/wow/addons/deadly-boss-mods-wod  -- 드레노어의 전쟁군주 (플러그인)


https://www.curseforge.com/wow/addons/deadly-boss-mods-mop  -- 판다리아의 안개 (플러그인)


https://www.curseforge.com/wow/addons/deadly-boss-mods-cataclysm-mods -- 대격변 (플러그인)


https://www.curseforge.com/wow/addons/deadly-boss-mods-wotlk  -- 리치왕의 분노 (플러그인)


https://www.curseforge.com/wow/addons/dbm-bc  -- 불타는 성전 & 오리지널 (플러그인)



BigWigs ( 던전 및 레이드 각종 알림 필수 애드온 )

https://www.curseforge.com/wow/addons/big-wigs -- 메인 (필수)


https://www.curseforge.com/wow/addons/little-wigs  -- 5인 던전 (BigWigs 메인과 함께 필수 설치)


https://www.curseforge.com/wow/addons/bigwigs_warlordsofdraenor -- 드레노어의 전쟁군주 (플러그인)


https://www.curseforge.com/wow/addons/bigwigs_mistsofpandaria -- 판다리아의 안개 (플러그인)


https://www.curseforge.com/wow/addons/bigwigs_cataclysm --대격변 (플러그인)


https://www.curseforge.com/wow/addons/bigwigs_wrathofthelichking -- 리치왕의 분노 (플러그인)


https://www.curseforge.com/wow/addons/bigwigs_burningcrusade -- 불타는 성전 (플러그인)


https://www.curseforge.com/wow/addons/bigwigs_classic  -- 오리지널 (플러그인)



MoveAnything ( 모든 알림 창 및 각종 프레임 위치, 크기 변경 및 숨김, 편리하지만 오류들이 많음 )

https://www.curseforge.com/wow/addons/move-anything

 

 

 

Recount  ( DPS, HPS 등 각종 실시간 정보 수집 )

https://mods.curse.com/addons/wow/recount

 

Skada Damage Meter ( DPS, HPS 등 각종 실시간 정보 수집 )

https://mods.curse.com/addons/wow/skada

 

Details! ( DPS, HPS 등 각종 실시간 정보 수집 )

https://mods.curse.com/addons/wow/details

 

 

 

WeakAuras ( 각종 스킬 또는 버프 디버프 알람 설정 )

https://mods.curse.com/addons/wow/weakauras-2

 

TellmeWhen ( 각종 스킬 또는 버프 디버프 알람 설정 )

https://mods.curse.com/addons/wow/tellmewhen

 

 

 

NpcScan ( 각종 희귀 몬스터들의 젠 장소 및 위치 표시 )

https://mods.curse.com/addons/wow/npcscan

 

NpcScanOverlay ( 각종 희귀 몬스터들의 젠 장소 및 위치 표시 )

https://mods.curse.com/addons/wow/npcscan-overlay

 

 

 

Gladius ( 투기장 적 직업 및 특성과 점감 상태 또는 계급장 사용 여부 표시 )

https://mods.curse.com/addons/wow/gladius

 

 

 

AdvancedinterfaceOption ( 군단 패치로 안보이는, 예전 인터페이스 설정을 손쉽게 할 수 있음 )

https://mods.curse.com/addons/wow/advancedinterfaceoptions




RangeDisplay ( 대상, 주시대상, 소환수, 마우스 오버 등 과의 사정거리를 숫자로 알림 )

https://mods.curse.com/addons/wow/range-display



Tidy Plates ( 이름표 애드온 )

https://www.curseforge.com/wow/addons/tidy-plates-threat-plates

 

 

 

 

 ■ 하고 싶은 말

 

 

좋은 정보글인데 원본글이 삭제되어 구글에서 복원하여 올렸습니다.