GPを監視して指定以上溜まったら音を鳴らすSomething Need Doingのマクロ
- Posted
- Category
- XIVLauncher
- Tag
- #Something Need Doing / #ギャザラー
免責事項
この記事では、XIVLauncherやDalamudプラグインに関する内容を取り扱っています。
外部ツールを使うリスクをよく理解した上で、自己責任で使用してください。
当ブログでは、記載内容によって生じた損害・損失に対する一切の責任を負いません。
タイトルの通り、GPが指定以上溜まったら /echo
で音を鳴らすだけのマクロを作りました。
シンプルなマクロですが「GP回復の待ち時間に別のことをしていて気が付いたら溢れてた……」というちょっとした悲しい事故を防ぐには十分役に立つと思います。
採掘師・園芸師のモーエンツール強化を少しだけ楽にしてくれるかもしれません。
今回のマクロも Something Need Doing のLua Script機能を使っています。
Lua Script機能は過去の記事でも紹介しているので、詳しく知りたい方は参考にしてみてください。
導入方法
以下の手順の通り、最初に新しい空のマクロを作ってください。
- Something Need Doingのウィンドウを開く(
/pcraft
) - ウィンドウの左上にある「/」を右クリック
- 任意のマクロ名を入力して「+」をクリック
新しいマクロが作れたら、今度は以下のコードをまるっとコピーしてください。
threshold = 700
notifySound = "<se.1> <se.1> <se.1>"
function getCurrentJob()
return string.sub(GetNodeText("_Exp", 3), 0, 3)
end
function getGP()
return tonumber(GetNodeText("_ParameterWidget", 1, 5))
end
function getState()
return getGP() >= threshold
end
state = getState()
while true do
currentJob = getCurrentJob()
if currentJob ~= "MIN" and currentJob ~= "BTN" then
break
end
if not state and getState() then
yield("/e GPが" .. threshold .. "以上になりました " .. notifySound)
state = true
elseif state and not getState() then
state = false
end
yield("/wait 5")
end
コピーしたら、Something Need Doingのウィンドウで先ほど作った空のマクロを選択します。
ウィンドウの右下に「Macro Editor」という欄が表示されます。
そこに先ほどコピーしたコードを貼り付けてください。
最後に、Macro Editorの下にある「</>」をクリックして有効にしてください。
これが有効になっていないと、Luaで書いた内容が全てチャットに流れるので要注意です。
マクロを実行する前に、下のスクリーンショットのように緑色になっているか必ず確認してください。
Luaの処理について
簡単にですが、Luaで行っている処理を解説します。
音を鳴らすGPの閾値
threshold = 700
上記のマクロではGPが700以上で音が鳴り、閾値を変更したい場合は修正が必要です。
例えばGP400以上で音を鳴らしたい場合は threshold = 400
と書き換えてください。
音の種類と音量
notifySound = "<se.1> <se.1> <se.1>"
音の種類と音量を変更したい場合はこの部分を修正してください。<se.1>~<se.16>
の基本的な使い方はエオルゼアデータベース「代名詞」で確認できます。
GPの監視とチャット送信
while true do
currentJob = getCurrentJob()
if currentJob ~= "MIN" and currentJob ~= "BTN" then
break
end
if not state and getState() then
yield("/e GPが" .. threshold .. "以上になりました " .. notifySound)
state = true
elseif state and not getState() then
state = false
end
yield("/wait 5")
end
現在のジョブが採掘師か園芸師なら5秒置きにGPを監視し、それ以外にジョブチェンジすると終了します。/e
( /echo
)は自分にだけ見えるチャットを表示するコマンドです。
おわりに
本当はコーディアルのリキャストも監視したかったのですが、対応する関数がなく断念しました。
当サイトでは収集品採集マクロも紹介しています。
採集ポイントの効果に合わせて手動でスキルを使った場合に比べると効率は下がりますが、ギャザラーが苦手な方やなるべく操作をせずに採集したい方にはおすすめです。
ギャザラー
GPが特定の数値より下回った時の通知を出したいのですが、
返信もしよければ教えて下さい。