local needCombineEx = checkNeedCombineExAdd()
local abilexStr = itemData.ExAbil and itemData.ExAbil.abilex
local exAttrStr = not needCombineEx and ItemTips.ParseExAddAttr(abilexStr) or nil
if exAttrStr and next(exAttrStr) then
lo
这段代码有几个明显的问题:
1. **逻辑错误**:第一个for循环中,`if not string.find()`的判断逻辑反了
- 当前逻辑是:如果物品名称**不包含**检查列表中的名字,就执行return
- 这会导致大部分物品都会直接返回,不显示后续属性
2. **break位置错误**:break语句放在return后面,永远不会执行
3. **strd变量未使用**:定义了`strd = "附加"`但后面没有使用
正确的逻辑应该是:
```lua
local found = false
for i, name in ipairs(checkList) do
if string.find(itemData.Name, name) then
found = true
strd = "成长" -- 找到匹配项,修改为"成长"
break
end
end
if not found then
strd = "附加" -- 没找到匹配项,保持"附加"
end
```
这样就能根据物品名称是否包含特定技能名,来显示不同的属性前缀。