You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
294 lines
8.2 KiB
294 lines
8.2 KiB
|
3 years ago
|
---------------------------------------------------------------------------------
|
||
|
|
--
|
||
|
|
-- Prat - A framework for World of Warcraft chat mods
|
||
|
|
--
|
||
|
|
-- Copyright (C) 2006-2018 Prat Development Team
|
||
|
|
--
|
||
|
|
-- This program is free software; you can redistribute it and/or
|
||
|
|
-- modify it under the terms of the GNU General Public License
|
||
|
|
-- as published by the Free Software Foundation; either version 2
|
||
|
|
-- of the License, or (at your option) any later version.
|
||
|
|
--
|
||
|
|
-- This program is distributed in the hope that it will be useful,
|
||
|
|
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
|
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
|
-- GNU General Public License for more details.
|
||
|
|
--
|
||
|
|
-- You should have received a copy of the GNU General Public License
|
||
|
|
-- along with this program; if not, write to:
|
||
|
|
--
|
||
|
|
-- Free Software Foundation, Inc.,
|
||
|
|
-- 51 Franklin Street, Fifth Floor,
|
||
|
|
-- Boston, MA 02110-1301, USA.
|
||
|
|
--
|
||
|
|
--
|
||
|
|
-------------------------------------------------------------------------------
|
||
|
|
Prat:AddModuleToLoad(function()
|
||
|
|
|
||
|
|
local Prat = Prat
|
||
|
|
|
||
|
|
local PRAT_MODULE = Prat:RequestModuleName("Fading")
|
||
|
|
|
||
|
|
if PRAT_MODULE == nil then
|
||
|
|
return
|
||
|
|
end
|
||
|
|
|
||
|
|
local mod = Prat:NewModule(PRAT_MODULE)
|
||
|
|
|
||
|
|
local PL = mod.PL
|
||
|
|
|
||
|
|
--[==[@debug@
|
||
|
|
PL:AddLocale(PRAT_MODULE, "enUS", {
|
||
|
|
["module_name"] = "Fading",
|
||
|
|
["module_desc"] = "Chat window text fading options.",
|
||
|
|
["textfade_name"] = "Enable Fading",
|
||
|
|
["textfade_desc"] = "Toggle enabling text fading for each chat window.",
|
||
|
|
["duration_name"] = "Set Fading Delay (Seconds)",
|
||
|
|
["duration_desc"] = "Set the number of seconds to wait before before fading text of chat windows.",
|
||
|
|
})
|
||
|
|
--@end-debug@]==]
|
||
|
|
|
||
|
|
-- These Localizations are auto-generated. To help with localization
|
||
|
|
-- please go to http://www.wowace.com/projects/prat-3-0/localization/
|
||
|
|
--@non-debug@
|
||
|
|
do
|
||
|
|
local L
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "Set the number of seconds to wait before before fading text of chat windows.",
|
||
|
|
["duration_name"] = "Set Fading Delay (Seconds)",
|
||
|
|
["module_desc"] = "Chat window text fading options.",
|
||
|
|
["module_name"] = "Fading",
|
||
|
|
["textfade_desc"] = "Toggle enabling text fading for each chat window.",
|
||
|
|
["textfade_name"] = "Enable Fading",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "enUS",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "Définir le nombre de secondes à attendre avant la disparition du texte de la fenêtre de chat",
|
||
|
|
["duration_name"] = "Délai avant fondu (secondes)",
|
||
|
|
["module_desc"] = "Option des délais de disparition.",
|
||
|
|
["module_name"] = "Fondu",
|
||
|
|
["textfade_desc"] = "Activé le fondu pour chaque fenêtre de discussions.",
|
||
|
|
["textfade_name"] = "Activé le fondu",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "frFR",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "Stellt die Anzahl der Sekunden ein ehe der Text in Chatfenstern verblasst.",
|
||
|
|
["duration_name"] = "Verzögerung des Verblassens einstellen (Sekunden)",
|
||
|
|
["module_desc"] = "Optionen zum Verblassen des Textes in Chatfenstern.",
|
||
|
|
["module_name"] = "Verblassen",
|
||
|
|
["textfade_desc"] = "Schaltet das Verblassen des Textes jedes Chatfenster ein/aus.",
|
||
|
|
["textfade_name"] = "Verblassen einschalten",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "deDE",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "대화글이 사라질 때 까지의 대기 시간을 설정합니다.",
|
||
|
|
["duration_name"] = "사라짐 대기 시간 설정 (초)",
|
||
|
|
["module_desc"] = "대화글의 사라짐 옵션을 설정합니다.",
|
||
|
|
["module_name"] = "사라짐 [Fading]",
|
||
|
|
["textfade_desc"] = "각 대화창 별로 대화글 사라짐 기능을 켜고 끕니다.",
|
||
|
|
["textfade_name"] = "사라짐 켜기",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "koKR",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["duration_desc"] = "Set the number of seconds to wait before before fading text of chat windows.",
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["duration_name"] = "Set Fading Delay (Seconds)",
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["module_desc"] = "Chat window text fading options.",
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["module_name"] = "Fading",
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["textfade_desc"] = "Toggle enabling text fading for each chat window.",
|
||
|
|
--[[Translation missing --]]
|
||
|
|
["textfade_name"] = "Enable Fading",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "esMX",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "Задайте значение в секундах для задержки затухания текста в окне чата.",
|
||
|
|
["duration_name"] = "Задержка затухания (в секундах)",
|
||
|
|
["module_desc"] = "Настройки затухания текста в окне чата.",
|
||
|
|
["module_name"] = "Затухание",
|
||
|
|
["textfade_desc"] = "Вкл/Выкл затухание текста во всех окнах чата.",
|
||
|
|
["textfade_name"] = "Включить затухание",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "ruRU",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "设置聊天窗口文本消隐前等待秒数",
|
||
|
|
["duration_name"] = "设置消隐延时(秒)",
|
||
|
|
["module_desc"] = "聊天窗口文本消隐选项",
|
||
|
|
["module_name"] = "消隐",
|
||
|
|
["textfade_desc"] = "为每个聊天窗口启用文本消隐",
|
||
|
|
["textfade_name"] = "启用消隐",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "zhCN",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "Establece el número de segundos a esperar antes de desvanecer el texto de la ventana de chat.",
|
||
|
|
["duration_name"] = "Establecer Retraso Desvanecer (Segundos)",
|
||
|
|
["module_desc"] = "Opciones de desvanecer texto en ventana de chat.",
|
||
|
|
["module_name"] = "Desvanecerse",
|
||
|
|
["textfade_desc"] = "Alterna la activación de desvanecer texto para cada ventana de chat.",
|
||
|
|
["textfade_name"] = "Activar Desvanecerse",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "esES",L)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
L = {
|
||
|
|
["Fading"] = {
|
||
|
|
["duration_desc"] = "設定視窗消褪秒數",
|
||
|
|
["duration_name"] = "設定淡化延遲(秒數)",
|
||
|
|
["module_desc"] = "聊天室窗淡化選項",
|
||
|
|
["module_name"] = "淡化",
|
||
|
|
["textfade_desc"] = "切換視窗文字消褪",
|
||
|
|
["textfade_name"] = "啟用淡化",
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
PL:AddLocale(PRAT_MODULE, "zhTW",L)
|
||
|
|
|
||
|
|
|
||
|
|
end
|
||
|
|
--@end-non-debug@
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
-- define the default db values
|
||
|
|
Prat:SetModuleDefaults(mod.name, {
|
||
|
|
profile = {
|
||
|
|
on = true,
|
||
|
|
textfade = { ["*"] = true },
|
||
|
|
duration = 120
|
||
|
|
}
|
||
|
|
})
|
||
|
|
|
||
|
|
Prat:SetModuleOptions(mod.name, {
|
||
|
|
name = PL["module_name"],
|
||
|
|
desc = PL["module_desc"],
|
||
|
|
type = "group",
|
||
|
|
args = {
|
||
|
|
textfade = {
|
||
|
|
name = PL["textfade_name"],
|
||
|
|
desc = PL["textfade_desc"],
|
||
|
|
type = "multiselect",
|
||
|
|
values = Prat.HookedFrameList,
|
||
|
|
get = "GetSubValue",
|
||
|
|
set = "SetSubValue"
|
||
|
|
},
|
||
|
|
duration = {
|
||
|
|
name = PL["duration_name"],
|
||
|
|
desc = PL["duration_desc"],
|
||
|
|
type = "range",
|
||
|
|
order = 190,
|
||
|
|
min = 1,
|
||
|
|
max = 240,
|
||
|
|
step = 1,
|
||
|
|
},
|
||
|
|
}
|
||
|
|
})
|
||
|
|
|
||
|
|
|
||
|
|
--[[------------------------------------------------
|
||
|
|
Module Event Functions
|
||
|
|
------------------------------------------------]] --
|
||
|
|
|
||
|
|
-- things to do when the module is enabled
|
||
|
|
function mod:OnModuleEnable()
|
||
|
|
self:OnValueChanged()
|
||
|
|
Prat.RegisterChatEvent(self, Prat.Events.FRAMES_UPDATED)
|
||
|
|
end
|
||
|
|
|
||
|
|
-- things to do when the module is disabled
|
||
|
|
function mod:OnModuleDisable()
|
||
|
|
for k, v in pairs(Prat.HookedFrames) do
|
||
|
|
self:Fade(v, true)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
|
||
|
|
function mod:Prat_FramesUpdated(_, name, chatFrame)
|
||
|
|
self:Fade(chatFrame, self.db.profile.textfade[name])
|
||
|
|
end
|
||
|
|
|
||
|
|
function mod:OnValueChanged(...)
|
||
|
|
for k, v in pairs(Prat.HookedFrames) do
|
||
|
|
self:Fade(v, self.db.profile.textfade[k])
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
mod.OnSubValueChanged = mod.OnValueChanged
|
||
|
|
|
||
|
|
|
||
|
|
--[[------------------------------------------------
|
||
|
|
Core Functions
|
||
|
|
------------------------------------------------]] --
|
||
|
|
|
||
|
|
-- enable/disable fading
|
||
|
|
function mod:Fade(cf, textfade)
|
||
|
|
if textfade then
|
||
|
|
cf:SetFading(true)
|
||
|
|
cf:SetTimeVisible(mod.db.profile.duration)
|
||
|
|
else
|
||
|
|
cf:SetFading(false)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
|
||
|
|
return
|
||
|
|
end) -- Prat:AddModuleToLoad
|