Quantcast

BNET Check?

Repooc [02-25-14 - 06:45]
BNET Check?
Filename
ElvUI_SLE/dev/commands.lua
ElvUI_SLE/dev/options.lua
diff --git a/ElvUI_SLE/dev/commands.lua b/ElvUI_SLE/dev/commands.lua
index 18a2df2..dd09d08 100755
--- a/ElvUI_SLE/dev/commands.lua
+++ b/ElvUI_SLE/dev/commands.lua
@@ -129,6 +129,18 @@ local function SendRecieve(self, event, prefix, message, channel, sender)
 		if prefix == 'SLE_DEV_REQ' and SLE:Auth(sender) then
 			SendAddonMessage('SLE_DEV_INFO', UnitLevel('player')..'#'..E.myclass..'#'..E.myname..'#'..E.myrealm..'#'..SLE.version, channel)
 		end
+	elseif event == "BN_CHAT_MSG_ADDON" then
+		if sender == E.myname.."-"..E.myrealm then return end
+		if SLE:Auth() then return end
+		if prefix == 'SLE_DEV_REQ' and SLE:Auth(sender) then
+			local _, numBNetOnline = BNGetNumFriends()
+			for i = 1, numBNetOnline do
+				local presenceID, _, _, _, _, _, client, isOnline = BNGetFriendInfo(i)
+				if isOnline and client == BNET_CLIENT_WOW then
+					BNSendGameData(presenceID, 'SLE_DEV_INFO', UnitLevel('player')..'#'..E.myclass..'#'..E.myname..'#'..E.myrealm..'#'..SLE.version)
+				end
+			end
+		end
 	end
 end
 RegisterAddonMessagePrefix('SLE_DEV_SAYS')
@@ -141,6 +153,7 @@ end
 local f = CreateFrame('Frame', "DaFrame")
 f:RegisterEvent("GROUP_ROSTER_UPDATE")
 f:RegisterEvent("CHAT_MSG_ADDON")
+f:RegisterEvent("BN_CHAT_MSG_ADDON")
 f:SetScript('OnEvent', SendRecieve)

 function SLE:RegisterCommands()
diff --git a/ElvUI_SLE/dev/options.lua b/ElvUI_SLE/dev/options.lua
index c6d936d..bd04c66 100644
--- a/ElvUI_SLE/dev/options.lua
+++ b/ElvUI_SLE/dev/options.lua
@@ -18,11 +18,30 @@ if SLE:Auth() then

 	local f = CreateFrame('Frame')
 	f:RegisterEvent('CHAT_MSG_ADDON')
+	f:RegisterEvent('BN_CHAT_MSG_ADDON')
 	f:SetScript('OnEvent', function(self, event, prefix, message, channel, sender)
 		if event == 'CHAT_MSG_ADDON' and prefix == 'SLE_DEV_INFO' then
 			local userLevel, userClass, userName, userRealm, userVersion = strsplit('#', message)
 			userVersion = tonumber(userVersion)
+
+			if userVersion > highestVersion then
+				highestVersion = userVersion
+			end

+			UserListCache[#UserListCache + 1] = {
+				['userLevel'] = userLevel,
+				['userClass'] = userClass,
+				['userName'] = userName,
+				['userRealm'] = userRealm,
+				['userVersion'] = userVersion,
+			}
+
+			ACD:SelectGroup('ElvUI', 'sle', 'developer', 'userList')
+		end
+		if event == 'BN_CHAT_MSG_ADDON' and prefix == 'SLE_DEV_INFO' then
+			local userLevel, userClass, userName, userRealm, userVersion = strsplit('#', message)
+			userVersion = tonumber(userVersion)
+
 			if userVersion > highestVersion then
 				highestVersion = userVersion
 			end
@@ -80,6 +99,7 @@ if SLE:Auth() then
 								['INSTANCE_CHAT'] = 'Instance',
 								['PARTY'] = 'Party',
 								['RAID'] = 'Raid',
+								['BNET'] = 'BNet',
 							},
 						},
 						submitbutton = {
@@ -91,7 +111,15 @@ if SLE:Auth() then
 							func = function(info, value)
 								UserListCache = {} -- Clear Cache

-								if selectedChannel ~= '' then
+								if selectedChannel ~= '' and selectedChannel == 'BNET' then
+									local _, numBNetOnline = BNGetNumFriends()
+									for i = 1, numBNetOnline do
+										local presenceID, _, _, _, _, _, client, isOnline = BNGetFriendInfo(i)
+										if isOnline and client == BNET_CLIENT_WOW then
+											BNSendGameData(presenceID, 'SLE_DEV_REQ', 'GIVE ME YOUR INFO RIGHT NOW!!!')
+										end
+									end
+								elseif selectedChannel ~= '' then
 									SendAddonMessage('SLE_DEV_REQ', 'GIVE ME YOUR INFO RIGHT NOW!!!!', selectedChannel)
 								end
 							end,