LUACN论坛

 找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
热搜: YJWOW MagicStone BoL
查看: 729|回复: 11

[wowbee] 相同名字的武器,不同属性。魔蜂如何识别换装?

[复制链接]
发表于 2025-9-22 10:21:04 | 显示全部楼层 |阅读模式
请教大佬,比如 两把武器名字一样,只有一条绿字不一样。触发的buff也不一样。如何实现识别一把触发BUFF后自动换另一把? 十分感激!!!


回复

使用道具 举报

发表于 2025-9-22 11:12:09 | 显示全部楼层
比如把武器放到一个固定的位置,触发buff就执行使用那个位置的物品
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-9-22 14:12:53 | 显示全部楼层
谢谢!主要还需要换回来。 用背包好像不行。
回复 支持 反对

使用道具 举报

发表于 2025-9-22 18:24:45 | 显示全部楼层
ID不同
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-9-22 20:55:13 | 显示全部楼层

血总 ID 一样的 技能BUFF 我可以识别了,就是不知道怎么识别绿字。
回复 支持 反对

使用道具 举报

发表于 2025-9-22 22:32:13 | 显示全部楼层
本帖最后由 吾奶常煽赵子龙 于 2025-9-22 10:33 PM 编辑
81845986 发表于 2025-9-22 08:55 PM
血总 ID 一样的 技能BUFF 我可以识别了,就是不知道怎么识别绿字。

[Lua] 纯文本查看 复制代码
tipScanner = tipScanner or CreateFrame("GameTooltip", "MyTooltipScanner", UIParent, "GameTooltipTemplate")
tipScanner:SetOwner(UIParent, "ANCHOR_NONE")

function GetItemTooltipText(itemLinkOrId)
    tipScanner:ClearLines();
    tipScanner:SetHyperlink(itemLinkOrId);

    local textLines = {}
    for i = 1, tipScanner:NumLines() do
        local leftText = _G["MyTooltipScannerTextLeft" .. i];
        if leftText then
            table.insert(textLines, leftText:GetText() or "");
        end
    end

    return textLines;
end


用上面这个方法可以获取到鼠标放到该物品上时的提示文本内容。用法:
[Lua] 纯文本查看 复制代码
function CheckHasKeyword(itemLink, keyword)
    local textLines = GetItemTooltipText(itemLink);
    for _, text in ipairs(textLines) do
        if text:find(keyword, 1, true) then
            return true;
        end
    end
    return false;
end


if CheckHasKeyword(itemLink, "你好查找为文本内容") then
    print("发现目标文本内容")
end


点评

这个方法,用到换武器上,属实有点大材小用了 这个可以用在随机附魔的洗练上  详情 回复 发表于 2025-9-23 07:56 PM
回复 支持 反对

使用道具 举报

发表于 2025-9-23 09:23:30 | 显示全部楼层
谢谢!主要还需要换回来1
回复 支持 反对

使用道具 举报

发表于 2025-9-23 17:21:16 | 显示全部楼层
81845986 发表于 2025-9-22 02:12 PM
谢谢!主要还需要换回来。 用背包好像不行。

背包位置是固定的,再换一次不就回来了
回复 支持 反对

使用道具 举报

发表于 2025-9-23 17:34:35 | 显示全部楼层
吾奶常煽赵子龙 发表于 2025-9-22 10:32 PM
[mw_shl_code=lua,true]tipScanner = tipScanner or CreateFrame("GameTooltip", "MyTooltipScanner", UI ...

textLines一直都是nil,在5.48环境下
回复 支持 反对

使用道具 举报

发表于 2025-9-23 19:39:06 | 显示全部楼层
本帖最后由 lbabey 于 2025-9-23 07:54 PM 编辑

1.首先要知道你的那个服,不同随机附魔的武器的link 是否一样
2.如果不一样,则可以直接使用
  1. local b = "|cffff8000|Hitem:63906:0:3524:0:0:0:0:0:80|h[污染者碎片]|h|r"
  2. EquipItemByName(b)
复制代码
类似这样的方法换上指定的武器
不用管你的武器在背包的位置
3.即使随机附魔link是一样的,
只要通过X不同宝石、附魔改变下link,就不一样了
4.如果还不行
设置一个变量,当换过以后改变这个变量
具体 自己在琢磨下

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|LUACN论坛

GMT+8, 2026-8-16 10:29 AM , Processed in 0.047954 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表