WoWInterface SVN AchievementSnap

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /trunk
    from Rev 6 to Rev 7
    Reverse comparison

Rev 6 → Rev 7

AchievementSnap/AchievementSnap.xml
1,9 → 1,11
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd">
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd">
 
<!-- $Id: AchievementSnap.xml 1056 2008-10-24 22:50:07Z gryphon $ -->
<!-- $Id: LevelSnap.xml 10 2008-11-20 22:39:03Z Gryphon-19211 $ -->
 
<!-- Required Embeddable Libs -->
<Include file="Chronos\Chronos.xml"/>
<!-- Libs -->
<Include file="Libs\Chronos\Chronos.xml"/>
<Include file="Libs\Portfolio\Loader.xml"/>
 
<!-- Default Localization -->
<Script file="localization.us.lua"/>
21,16 → 23,4
<!-- Scripts -->
<Script file="AchievementSnap.lua"/>
 
<!-- Frames -->
<Frame name="AchievementSnap" hidden="true">
<Scripts>
<OnLoad>
ASNAP_On.Load();
</OnLoad>
<OnEvent>
ASNAP_On.Event(event);
</OnEvent>
</Scripts>
</Frame>
 
</Ui>
\ No newline at end of file
AchievementSnap/Libs Property changes : Added: svn:externals + Portfolio svn://svn.wowinterface.com/Portfolio-318/trunk/Portfolio Chronos svn://svn.wowinterface.com/Chronos-309/trunk/Chronos
AchievementSnap/AchievementSnap.lua
18,9 → 18,12
 
-- Dependencies
Chronos - Embedded
Khaos - Optional
Portfolio - Embedded
 
-- Changes
1.1.0 - Added Portfolio registration
- Removed Khaos registration
- Removed Slash Commands
1.0.1 - German translation provided by Lakar EU-Azshara
1.0.0 - Initial Release
 
32,226 → 35,74
 
]]--
 
