Macro-Talk

Macro-Talk

24.4k Downloads
MacroTalk provides extended chat command support especially useful for macros. (/macrotalk or /mtk with help for IG info)

Disabling Modules

If you would prefer only to have certain functionality from MacroTalk (for instance, if you have another addon that provides similar functionality), you can disable various modules by renaming or deleting the corresponding .lua files. You can safely remove MacroTalkChatOptions, MacroTalkCommands, and MacroTalkSubstitutions which correspond to Conditional/Random chat commands, Slash commands, and Text substitutions, respectively.


Slash Commands

    tellunit (/tu, /whisperunit, /wu) {unit} {message} Sends a whisper to the specified unit. This link for a list of units

    Example :
    /cast Innervate /tellunit target Incoming innervate

    /group (/gr) {message} Picks /instance if you're in BG, LFR or LFG. Picks /raid if you're in a raid (not LFR). Picks /party if you're in a party (not LFG).

    /opt [options] {slash command}; [options] {slash command}; ... Picks from multiple slash commands given the options. You can only use slash commands that don't trigger secure functions. Chat commands, emotes, scripts, etc. are OK. /cast, /use, etc. are off limits. Note: the sub-commands cannot use macro options since the semicolons would cause ambiguity.

    Example :
    /opt [button:2] /bye; /wave

    /rndcmd [options] {command 1}\{command 2}; [options] {command 3}\{command 4}... Picks a random slash command out of the group chosen based on the given options. Each group is a list of slash commands separated by the backslash (\) character (this is in contrast to commas used for the built-in random commands--commas are just too common in chat messages). Note: like the /opt command, the sub-commands cannot use macro options and you can't use any secure commands.

    Example :
    rndcmd [swimming] /y Help! I'm Drowning! \ /s The water's great!; /s Time for a swim... \ /dance

    /clearwaypoint or /cwp : Clear any waypoint/pin from your map.

Conditional chat commands

All chat commands (/say, /tell, /guild, etc.) can now accept macro options. To use this functionality, simply start the command with /opt. Note: [target=] has no effect on the output of the chat commands; it only affects the other conditionals in the clause.

Example :
/optsay [swimming] gurgle; [mounted] The cavalry has arrived!

Example :
/cast [target=focus] Polymorph /optgroup [target=focus, exists] Sheeping %f[/i]


Random chat commands

Similar to the macro options, you can now add /rnd to the beginning of any chat command to pick a random saying. The /rnd___ commands also take options to pick a different list of sayings. The lists themselves are separated by the backslash symbol (\).

Example :
/rndyell ZOMG! \ WTF?! \ You there! Check out that noise!

Example :
/rndsay [outdoors] Ahhh, the Great Outdoors! \ What a lovely day!; I wish I could go outside right now \ Must... Leave... Building...[/i]


Text substitutions

MacroTalk offers a variety of substitutions in addition to %t of the default UI. Substitutions are prioritized by the length of the code; longer codes are processed first. This means that %tl will be processed before %t. The codes are case-insensitive so %Tl is equivalent to %tL.

    Straight substitutions :
      %n - Your name
      %z - Your current zone
      %sz - Your current sub-zone (or zone if no sub-zone)
      %loc - Your map coordinates
      %wp - Link a pin to your current location and then remove it
      %pin - Link a pin you've manually added to the map
      %cov - Your covenant name
      %covb - Your covenant name (blank if no covenant)
      %rnl - Your renown level
      %rnlb - Your renown level (blank if no covenant)
      %lt - Local time
      %rt - Realm time
    unit information :
      %t - Name of your target (built in, but listed for consistency)
      %f - Name of your focus
      %m - Name of mouseover unit
      %p - Name of your pet
      %tt - Name of your target's target
    You can suffix those with one of the following to return other pieces of data about the unit :
      l - Level
      c - Class
      cl - Unit classification (not localized)
      g - Gender
      gb - Gender (blank if no gender)
      r - Race
      rb - Race (blank if no race)
      gu - Guild
      gub - Guild (blank if no guild)
      rm - Realm (works with other realms, in a dungeon for instance)
      h - Health (XX/XX)
      hp - Health percentage (XX%)
      pw - Power - Depending on the unit power, can be mana, focus, energy and so on
      pwb - Power (blank if no power)
      pwp - Power percentage
      pwpb - Power percentage (blank if no mana)
      ic - Raid icon
      icb - Raid icon (blank if no icon)
      gn - Raid group number - Only if target is in the same raid as you, or you are in a raid
      gnb - Raid group number (blank if no raid group)
      nt - Name with title
      ut - Title
      utb - Title (blank if no title)

    Example :
    /p Sheeping %f (level %fl %fg %fr %fc) /cast [target=focus] Polymorph Sample result: Sheeping Cogwheel (level 64 male Gnome Warrior)

    Example :
    /s I'm a level %l, %g, %r %c from %gu of %rm. Sample result: I'm a level 68, male, gnome warrior from Arkangels of Sargeras.

    MacroTalk continued. Originally created by CogWheel. All thanks to CogWheel for his really nice work on this addon, I am only here to maintain it alive :)
    Do not hesitate to give any kind of comments or suggestions :)