a836472 发表于 前天 11:52 PM

求助狂暴战自动主副手上磨刀石

求助狂暴战主副手上磨刀石的Bee

法修 发表于 昨天 11:57 AM

//背包是否有【磨刀石】且数量大于0
//装备主手是否有武器
//玩家身上buff时间是否<1(主手)
//对主手使用【磨刀石】
//装备副手是否有武器
//玩家身上buff时间是否<1(副手)
//对副手使用【磨刀石】
按这个逻辑来写吧。

xtayflf 发表于 昨天 01:02 PM

function AutoApplySharpeningStone()
    -- 1. 定义你想要使用的磨刀石名称(根据你的等级修改)
    -- 比如:坚固的磨刀石、致密磨刀石、元素磨刀石等
    local stoneName = "致密磨刀石"
   
    -- 2. 获取武器附魔信息 (原生 API)
    -- hasMain: 主手是否有附魔, mainTimer: 剩余时间(毫秒), mainCharges: 剩余次数
    -- hasOff: 副手是否有附魔
    local hasMain, mainTimer, mainCharges, hasOff, offTimer, offCharges = GetWeaponEnchantInfo()

    -- 3. 如果主手没有附魔,或者附魔即将到期(比如少于 1 分钟/60000毫秒)
    if not hasMain or (mainTimer and mainTimer < 60000) then
      -- 检查背包是否有该物品
      if BeeGetItemId(stoneName) then
            -- 如果不在战斗中(3.3.5 战斗中通常无法直接通过插件更换/涂抹武器附魔,除非是宏)
            if not BeeIsBattle() then
                -- WBE API: 使用物品
                BeeUse(stoneName)
                -- 模拟点击主手槽位 (16是主手)
                PickupInventoryItem(16)
                print("正在为主手涂抹 " .. stoneName)
                return
            end
      end
    end

    -- 4. 如果你想给副手也涂抹 (如果是双持职业)
    if not hasOff or (offTimer and offTimer < 60000) then
      if BeeGetItemId(stoneName) then
            if not BeeIsBattle() then
                BeeUse(stoneName)
                -- 模拟点击副手槽位 (17是副手)
                PickupInventoryItem(17)
                print("正在为副手涂抹 " .. stoneName)
                return
            end
      end
    end
end

AI给的

a836472 发表于 昨天 04:56 PM

xtayflf 发表于 2026-1-27 01:02 PM
function AutoApplySharpeningStone()
    -- 1. 定义你想要使用的磨刀石名称(根 ...

AI写的这个运行没反应
页: [1]
查看完整版本: 求助狂暴战自动主副手上磨刀石