黃易群俠傳M脫機外掛應用程式黃易神行
1582
5

[發問] 製藥有問題

ch8479321 發表於 2012-4-10 13:25:32 | 只看該作者 回帖獎勵 |正序瀏覽 |
automacro initiate {
        run-once 1
        call {
                # 以下設定卡普拉所在座標,可根據不同的卡普拉 NPC 座標作更改
                $npcLocation = alberta 115 61
                # 其他想要初始化設定什麼的可以在下面新增
                do conf storageAuto 1
                do conf sellAuto 0
                do conf autoTalkCont 0
                do conf logPartyChat 1
                do conf sitAuto_sp_lower 0
                do conf sitAuto_sp_upper 0
                do conf sitAuto_over_50 0
                # 一組材料重 7
                do eval $::Macro::Data::varStack{controlAmount} = int(($::char->{'weight_max'} * 0.5 - $::char->{'weight'}) / 7)
                # $controlAmount = @eval(int(($.maxweight * 0.5 - $.weight) / 7))
                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
    inventory "酒精" >= 0
        # 以下為倉庫物品存量判斷
        var medicineBowls > 200
        var emptyPotionBOTtles > 200
        var scells > 200
    var blueHerbs > 200
        call start
        run-once 1
}
# 補貨
macro start {
        lock pharmacy
        pause 1
        do talk @npc (143 119)
        do talk cont
        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(200 - @invamount(藥缽))
        do storage get @storage(空瓶) @eval(200 - @invamount(空瓶))
        do storage get @storage(透明之布) @eval(200 - @invamount(透明之布))
    do storage get @storage(酒精) @eval(200 - @invamount(酒精))
        [
        $medicineBowls = @storamount(藥缽)
        $emptyPotionBottles = @storamount(空瓶)
        $scells = @storamount(透明之布)
        $tempMedicineBowls = @invamount(藥缽)
        ]
        # 由隊頻顯示並記錄倉庫材料剩餘量與成品數量
        do p 藥缽尚餘 $medicineBowls 個
        do p 空瓶尚餘 $emptyPotionBottles 個
        do p 透明之布尚餘 $scells 個
        do p 火煙瓶庫存 @storamount(火煙瓶) 個
        pause 1
        do storage close
        release refillCheck
        release pharmacy
}
# 製藥判斷
automacro pharmacy {
        sp > 20
        inventory "火煙瓶製作說明書" == 1
        inventory "藥缽" >= 1
        inventory "空瓶" >= 1
        inventory "透明之布" >= 1
    inventory "酒精" >= 1
        exclusive 1
        run-once 1
        call {
                do ss 228 10
                do send 8E 01 DF 1B 00 00 00 00 00 00
                release pharmacy
        }
}



這是我照版友分享後自己改的
倉庫設在愛爾貝塔
可是一打開後
先是顯示talk語法錯誤
然後顯示尚無倉庫資訊;本節尚未有存取倉庫的動作
然後就定住了
請問我是有什麼地方改錯了嗎
還請各位會設定的幫忙一下
收藏收藏 分享分享 讚 幹 分享分享 FB分享
回覆

使用道具 舉報


ch8479321 當前離線
UID
1828862
熱心
29 值
嘉獎
0 次
違規
0 次
在線時間
29 小時
經驗
34 點
積分
34
精華
0
最後登錄
2012-4-24
閱讀權限
20
註冊時間
2012-2-8
論壇幣
14 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
6
ch8479321 2012-4-13 22:02:50
我找到原因了
是我有設定過PICKUPITEM那邊
所以空瓶會自動放回去
感謝X大再次幫忙
回覆

使用道具 舉報

[X] 當前離線
UID
1561059
熱心
2263 值
嘉獎
0 次
違規
0 次
在線時間
354 小時
經驗
2176 點
積分
49895
精華
0
最後登錄
2013-4-1
閱讀權限
60
註冊時間
2010-10-8
論壇幣
45088 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 7Rank: 7Rank: 7
5
[X] 2012-4-13 06:37:01
火煙瓶製作說明書沒拿??
那應該是一開始就該放在身上的
沒有拿空瓶??
領取空瓶的語法沒錯,為什麼沒拿我就不清楚了
正確流程是開啟外掛當視窗出現設定值初始化完畢再輸入macro start
回覆

使用道具 舉報

ch8479321 當前離線
UID
1828862
熱心
29 值
嘉獎
0 次
違規
0 次
在線時間
29 小時
經驗
34 點
積分
34
精華
0
最後登錄
2012-4-24
閱讀權限
20
註冊時間
2012-2-8
論壇幣
14 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
ch8479321 2012-4-12 17:37:32
再請X大幫忙
我剛剛製藥可是火煙瓶製作說明說不會拿出來耶
只會拿藥缽,酒精,透布而已
也沒有拿空瓶
是還有什麼地方需要修改嗎
回覆

使用道具 舉報

ch8479321 當前離線
UID
1828862
熱心
29 值
嘉獎
0 次
違規
0 次
在線時間
29 小時
經驗
34 點
積分
34
精華
0
最後登錄
2012-4-24
閱讀權限
20
註冊時間
2012-2-8
論壇幣
14 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 2Rank: 2
ch8479321 2012-4-10 23:37:35
原來是這樣喔
感謝X大的解答
等明天有空就能去試試看了
回覆

使用道具 舉報

[X] 當前離線
UID
1561059
熱心
2263 值
嘉獎
0 次
違規
0 次
在線時間
354 小時
經驗
2176 點
積分
49895
精華
0
最後登錄
2013-4-1
閱讀權限
60
註冊時間
2010-10-8
論壇幣
45088 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 7Rank: 7Rank: 7
[X] 2012-4-10 17:28:15
你預設是在商人城的115 61開倉
可是macro start的對話npc座標卻是143 119
所以會找不到npc對話
另外也沒有定義變數blueHerbs,導致補貨巨集無法觸發
試試以下修改過的巨集
automacro initiate {
        run-once 1
        call {
                # 以下設定卡普拉所在座標,可根據不同的卡普拉 NPC 座標作更改
                $npcLocation = alberta 115 61
                # 其他想要初始化設定什麼的可以在下面新增
                do conf storageAuto 0
                do conf sellAuto 0
                do conf autoTalkCont 0
                do conf logPartyChat 1
                do conf sitAuto_sp_lower 0
                do conf sitAuto_sp_upper 0
                do conf sitAuto_over_50 0
                # 一組材料重 7
                do eval $::Macro::Data::varStack{controlAmount} = int(($::char->{'weight_max'} * 0.5 - $::char->{'weight'}) / 7)
                # $controlAmount = @eval(int(($.maxweight * 0.5 - $.weight) / 7))
                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
        inventory "酒精" >= 0
        # 以下為倉庫物品存量判斷
        var medicineBowls > 200
        var emptyPotionBottles > 200
        var scells > 200
        var blueHerbs > 200
        call start
        run-once 1
}
# 補貨
macro start {
        lock pharmacy
        pause 1
        do talk @npc (115 61)
        do talk cont
        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(200 - @invamount(藥缽))
        do storage get @storage(空瓶) @eval(200 - @invamount(空瓶))
        do storage get @storage(透明之布) @eval(200 - @invamount(透明之布))
        do storage get @storage(酒精) @eval(200 - @invamount(酒精))
        [
        $medicineBowls = @storamount(藥缽)
        $emptyPotionBottles = @storamount(空瓶)
        $scells = @storamount(透明之布)
        $blueHerbs = @storamount(酒精)
        $tempMedicineBowls = @invamount(藥缽)
        ]
        # 由隊頻顯示並記錄倉庫材料剩餘量與成品數量
        do p 藥缽尚餘 $medicineBowls 個
        do p 空瓶尚餘 $emptyPotionBottles 個
        do p 透明之布尚餘 $scells 個
        do p 火煙瓶庫存 @storamount(火煙瓶) 個
        pause 1
        do storage close
        release refillCheck
        release pharmacy
}
# 製藥判斷
automacro pharmacy {
        sp > 20
        inventory "火煙瓶製作說明書" == 1
        inventory "藥缽" >= 1
        inventory "空瓶" >= 1
        inventory "透明之布" >= 1
        inventory "酒精" >= 1
        exclusive 1
        run-once 1
        call {
                do ss 228 10
                do send 8E 01 DF 1B 00 00 00 00 00 00
                release pharmacy
        }
}
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊


手機版 | Archiver | 外掛聯合國

GMT+8, 2024-11-25 02:45 , Processed in 0.051266 second(s), 19 queries , Memcache On.

版權說明:
  本站不會製作、經銷、代理外掛程式。僅免費提供外掛程式下載前之掃毒及掃木馬等安全檢測驗證,協助會員遠離盜號危險程式。本站所有資料均來自網際網路收集整理,說明文字暨下載連結轉載自原程 式開發站。站上出現之公司名稱、遊戲名稱、程式等,商標及著作權,均歸各公司及程式原創所有,本站程式所有權歸外掛聯合國所有。本程式所有權歸外掛聯合國所有.......

回頂部
第二步?
第三步?