------------------------------------------------------------------------------------------------------ -- Necrosis LdC -- -- Créateur initial (US) : Infernal (http://www.revolvus.com/games/interface/necrosis/) -- Implémentation de base (FR) : Tilienna Thorondor -- Reprise du projet : Lomig & Nyx des Larmes de Cenarius, Kael'Thas -- -- Skins et voix Françaises : Eliah, Ner'zhul -- Version Allemande par Arne Meier et Halisstra, Lothar -- Remerciements spéciaux pour Sadyre (JoL) -- Version 30.04.2005-1 ------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------ -- FONCTIONS D'AFFICHAGE (CONSOLE, CHAT, MESSAGE SYSTEME) ------------------------------------------------------------------------------------------------------ function Necrosis_Msg(msg, type) if (msg and type) then -- Si le type du message est "USER", le message s'affiche sur l'écran... if (type == "USER") then -- On colorise astucieusement notre message :D msg = Necrosis_MsgAddColor(msg); local Intro = "|CFFFF00FFNe|CFFFF50FFcr|CFFFF99FFos|CFFFFC4FFis|CFFFFFFFF: "; if NecrosisConfig.ChatType then -- ...... sur la première fenêtre de chat ChatFrame1:AddMessage(Intro..msg, 1.0, 0.7, 1.0, 1.0, UIERRORS_HOLD_TIME); else -- ...... ou au milieu de l'écran UIErrorsFrame:AddMessage(Intro..msg, 1.0, 0.7, 1.0, 1.0, UIERRORS_HOLD_TIME); end -- Si le type du message est "WORLD", le message sera envoyé en raid, à défaut en groupe, et à défaut en chat local elseif (type == "WORLD") then if (GetNumRaidMembers() > 0) then SendChatMessage(msg, "RAID"); elseif (GetNumPartyMembers() > 0) then SendChatMessage(msg, "PARTY"); else SendChatMessage(msg, "SAY"); end -- Si le type du message est "PARTY", le message sera envoyé en groupe elseif (type == "PARTY") then SendChatMessage(msg, "PARTY"); -- Si le type du message est "RAID", le message sera envoyé en raid elseif (type == "RAID") then SendChatMessage(msg, "RAID"); elseif (type == "SAY") then -- Si le type du message est "SAY", le message sera envoyé en chat local SendChatMessage(msg, "SAY"); end end end ------------------------------------------------------------------------------------------------------ -- ... ET LE COLORAMA FUT ! ------------------------------------------------------------------------------------------------------ -- Remplace dans les chaines les codes de coloration par les définitions de couleur associées function Necrosis_MsgAddColor(msg) msg = string.gsub(msg, "", "|CFFFFFFFF"); msg = string.gsub(msg, "", "|CFF99CCFF"); msg = string.gsub(msg, "", "|CFF00FF00"); msg = string.gsub(msg, "", "|CFF66FF66"); msg = string.gsub(msg, "", "|CFF99FF66"); msg = string.gsub(msg, "", "|CFFCCFF66"); msg = string.gsub(msg, "", "|CFFFFFF66"); msg = string.gsub(msg, "", "|CFFFFCC00"); msg = string.gsub(msg, "", "|CFFFFCC66"); msg = string.gsub(msg, "", "|CFFFF9933"); msg = string.gsub(msg, "", "|CFFFF6600"); msg = string.gsub(msg, "", "|CFFFF3300"); msg = string.gsub(msg, "", "|CFFFF0000"); msg = string.gsub(msg, "", "|CFFFF5555"); msg = string.gsub(msg, "", "|CFFFFC4FF"); msg = string.gsub(msg, "", "|CFFFF99FF"); msg = string.gsub(msg, "", "|CFFFF50FF"); msg = string.gsub(msg, "", "|CFFFF00FF"); msg = string.gsub(msg, "", "|CFFB700B7"); msg = string.gsub(msg, "", "|r"); return msg; end -- Insère dans les timers des codes de coloration en fonction du pourcentage de temps restant function NecrosisTimerColor(percent) local color = ""; if (percent < 10) then color = ""; elseif (percent < 20) then color = ""; elseif (percent < 30) then color = ""; elseif (percent < 40) then color = ""; elseif (percent < 50) then color = ""; elseif (percent < 60) then color = ""; elseif (percent < 70) then color = ""; elseif (percent < 80) then color = ""; elseif (percent < 90) then color = ""; end return color; end ------------------------------------------------------------------------------------------------------ -- VARIABLES USER-FRIENDLY DANS LES MESSAGES D'INVOCATION ------------------------------------------------------------------------------------------------------ function Necrosis_MsgReplace(msg, target, pet) msg = string.gsub(msg, "", UnitName("player")); if target then msg = string.gsub(msg, "", target); end if pet then msg = string.gsub(msg, "", NecrosisConfig.PetName[pet]); end return msg; end