ASNAP_Setting = {
local CHARACTER_MAXLEVEL = 80;
 
AchievementSnap = {
 
Setting = {
Version = GetAddOnMetadata("AchievementSnap", "Version");
Revision = tonumber(strsub("$Rev: 1057 $", 7, strlen("$Rev: 1057 $") - 2));
}
},
 
ASNAP_Options = {
Active = 1;
MinLevel = 1;
MaxLevel = 80;
}
On = {
 
ASNAP_On = {
 
Load = function()
 
ASNAP_Register.RegisterEvent("ACHIEVEMENT_EARNED")
 
if (Khaos) then
ASNAP_Register.Khaos();
else
ASNAP_Register.SlashCommands()
end
 
end;
 
Event = function(event)
 
if ( event == "ACHIEVEMENT_EARNED" and ASNAP_Options.Active == 1 ) then
if (UnitLevel("player") >= ASNAP_Options.MinLevel and UnitLevel("player") <= ASNAP_Options.MaxLevel) then
if (ASNAP_Options.CloseWindows == 1) then
if ( event == "ACHIEVEMENT_EARNED" and AchievementSnap_SavedVars.Enabled ) then
if (UnitLevel("player") >= AchievementSnap_SavedVars.MinLevel and UnitLevel("player") <= AchievementSnap_SavedVars.MaxLevel) then
if (AchievementSnap_SavedVars.CloseWindows == 1) then
CloseAllWindows()
RequestTimePlayed()
ASNAP_Function.TakeScreenshot()
AchievementSnap.Function.TakeScreenshot()
else
RequestTimePlayed()
ASNAP_Function.TakeScreenshot()
AchievementSnap.Function.TakeScreenshot()
end
end
end
 
end;
 
}
},
 
ASNAP_Register = {
Function = {
 
RegisterEvent = function(event)
this:RegisterEvent(event)
end;
 
SlashCommands = function()
SLASH_ASNAP_HELP1 = "/asnap";
SLASH_ASNAP_HELP2 = "/achievementsnap";
SlashCmdList["ASNAP_HELP"] = ASNAP_Command;
end;
 
Khaos = function()
local version = ASNAP_Setting.Version.."."..ASNAP_Setting.Revision
 
local optionSet = {
id = "AchievementSnap";
text = function() return ASNAP_TITLE end;
helptext = function() return ASNAP_INFO end;
difficulty = 1;
default = true;
callback = function(checked)
ASNAP_Options.Active = checked and 1 or 0;
end;
options = {
{
id = "Header";
text = function() return ASNAP_TITLE.." "..ASNAP_Color.Green("v"..version) end;
helptext = function() return ASNAP_INFO end;
type = K_HEADER;
difficulty = 1;
};
 
{
id="ASNAP_MinLevel";
type = K_SLIDER;
text = function() return ASNAP_MINIMUM end;
helptext = function() return ASNAP_HELP_MIN end;
difficulty = 1;
feedback = function(state)
return string.format(ASNAP_MINMAXSET2, ASNAP_MINIMUM, state.slider);
end;
callback = function(state)
if (state.slider >= ASNAP_Options.MaxLevel) then
Khaos.setSetKeyParameter("AchievementSnap","ASNAP_MaxLevel", "slider", state.slider);
Khaos.refresh(false, false, true);
end;
ASNAP_Options.MinLevel = state.slider;
end;
default = { checked = true; slider = 1 };
disabled = { checked = false; slider = 1 };
setup = {
sliderMin = 1;
sliderMax = 80;
sliderStep = 1;
sliderDisplayFunc = function(val)
return val;
end;
};
};
 
 
{
id="ASNAP_MaxLevel";
type = K_SLIDER;
text = function() return ASNAP_MAXIMUM end;
helptext = function() return ASNAP_HELP_MAX end;
difficulty = 1;
feedback = function(state)
return string.format(ASNAP_MINMAXSET2, ASNAP_MAXIMUM, state.slider);
end;
callback = function(state)
if (state.slider <= ASNAP_Options.MinLevel) then
Khaos.setSetKeyParameter("AchievementSnap","ASNAP_MinLevel", "slider", state.slider);
Khaos.refresh(false, false, true);
end;
ASNAP_Options.MaxLevel = state.slider;
end;
default = { checked = false; slider = 80 };
disabled = { checked = false; slider = 80 };
setup = {
sliderMin = 1;
sliderMax = 80;
sliderStep = 1;
sliderDisplayFunc = function(val)
return val;
end;
};
};
 
{
id = "ASNAP_CloseWindows";
type = K_TEXT;
text = function() return ASNAP_CLOSEWIN end;
helptext = function() return ASNAP_HELP_CLOSEWIN end;
difficulty = 1;
feedback = function(state)
if (state.checked) then
return string.format(ASNAP_CLOSEALL, ASNAP_ENABLED);
else
return string.format(ASNAP_CLOSEALL, ASNAP_DISABLED);
end
end;
callback = function(state)
if (state.checked) then
ASNAP_Options.CloseWindows = 1;
else
ASNAP_Options.CloseWindows = 0;
end
end;
check = true;
default = { checked = false };
disabled = { checked = true };
};
 
{
id = "ASNAP_Status";
type = K_BUTTON;
text = function() return ASNAP_STATUS end;
helptext = function() return ASNAP_HELP_STATUS end;
difficulty = 1;
callback = function(state)
ASNAP_Out.Status()
end;
feedback = function(state) end;
setup = { buttonText = function() return ASNAP_STATUS end; };
};
 
};
};
Khaos.registerOptionSet(
"other",
optionSet
);
 
end;
 
}
 
ASNAP_Function = {
 
TakeScreenshot = function()
Chronos.schedule(1, TakeScreenshot)
end;
 
}
},
 
ASNAP_Out = {
Out = {
 
Print = function(msg)
local color = NORMAL_FONT_COLOR;
DEFAULT_CHAT_FRAME:AddMessage(ASNAP_TITLE..": "..msg, color.r, color.g, color.b)
DEFAULT_CHAT_FRAME:AddMessage(ASNAP_TITLE..": "..msg, NORMAL_FONT_COLOR.r, NORMAL_FONT_COLOR.g, NORMAL_FONT_COLOR.b)
end;
 
Status = function()
local active = ASNAP_Color.Green(ASNAP_ENABLED)
local closeall = ASNAP_Color.Green(ASNAP_ENABLED)
local active = AchievementSnap.Color.Green(ASNAP_ENABLED)
local closeall = AchievementSnap.Color.Green(ASNAP_ENABLED)
 
if (ASNAP_Options.Active == 0) then
active = ASNAP_Color.Red(ASNAP_DISABLED)
if (not AchievementSnap_SavedVars.Enabled) then
active = AchievementSnap.Color.Red(ASNAP_DISABLED)
end
if (ASNAP_Options.CloseWindows == 0) then
closeall = ASNAP_Color.Red(ASNAP_DISABLED)
if (not AchievementSnap_SavedVars.CloseWindows) then
closeall = AchievementSnap.Color.Red(ASNAP_DISABLED)
end
 
ASNAP_Out.Print("AddOn "..active..". "..string.format(ASNAP_MINMAXSET2, ASNAP_MINIMUM, ASNAP_Color.Green(ASNAP_Options.MinLevel)).." "..string.format(ASNAP_MINMAXSET2, ASNAP_MAXIMUM, ASNAP_Color.Green(ASNAP_Options.MaxLevel)).." "..string.format(ASNAP_CLOSEALL, closeall))
end;
AchievementSnap.Out.Print("AddOn "..active)
AchievementSnap.Out.Print(format(ASNAP_MINMAXSET2, ASNAP_MINIMUM, AchievementSnap.Color.Green(AchievementSnap_SavedVars.MinLevel)))
AchievementSnap.Out.Print(format(ASNAP_MINMAXSET2, ASNAP_MAXIMUM, AchievementSnap.Color.Green(AchievementSnap_SavedVars.MaxLevel)))
AchievementSnap.Out.Print(format(ASNAP_CLOSEALL, closeall)) end;
 
Version = function()
local version = ASNAP_Setting.Version.."."..ASNAP_Setting.Revision
ASNAP_Out.Print(ASNAP_VERSION..": "..ASNAP_Color.Green(version))
local version = AchievementSnap.Setting.Version.."."..AchievementSnap.Setting.Revision
AchievementSnap.Out.Print(ASNAP_VERSION..": "..AchievementSnap.Color.Green(version))
end;
 
}
},
 
ASNAP_Color = {
Color = {
 
Green = function(msg)
return "|cff00cc00"..msg.."|r";
261,59 → 112,95
return "|cffff0000"..msg.."|r";
end;
 
},
 
}
 
ASNAP_Command = function(msg)
if (not AchievementSnapFrame) then
local frame = CreateFrame("Frame", "AchievementSnapFrame")
frame:Hide()
frame:SetScript("OnEvent", AchievementSnap.On.Event)
frame:RegisterEvent("ACHIEVEMENT_EARNED")
end
 
local cmd = string.lower(msg)
--[[ Portfolio Registration ]]--
 
if (cmd == "" or cmd == "help") then
ASNAP_Out.Print("/asnap on|off, "..ASNAP_HELP_ONOFF)
ASNAP_Out.Print("/asnap min #, "..ASNAP_HELP_MIN)
ASNAP_Out.Print("/asnap max #, "..ASNAP_HELP_MAX)
ASNAP_Out.Print("/asnap closewin on|off, "..DS_HELP_CLOSEWIN)
ASNAP_Out.Print("/asnap status, "..ASNAP_HELP_STATUS)
ASNAP_Out.Print("/asnap version, "..ASNAP_HELP_VERSION)
end
local Portfolio = LibStub("Portfolio", true)
 
if (cmd == "version") then
ASNAP_Out.Version()
end
if (Portfolio) then
 
if (cmd == "status") then
ASNAP_Out.Status()
end
local optionTable = {
id = "AchievementSnap";
options = {
{
id = "Enabled",
text = ASNAP_ENABLED,
tooltipText = ASNAP_HELP_ONOFF,
type = CONTROLTYPE_CHECKBOX,
defaultValue = 1,
},
{
id = "CloseWindows",
text = ASNAP_CLOSEWIN,
tooltipText = ASNAP_HELP_CLOSEWIN,
type = CONTROLTYPE_CHECKBOX,
defaultValue = 1,
},
{
id = "MinMaxLevelHeader",
text = ASNAP_MINIMUM.." / "..ASNAP_MAXIMUM,
subText = ASNAP_HELP_MINMAX,
type = CONTROLTYPE_HEADER,
},
{
id = "MinLevel",
text = ASNAP_MINIMUM,
subText = ASNAP_HELP_MIN,
type = CONTROLTYPE_SLIDER,
minText = "Min",
maxText = "Max",
defaultValue = 1,
minValue = 1,
maxValue = CHARACTER_MAXLEVEL,
valueStep = 1,
callback = function(value)
if (value >= AchievementSnap_SavedVars["MaxLevel"]) then
AchievementSnap_SavedVars["MaxLevel"] = value
end
end,
},
{
id = "MaxLevel",
text = ASNAP_MAXIMUM,
subText = ASNAP_HELP_MAX,
type = CONTROLTYPE_SLIDER,
minText = "Min",
maxText = "Max",
defaultValue = CHARACTER_MAXLEVEL,
minValue = 1,
maxValue = CHARACTER_MAXLEVEL,
valueStep = 1,
callback = function(value)
if (value <= AchievementSnap_SavedVars["MinLevel"]) then
AchievementSnap_SavedVars["MinLevel"] = value
end
end,
point = {"TOPLEFT", "MinLevel", "TOPRIGHT", 80, 0},
},
--[[
{
id = "Status",
text = ASNAP_STATUS,
tooltipText = ASNAP_HELP_STATUS,
type = CONTROLTYPE_BUTTON,
callback = AchievementSnap.Out.Status,
point = {nil, "MinLevel", nil, nil, nil},
},
]]--
},
savedVarTable = "AchievementSnap_SavedVars",
}
 
if (cmd == "on") then
ASNAP_Options.Active = 1;
ASNAP_Out.Print(ASNAP_Color.Green(ASNAP_ENABLED))
end
Portfolio.RegisterOptionSet(optionTable)
 
if (cmd == "off") then
ASNAP_Options.Active = 0;
ASNAP_Out.Print(ASNAP_Color.Red(ASNAP_DISABLED))
end
 
if (strsub(msg, 1, 3) == "min") then
local num = tonumber(strsub(msg, 4))
ASNAP_Options.MinLevel = num;
ASNAP_Out.Print(string.format(ASNAP_MINMAXSET2, ASNAP_MINIMUM, ASNAP_Color.Green(num)))
end
 
if (strsub(msg, 1, 3) == "max") then
local num = tonumber(strsub(msg, 4))
ASNAP_Options.MaxLevel = num;
ASNAP_Out.Print(string.format(ASNAP_MINMAXSET2, ASNAP_MAXIMUM, ASNAP_Color.Green(num)))
end
 
if (strsub(msg, 1, 8) == "closewin") then
local state = strsub(msg, 10)
if (state == "on") then
ASNAP_Options.CloseWindows = 1;
ASNAP_Out.Print(string.format(ASNAP_CLOSEALL, ASNAP_ENABLED))
elseif (state == "off") then
ASNAP_Options.CloseWindows = 0;
ASNAP_Out.Print(string.format(ASNAP_CLOSEALL, ASNAP_DISABLED))
end
end
end;
\ No newline at end of file +end \ No newline at end of file
AchievementSnap/AchievementSnap.toc
1,16 → 1,11
## Interface: 30000
## Version: 1.0.1
## Version: 1.1.0
## Title: AchievementSnap
## Notes: Automatically snaps a screen shot when you gain an achievement.
## Notes-zhCN:
## Notes-deDE:
## Notes-esES:
## Notes-frFR:
## Notes-enGB:
## Notes-koKR:
## Notes-ruRU:
## Notes-zhTW:
## OptionalDeps: Chronos, Khaos
## SavedVariablesPerCharacter: ASNAP_Options
## SavedVariablesPerCharacter: AchievementSnap_SavedVars
## Author: Ryan "Gryphon" Snook
## X-Category: Miscellaneous
## X-Embeds: Chronos, Portfolio
## X-Email: rsnook@gmail.com
## X-Website: http://ryan.snook.cc, http://www.wowinterface.com/downloads/info11601-AchievementSnap.html
AchievementSnap.xml
\ No newline at end of file
AchievementSnap/localization.us.lua
23,6 → 23,7
ASNAP_CLOSEALL = "Automatically close all windows %s.";
 
ASNAP_HELP_ONOFF = "Enable/Disable AchievementSnap.";
ASNAP_HELP_MINMAX = "Set the minimum / maximum level in which AchievementSnap is active.";
ASNAP_HELP_MIN = "Set the minimum level in which AchievementSnap is active.";
ASNAP_HELP_MAX = "Set the maximum level in which AchievementSnap is active.";
ASNAP_HELP_CLOSEWIN = "Closes all open windows before AchievementSnap takes a screen shot.";
AchievementSnap/localization.de.lua
23,6 → 23,7
ASNAP_CLOSEALL = "Schlie\195\159e alle Fenster automatisch %s.";
 
ASNAP_HELP_ONOFF = "Aktiviere/Deaktiviere AchievementSnap.";
ASNAP_HELP_MINMAX = "Setzt Minimum-Level / Maximum-Level in welchem AchievementSnap aktiv ist.";
ASNAP_HELP_MIN = "Setzt Minimum-Level in welchem AchievementSnap aktiv ist.";
ASNAP_HELP_MAX = "Setzt Maximum-Level in welchem AchievementSnap aktiv ist.";
ASNAP_HELP_CLOSEWIN = "Schlie\195\159t alle offnen Fenster, bevor AchievementSnap einen Screenshot schie\195\159t.";