vanilla-wow-addons – Rev 1
?pathlinks?
X-Perl Teamspeak Monitor
This monitor provides a somewhat limited, but potentially useful keyboard
monitor to indicate when you are pressing a key. So, define the key the same as
your TeamSpeak push-to-talk key and you'll see in-game who's talking. Magic!
There are obviously some limitations to this. Notably it will only work when
WoW is the focussed application, so if you're browsing some web page and press
your push-to-talk button, WoW won't see it. It will obviously also not work if
you use voice activation. Also, due to the way WoW key bindings work, it is
not possible at this time to monitor Control, Alt, Shift (or other similar
modifier keys). And finally, you would want to run TeamSpeak/Ventrilo on the
same PC that WoW is on, unless you fancy pressing 2 keys at once :)
NO, it will not work with voice activation. We are strictly bound by the very
proper limitations of the WoW API.
This is a standalone module that will work without X-Perl proper, and will be
available to download seperately. It is also easy to incorporate the same
functionality into other UnitFrame addons.
Command line: /ts /teamspeak /vent /ventrilo
All of these will open the TeamSpeak monitor icon. Right clicking this will
show options menu for anchor direction. X-Perl UnitFrames user won't need to
use this as the Speaking icon is indicated on the player's frames.
This can be done for any UnitFrame mod quite easily also.
Support already in place for:
X-Perl UnitFrames
Perl Classic UnitFrames
Nymbia's Perl UnitFrames
Nurfed UnitFrames - Although the placement was somewhat tricky. If someone with more knowledge than me of Nurfed (ie, none) would like to look over this and improve the icon placement, then please do so.
NUF
CT_RaidAssist raid frames
Blizzard Player and Party frames
To add support for another unit frame:
XPerl_TeamSpeak_Register("player", myPlayerFunc)
XPerl_TeamSpeak_Register("party", myPartyFunc)
XPerl_TeamSpeak_Register("raid", myRaidFunc)
function myPlayerFunc(speaking)
XPerl_ActivateSpeaker(myAnchorFrame, anchor)
end
function myPartyFunc(name, speaking)
local id = XPerl_GetPartyPosition(name)
if (id) then
local frame = getglobal("myPartyUnitFrame"..id)
XPerl_ActivateSpeaker(frame, anchor)
end
end
function myRaidFunc(name, speaking)
local id = XPerl_GetRaidPosition(name)
if (id) then
local frame = getglobal("myRaidUnitFrame"..id)
XPerl_ActivateSpeaker(frame, anchor)
end
end
For XPerl_ActivateSpeaker(frame, anchor). If anchor is not specificed it will
default to "LEFT"
--
X-Perl Teamspeak Monitor by Zek <Blood Cult> - Bloodhoof-EU