As for the addon using channel 1 for the data channel and the issues preventing it from doing that. E.g (It's fixed, wait, no its not -repeat- )
This should fix it.
--put this on line 19
function oq_getlastchannel()
if(DEFAULT_CHAT_FRAME:GetID()) then
local chatchannels = { GetChatWindowChannels(DEFAULT_CHAT_FRAME:GetID()) }
if (#chatchannels ~= 0) then
local numchannels = (#chatchannels / 2)
if (numchannels >= 1) then
OQ_LASTCHANNEL = numchannels + 1
else
OQ_LASTCHANNEL = 1
end
else
OQ_LASTCHANNEL = 1
end
end
end
--init with 1 as global to be modified for passing through functions
OQ_LASTCHANNEL = 1
--48
local OQ_REALM_CHANNEL = OQ_LASTCHANNEL;
--2632
function oq.join_oq_general()
if (oq._banned) or (OQ_data.auto_join_oqgeneral == 0) or (oq._inside_instance) or (oq._oqgeneral_initialized == nil) then
return ;
end
oq_getlastchannel()
oq.channel_join( OQ_LASTCHANNEL ) ;
end
function oq.oqgeneral_join()
if (oq._banned) or (OQ_data.auto_join_oqgeneral == 0) or (oq._inside_instance) or (oq._oqgeneral_initialized == nil) then
return ;
end
oq_getlastchannel()
oq.channel_join( OQ_LASTCHANNEL ) ;
oq.timer( "hook_roster_update" , 5, oq.hook_roster_update , true, OQ_LASTCHANNEL ) ; -- will repeat until channel joined
oq.timer( "chk_OQGeneralLockdown", 30, oq.check_oqgeneral_lockdown, true ) ; -- will check capacity every 30 seconds
end
--2659
function oq.channel_general( msg )
if (_oqgeneral_lockdown) then
return ; -- too many ppl in oqgeneral, voluntary mute engaged
end
oq_getlastchannel()
oq.channel_say( OQ_LASTCHANNEL, msg ) ;
end
This should fix it.
--put this on line 19
function oq_getlastchannel()
if(DEFAULT_CHAT_FRAME:GetID()) then
local chatchannels = { GetChatWindowChannels(DEFAULT_CHAT_FRAME:GetID()) }
if (#chatchannels ~= 0) then
local numchannels = (#chatchannels / 2)
if (numchannels >= 1) then
OQ_LASTCHANNEL = numchannels + 1
else
OQ_LASTCHANNEL = 1
end
else
OQ_LASTCHANNEL = 1
end
end
end
--init with 1 as global to be modified for passing through functions
OQ_LASTCHANNEL = 1
--48
local OQ_REALM_CHANNEL = OQ_LASTCHANNEL;
--2632
function oq.join_oq_general()
if (oq._banned) or (OQ_data.auto_join_oqgeneral == 0) or (oq._inside_instance) or (oq._oqgeneral_initialized == nil) then
return ;
end
oq_getlastchannel()
oq.channel_join( OQ_LASTCHANNEL ) ;
end
function oq.oqgeneral_join()
if (oq._banned) or (OQ_data.auto_join_oqgeneral == 0) or (oq._inside_instance) or (oq._oqgeneral_initialized == nil) then
return ;
end
oq_getlastchannel()
oq.channel_join( OQ_LASTCHANNEL ) ;
oq.timer( "hook_roster_update" , 5, oq.hook_roster_update , true, OQ_LASTCHANNEL ) ; -- will repeat until channel joined
oq.timer( "chk_OQGeneralLockdown", 30, oq.check_oqgeneral_lockdown, true ) ; -- will check capacity every 30 seconds
end
--2659
function oq.channel_general( msg )
if (_oqgeneral_lockdown) then
return ; -- too many ppl in oqgeneral, voluntary mute engaged
end
oq_getlastchannel()
oq.channel_say( OQ_LASTCHANNEL, msg ) ;
end