initial commit
This commit is contained in:
Executable
+136
@@ -0,0 +1,136 @@
|
||||
-- FishingSetup
|
||||
--
|
||||
-- Load out translation strings and such
|
||||
|
||||
FishingBuddy = {};
|
||||
|
||||
FishingBuddy.VERSION = "0.8.6h";
|
||||
FishingBuddy.CURRENTVERSION = 8600;
|
||||
|
||||
FishingBuddy.Colors = {};
|
||||
FishingBuddy.Colors.RED = "ffff0000";
|
||||
FishingBuddy.Colors.GREEN = "ff00ff00";
|
||||
FishingBuddy.Colors.BLUE = "ff0000ff";
|
||||
FishingBuddy.Colors.WHITE = "ffffffff";
|
||||
|
||||
-- debugging
|
||||
|
||||
FishingBuddy.printable = function(foo)
|
||||
if ( foo ) then
|
||||
if ( type(foo) == "table" ) then
|
||||
return "table";
|
||||
elseif ( type(foo) == "boolean" ) then
|
||||
if ( foo ) then
|
||||
return "true";
|
||||
else
|
||||
return "false";
|
||||
end
|
||||
else
|
||||
return foo;
|
||||
end
|
||||
else
|
||||
return "nil";
|
||||
end
|
||||
end
|
||||
|
||||
FishingBuddy.Output = function(msg, r, g, b)
|
||||
if ( DEFAULT_CHAT_FRAME ) then
|
||||
if ( not r ) then
|
||||
DEFAULT_CHAT_FRAME:AddMessage(msg);
|
||||
else
|
||||
DEFAULT_CHAT_FRAME:AddMessage(msg, r, g, b);
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local FishingBuddy_Debugging = 1;
|
||||
FishingBuddy.Debug = function(msg, fixlinks)
|
||||
if ( FishingBuddy_Debugging == 1 ) then
|
||||
if ( fixlinks ) then
|
||||
msg = string.gsub(msg, "|", ";");
|
||||
end
|
||||
local name = FishingBuddy.Name or "Fishing Buddy";
|
||||
FishingBuddy.Output("|c"..FishingBuddy.Colors.RED..name.." DEBUG|r "..msg);
|
||||
end
|
||||
end
|
||||
|
||||
FishingBuddy.Dump = function(thing)
|
||||
if ( FishingBuddy_Debugging == 1 ) then
|
||||
if ( DevTools_Dump ) then
|
||||
DevTools_Dump(thing);
|
||||
else
|
||||
FishingBuddy.Debug("Tried to dump a '"..FishingBuddy.printable(thing).."'.");
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function LoadTranslation(lang)
|
||||
local translation = FishingTranslations[lang];
|
||||
for tag,value in translation do
|
||||
if ( not FishingBuddy[tag] ) then
|
||||
FishingBuddy[tag] = value;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local function FixupThis(tag, what)
|
||||
if ( type(what) == "table" ) then
|
||||
for idx,str in what do
|
||||
what[idx] = FixupThis(tag, str);
|
||||
end
|
||||
return what;
|
||||
elseif ( type(what) == "string" ) then
|
||||
local pattern = "#([A-Z0-9]+)#";
|
||||
local s,e,w = string.find(what, pattern);
|
||||
while ( w ) do
|
||||
local s1 = strsub(what, 1, s-1);
|
||||
local s2 = strsub(what, e+1);
|
||||
what = s1..FishingBuddy[w]..s2;
|
||||
s,e,w = string.find(what, pattern);
|
||||
end
|
||||
return what;
|
||||
else
|
||||
FishingBuddy.Debug("tag "..tag.." type "..type(what));
|
||||
FishingBuddy.Dump(what);
|
||||
end
|
||||
end
|
||||
|
||||
local function FixupStrings()
|
||||
local translation = FishingTranslations["enUS"];
|
||||
for tag,str in translation do
|
||||
FishingBuddy[tag] = FixupThis(tag, str);
|
||||
end
|
||||
end
|
||||
|
||||
local function FixupBindings(lang)
|
||||
local translation = FishingTranslations[lang];
|
||||
for tag,str in translation do
|
||||
if ( string.find(tag, "^BINDING") ) then
|
||||
setglobal(tag, FishingBuddy[tag]);
|
||||
FishingBuddy[tag] = nil;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local locale = GetLocale();
|
||||
LoadTranslation(locale);
|
||||
if ( locale ~= "enUS" ) then
|
||||
LoadTranslation("enUS");
|
||||
end
|
||||
FixupStrings();
|
||||
FixupBindings(locale);
|
||||
|
||||
-- dump the memory we've allocated for all the translations
|
||||
FishingTranslations = nil;
|
||||
|
||||
FishingBuddy.BYWEEKS_TABLE = {["Jan"] = 0, ["Apr"] = 13, ["Jul"] = 26, ["Oct"] = 39, ["Dec"] = 52};
|
||||
|
||||
FishingBuddy.KEYS_NONE = 0;
|
||||
FishingBuddy.KEYS_SHIFT = 1;
|
||||
FishingBuddy.KEYS_CTRL = 2;
|
||||
FishingBuddy.KEYS_ALT = 3;
|
||||
FishingBuddy.Keys = {};
|
||||
FishingBuddy.Keys[FishingBuddy.KEYS_NONE] = FishingBuddy.KEYS_NONE_TEXT;
|
||||
FishingBuddy.Keys[FishingBuddy.KEYS_SHIFT] = FishingBuddy.KEYS_SHIFT_TEXT;
|
||||
FishingBuddy.Keys[FishingBuddy.KEYS_CTRL] = FishingBuddy.KEYS_CTRL_TEXT;
|
||||
FishingBuddy.Keys[FishingBuddy.KEYS_ALT] = FishingBuddy.KEYS_ALT_TEXT;
|
||||
Reference in New Issue
Block a user