ここ数日で、何回か私のSheep Macroを聞かれたので、貼っておきます。
長所:
・Raid groupならRaid Chatに、5ppl groupならParty Chatにメッセージを投げます。
・Targetのレベルもメッセージに含んでます。(実は性別のフラグも利用できるのですが、文字数足りないのでカット)
短所:
・Combat中、かつ、誰もターゲットしていない状況で発動するとエラーフレーム表示が出ます。(操作は可能)
→あと20文字ほど制限が緩ければターゲットの有無判定もできるのですが、上記長所を優先したかったのでカットしてます。
/が行頭で、他は実際には改行しません。
下の例は、表示が崩れるので適宜改行しています。
/script D="";T="target";
if(GetNumPartyMembers()>0) then D="PARTY";end;
if(GetNumRaidMembers()>0) then D="RAID";end;
if(D~="") then SendChatMessage
("Sheeping!! ('-'@3 >> Lvl" .. UnitLevel(T) .. " " .. UnitName(T) .. " <<",D);
end;
/cast Polymorph(Rank 4)
group判定をせずに、Sayで言うだけなら以下の通り。こちらの方がカスタマイズしやすいかと思います。
最後のSAYの部分をPARTY、RAIDに変更するだけで、それぞれのチャットに投げられるようになります。
/script SendChatMessage
("Sheeping!! ('-'@3 >> Lvl" .. UnitLevel("target") .. " " .. UnitName("target") .. " <<","SAY");
長所:
・Raid groupならRaid Chatに、5ppl groupならParty Chatにメッセージを投げます。
・Targetのレベルもメッセージに含んでます。(実は性別のフラグも利用できるのですが、文字数足りないのでカット)
短所:
・Combat中、かつ、誰もターゲットしていない状況で発動するとエラーフレーム表示が出ます。(操作は可能)
→あと20文字ほど制限が緩ければターゲットの有無判定もできるのですが、上記長所を優先したかったのでカットしてます。
/が行頭で、他は実際には改行しません。
下の例は、表示が崩れるので適宜改行しています。
/script D="";T="target";
if(GetNumPartyMembers()>0) then D="PARTY";end;
if(GetNumRaidMembers()>0) then D="RAID";end;
if(D~="") then SendChatMessage
("Sheeping!! ('-'@3 >> Lvl" .. UnitLevel(T) .. " " .. UnitName(T) .. " <<",D);
end;
/cast Polymorph(Rank 4)
group判定をせずに、Sayで言うだけなら以下の通り。こちらの方がカスタマイズしやすいかと思います。
最後のSAYの部分をPARTY、RAIDに変更するだけで、それぞれのチャットに投げられるようになります。
/script SendChatMessage
("Sheeping!! ('-'@3 >> Lvl" .. UnitLevel("target") .. " " .. UnitName("target") .. " <<","SAY");
で、このAdd-onの作者、どうももう引退してるようで、4月以降アップデートされてません。
グループ所属状況や、ターゲット状況の取得をサブルーチン化すれば、Say系のマクロを柔軟に組めていい感じなのですが。
Macro機能はBOTと紙一重なので、どんどんNerfされてます。その度に組み直すのは面倒なので、標準の機能だけでやっています。
本当は、もっと細かいことやりたいんですけどねえ…。