原是自動做酒精存取倉一切都正常,但我想改成做其他藥瓶。
有個問題點: 我發現材料做完她會開倉存放 [可是又要提領材料時,卻有錯誤] 想請問大大 我領材料的地方有錯誤嗎??
原是自動做酒精存取倉一切都正常,但我想改成做其他藥瓶。
有個問題點: 我發現材料做完她會開倉存放 [可是又要提領材料時,卻有錯誤] 想請問大大 我領材料的地方有錯誤嗎?? 似乎這行也有錯誤的樣子(改了很多次,總覺有個地方漏改了 可是我找不出來ˊˋ) 希望能有大大幫忙解決。
$usedMedicineBowls = @eval($tempMedicineBowls - @invamount(藥缽))
備註:此文轉載他人文章,我參考他人的東西練習巨集
================================
automacro initiate {
run-once 1
call {
# 以下設定卡普拉所在座標,可根據不同的卡普拉 NPC 座標作更改
$npcLocation = 175 226 payon
# 其他想要初始化設定什麼的可以在下面新增
do conf storageAuto 0
do conf sellAuto 0
do conf autoTalkCont 0
do conf logPartyChat 1
do conf sitAuto_sp_lower 20
do conf sitAuto_sp_upper 70
do conf sitAuto_over_50 0
# 一組材料重 14
do eval $::Macro::Data::varStack{controlAmount} = int(($::char->{'weight_max'} * 0.5 - $::char->{'weight'}) / 14)
# $controlAmount = @eval(int(($.maxweight * 0.5 - $.weight) / 14))
log 最大可攜帶 $controlAmount 組材料而不負重
if ($controlAmount > 0) goto jump1
log ***** 注意!未攜帶材料前已負重,可能導致巨集執行錯誤! *****
:jump1
if (@invamount(鹽酸瓶製作說明書) != 0) goto jump2
log ***** 注意!鹽酸瓶製作說明書尚未帶在身上 *****
:jump2
log 設定值初始化完畢
}
}
# 補貨判斷
automacro refillCheck {
sp > 95%
inventory "鹽酸瓶製作說明書" == 1
inventory "藥缽" = 0
inventory "空瓶" >= 0
inventory "不死心臟" >= 0
# 以下為倉庫物品存量判斷
var medicineBowls > 150
var emptyBOTtles > 250
var immortalHeart > 250
run-once 1
call start
}
# 補貨
macro start {
lock pharmacy
pause 1
do talk @npc (175 226)
pause 1
do talk cont
pause 2
do talk resp 1
pause 2
# 若身上有上次做出來的酒精,則存入倉庫
if (@invamount(鹽酸瓶) == 0) goto jump
$usedMedicineBowls = @eval($tempMedicineBowls - @invamount(藥缽))
$finishedAmount = @invamount(鹽酸瓶)
do storage add @inventory(鹽酸瓶) @invamount(鹽酸瓶)
# 本 if 為計算成功率用
if ($usedMedicineBowls <= 0) goto jump
$rateOfSuccess = @eval($finishedAmount / $usedMedicineBowls)
do eval $::Macro::Data::varStack{rateOfSuccess} = sprintf("%.2f",$::Macro::Data::varStack{rateOfSuccess} * 100) . '%';
do p 上批製造 $usedMedicineBowls 個鹽酸瓶成功率 $rateOfSuccess
:jump
# 由倉庫取出材料
do storage get @storage(藥缽) @eval(150 - @invamount(藥缽))
do storage get @storage(空瓶) @eval(150 - @invamount(空瓶))
do storage get @storage(不死心臟) @eval(750 - @invamount(不死心臟))
[
$medicineBowls = @storamount(藥缽)
$emptyBottles = @storamount(空瓶)
$ImmortalHeart = @storamount(不死心臟)
$tempMedicineBowls = @invamount(藥缽)
]
# 由隊頻顯示並記錄倉庫材料剩餘量與成品數量
do p 藥缽尚餘 $medicineBowls 個
do p 空瓶尚餘 $emptyBottles 個
do p 鹽酸瓶庫存 @storamount(鹽酸瓶) 個
do p 不死心臟尚餘 $ImmortalHeart 個
pause 1
do storage close
release refillCheck
release pharmacy
}
# 製藥判斷
automacro pharmacy {
sp > 20
inventory "鹽酸瓶製作說明書" == 1
inventory "藥缽" >= 1
inventory "空瓶" >= 1
inventory "不死心臟" >= 1
exclusive 1
run-once 1
call {
do ss 228 10
do send 8E 01 E0 1B 00 00 00 00 00 00
release pharmacy
}
} |