Quantcast
JEFF_VER = "1.0.2"

---------------------------------------

JEFF_GREETING   = "Jeff v" .. JEFF_VER .. " loaded! (/jeff)"
JEFF_HELP1      = "Jeff v" .. JEFF_VER .. " Commands:"
JEFF_HELP2      = "  /jeff on|off"
JEFF_AUDIO_ON   = "Jeff : Enabled!"
JEFF_AUDIO_OFF  = "Jeff : Disabled"

sound_time = 0;
jeff_master = true

local discoflag = jeff_master

---------------------------------------
--- Local Functions ------------------
---------------------------------------

local function AddMsg(msg)
	DEFAULT_CHAT_FRAME:AddMessage(msg);
end


---------------------------------------
--- Main Functions --------------------
---------------------------------------

function JEFF_Load()					-- initialization
	AddMsg(JEFF_GREETING)

	SLASH_JEFF1 = "JEFF";
	SLASH_JEFF2 = "/jeff";
	SlashCmdList["JEFF"] = JEFF_SlashHandler;

	this:RegisterEvent("CHAT_MSG_GUILD");
	this:RegisterEvent("CHAT_MSG_WHISPER");
	this:RegisterEvent("CHAT_MSG_OFFICER");
	this:RegisterEvent("CHAT_MSG_PARTY");
	this:RegisterEvent("CHAT_MSG_RAID");
	this:RegisterEvent("CHAT_MSG_RAID_LEADER");
	this:RegisterEvent("ADDON_LOADED");

end

---------------------------------------

function JEFF_SlashHandler(msg)			-- slash handler

	if (msg=="on") then
		discoflag = true;
		jeff_master = true;
		AddMsg(JEFF_AUDIO_ON);
	elseif (msg=="off") then
		discoflag = false;
		jeff_master = false
		AddMsg(JEFF_AUDIO_OFF);
	else
		PlaySoundFile("Interface\\AddOns\\Jeff\\jeff.ogg");
		SendChatMessage("My name is Jeff", "PARTY");
	end

end

---------------------------------------

function JEFF_Event()

	if(discoflag) then
		if (event == "CHAT_MSG_WHISPER" or event == "CHAT_MSG_GUILD" or event == "CHAT_MSG_OFFICER" or event == "CHAT_MSG_PARTY" or event == "CHAT_MSG_RAID" or event == "CHAT_MSG_RAID_LEADER") then
			if(string.find(arg1, "jeff") or string.find(arg1, "JEFF") or string.find(arg1, "Jeff")) then -- find disco trigger
				local current_time = time();
				if((current_time - sound_time > 5) or (sound_time == 0)) then
					sound_time = current_time;
					PlaySoundFile("Interface\\AddOns\\jeff\\jeff.wav");
				end
			end
		elseif ((event=="ADDON_LOADED") and (arg1 == "jeff")) then
			discoflag = jeff_master
		end
	end
end

function jeff_initialize()
	-- add our very first chat command!
	SlashCmdList["JEFF"] = jeff_command;
	SLASH_JEFF1 = "/jeff";
end