vanilla-wow-addons – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 X-Perl Teamspeak Monitor
2  
3 This monitor provides a somewhat limited, but potentially useful keyboard
4 monitor to indicate when you are pressing a key. So, define the key the same as
5 your TeamSpeak push-to-talk key and you'll see in-game who's talking. Magic!
6  
7 There are obviously some limitations to this. Notably it will only work when
8 WoW is the focussed application, so if you're browsing some web page and press
9 your push-to-talk button, WoW won't see it. It will obviously also not work if
10 you use voice activation. Also, due to the way WoW key bindings work, it is
11 not possible at this time to monitor Control, Alt, Shift (or other similar
12 modifier keys). And finally, you would want to run TeamSpeak/Ventrilo on the
13 same PC that WoW is on, unless you fancy pressing 2 keys at once :)
14  
15 NO, it will not work with voice activation. We are strictly bound by the very
16 proper limitations of the WoW API.
17  
18 This is a standalone module that will work without X-Perl proper, and will be
19 available to download seperately. It is also easy to incorporate the same
20 functionality into other UnitFrame addons.
21  
22 Command line: /ts /teamspeak /vent /ventrilo
23  
24 All of these will open the TeamSpeak monitor icon. Right clicking this will
25 show options menu for anchor direction. X-Perl UnitFrames user won't need to
26 use this as the Speaking icon is indicated on the player's frames.
27  
28 This can be done for any UnitFrame mod quite easily also.
29  
30 Support already in place for:
31  
32 X-Perl UnitFrames
33 Perl Classic UnitFrames
34 Nymbia's Perl UnitFrames
35 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.
36 NUF
37 CT_RaidAssist raid frames
38 Blizzard Player and Party frames
39  
40 To add support for another unit frame:
41  
42 XPerl_TeamSpeak_Register("player", myPlayerFunc)
43 XPerl_TeamSpeak_Register("party", myPartyFunc)
44 XPerl_TeamSpeak_Register("raid", myRaidFunc)
45  
46 function myPlayerFunc(speaking)
47 XPerl_ActivateSpeaker(myAnchorFrame, anchor)
48 end
49  
50 function myPartyFunc(name, speaking)
51 local id = XPerl_GetPartyPosition(name)
52 if (id) then
53 local frame = getglobal("myPartyUnitFrame"..id)
54 XPerl_ActivateSpeaker(frame, anchor)
55 end
56 end
57  
58 function myRaidFunc(name, speaking)
59 local id = XPerl_GetRaidPosition(name)
60 if (id) then
61 local frame = getglobal("myRaidUnitFrame"..id)
62 XPerl_ActivateSpeaker(frame, anchor)
63 end
64 end
65  
66 For XPerl_ActivateSpeaker(frame, anchor). If anchor is not specificed it will
67 default to "LEFT"
68  
69  
70 --
71 X-Perl Teamspeak Monitor by Zek <Blood Cult> - Bloodhoof-EU