/script コマンドを使うと、アドオン用の様々な関数がマクロから利用できます。
たとえば、オートアシスト相当の機能は、こうすればOKです。
/script AssistUnit("target");
たとえば、プリーストの場合、壁役の人をタゲってから、このマクロのショートカットを押すと、壁役をアシストすることになります。バフやヒールは壁の人に対して有効で、攻撃スペルは壁の人がタゲっている敵を攻撃します。
DPS職でも、自動的に壁役とタゲあわせが出来ます。
もし壁役の人が、パーティーリストの1番と判っていれば、以下のマクロでもOKです。
/script AssistUnit("party1");
*追記:最初の記事ではtypoがありました。お詫びして訂正いたします。また、仕様変更により、現行の日本語版クライアントでは動作しない可能性があります。*
他の例。
/script TargetUnit(対象); 対象をタゲります
例 /script TargetUnit("party2"); パーティリストの2番目の人をタゲります
/script FollowUnit(対象); 対象を追尾します
例 /script FollowUnit("party1"); パーティリストの1番目の人を追尾します
どんな関数があるかは、
http://www.theromwiki.com/index.php/List_of_Functions
更に、WidgetをAPIを通じて操作することも可能となります。
/script CastingBarFrame:ClearAllAnchors(); CastingBarFrame:SetAnchor("BOTTOM", "BOTTOM", WorldFrame, 0, -200);
詠唱バーの位置を設定します。
0がx座標、-200がy座標です。好みの位置になるように変更して下さい
WidgetとそのAPIの一覧は、
http://www.theromwiki.com/index.php/List_of_Widget_Elements
http://www.theromwiki.com/index.php/List_of_Widget_Methods
実は、/scriptコマンドを用いることで、アドオン用の言語であるLuaの構文を埋め込むことが出来るのです。例えば、条件分岐のif文を使った例です。
/script if (UnitHealth("player")/UnitMaxHealth("player")<=.85) then UseAction(9); elseif (UnitHealth("player")/UnitMaxHealth("player")<=.90) then UseAction(10); else UseAction(11); end
複雑ですが、HPが85%以下なら9番、90%以下なら10番、それ以外は11番にセットしたPOTを飲むというマクロです。
ただし、マクロは文字数制限がある上に読み難いので、ある程度以上複雑な動作をさせる場合は、アドオンを併用した方がスッキリするでしょう。