翎风引擎

 找回密码
 立即注册
查看: 316|回复: 5

GetBagItemFieldValue 遍历背包有漏项,

 关闭 [复制链接]

1

主题

2

回帖

5

积分

新手上路

Rank: 1

积分
5
发表于 2023-6-24 17:30:12 | 显示全部楼层 |阅读模式
bug提交
M2版本: 20230606
BUG描述: GetBagItemFieldValue 遍历背包总会少几个
BUG重现方式(步骤,流程等): 看内容
修复BUG后应达到的效果: GetBagItemFieldValue 全部遍历背包
联系QQ: 879080723
BUG专用端下载地址: 1111
GetBagItemFieldValue 同编号遍历背包总会少几个,有一定的规律性。
这是第一次遍历回收的情况

图片.png
这是第二次:
图片.png
这是第三次:
图片.png
这是第四次:
图片.png

代码为:
GetBagInfo ItemCount N9
MOV N8 0
WHILE N8 < <$STR(N9)>
MOV S6
MOV S7
GetBagItemFieldValue 0 <$STR(N8)> NAME S6
GetBagItemFieldValue 0 <$STR(N8)> makeindex S7
GOTO @回收判断
INC N8 1
ENDWHILE

用<$STR(S6)>也不显示未回收的那些物品,但多试几次就可以回收。
2个物品就只识别其中1个物品




请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

7

主题

57

回帖

646

积分

版主

Rank: 7Rank: 7Rank: 7

积分
646
发表于 2023-6-24 19:02:48 | 显示全部楼层
100%是你的脚本,或者方法有问题
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2023-6-24 19:15:18 | 显示全部楼层
汤团先生 发表于 2023-6-24 19:02
100%是你的脚本,或者方法有问题

就算不进入回收,也一样不全,你可以去试下
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

7

主题

57

回帖

646

积分

版主

Rank: 7Rank: 7Rank: 7

积分
646
发表于 2023-6-24 19:30:26 | 显示全部楼层
本帖最后由 汤团先生 于 2023-6-24 19:33 编辑
liujunyi 发表于 2023-6-24 19:15
就算不进入回收,也一样不全,你可以去试下

我用的方法跟你不一样,我反正没有问题,

我把背包全部物品的makeindex保存到数组变量里面,然后依次关联makeindex,
检测物品再删除物品或者取消关联。这是我之前的办法,我是没有发现问题的。

现在我用的插件来回收背包物品,
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2023-6-24 20:14:16 | 显示全部楼层
本帖最后由 liujunyi 于 2023-6-24 20:17 编辑
汤团先生 发表于 2023-6-24 19:30
我用的方法跟你不一样,我反正没有问题,

我把背包全部物品的makeindex保存到数组变量里面,然后依次关联 ...
解决了,你说的这个是可以的
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

14

主题

133

回帖

683

积分

高级会员

Rank: 4

积分
683
发表于 2023-6-25 07:05:53 | 显示全部楼层
[@分解功能]
{
#if
large I666 <$str(N$分解DC)>
#act
GetPlayInfo BAGITEMCOUNT N$背包物品数量
MOV N$分解DC <$str(I666)>
INC N$分解DC 2
MOV S4
MOV N$分解循环参数 0
MOV N$本次分解数量 0
MOV N$本次分解声望 0
MOV N$分解声望 0
LOOPGOTO @分解循环 <$STR(N$背包物品数量)>

[@分解循环]
#if
#act
GetItemFieldValue bagitem<$STR(N$分解循环参数)> name S4

#if
EQUAL S4
#act
SENDMSG 5  你背包内已经没有可以分解的物品了!
endloop
break

#OR
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\专属分解名单.txt <$STR(S4)>
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\奇物分解名单.txt <$STR(S4)>
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\特殊分解名单.txt <$STR(S4)>
#ACT
#ELSEACT
INC N$分解循环参数 1
break

#IF
NOT EQUAL S4
EQUAL T35 是
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\专属分解名单.txt <$STR(S4)>
#ACT
GETDBITEMFIELDVALUE <$STR(S4)> FJSL <$STR(N$分解声望)>
TAKEBAGITEM <$STR(S4)> 100 0 0 0 0 N$本次分解数量 0 1


#IF
NOT EQUAL S4
EQUAL T35 是
LARGE N$本次分解数量 0
LARGE N$分解声望 0
#ACT
MUL N$本次分解声望 <$STR(N$分解声望)> <$STR(N$本次分解数量)>
CREDITPOINT + <$STR(N$本次分解声望)>
SENDMSG 0 ぐ恭喜玩家[<$USERNAME>]分解专属装备「<$STR(S4)>」获得「<$STR(N$本次分解声望)>」声望值.!! 249 251
MOV N$本次分解数量 0
MOV N$本次分解声望 0
MOV N$分解声望 0
MOV S4
break

#IF
NOT EQUAL S4
EQUAL T36 是
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\奇物分解名单.txt <$STR(S4)>
#ACT
GETDBITEMFIELDVALUE <$STR(S4)> FJSL <$STR(N$分解声望)>
TAKEBAGITEM <$STR(S4)> 100 0 0 0 0 N$本次分解数量 0 1

#IF
NOT EQUAL S4
EQUAL T36 是
LARGE N$本次分解数量 0
LARGE N$分解声望 0
#ACT
MUL N$本次分解声望 <$STR(N$分解声望)> <$STR(N$本次分解数量)>
CREDITPOINT + <$STR(N$本次分解声望)>
SENDMSG 0 ぐ恭喜玩家[<$USERNAME>]分解奇物装备「<$STR(S4)>」获得「<$STR(N$本次分解声望)>」声望值.!! 249 251
MOV N$本次分解数量 0
MOV N$本次分解声望 0
MOV N$分解声望 0
MOV S4
break

#IF
NOT EQUAL S4
EQUAL T37 是
CHECKTEXTLIST ..\QuestDiary\神秘传奇\自动回收\特殊分解名单.txt <$STR(S4)>
#ACT
GETDBITEMFIELDVALUE <$STR(S4)> FJSL <$STR(N$分解声望)>
TAKEBAGITEM <$STR(S4)> 100 0 0 0 0 N$本次分解数量 0 1

#IF
NOT EQUAL S4
EQUAL T37 是
LARGE N$本次分解数量 0
LARGE N$分解声望 0
#ACT
MUL N$本次分解声望 <$STR(N$分解声望)> <$STR(N$本次分解数量)>
CREDITPOINT + <$STR(N$本次分解声望)>
SENDMSG 0 ぐ恭喜玩家[<$USERNAME>]分解特殊装备「<$STR(S4)>」获得「<$STR(N$本次分解声望)>」声望值.!! 249 251
MOV N$本次分解数量 0
MOV N$本次分解声望 0
MOV N$分解声望 0
MOV S4
break

#if
#ACT
INC N$分解循环参数 1
}
请大家不要恶意灌水,回复纯数字、纯字母、纯表情等内容的直接禁言1周处理!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|翎风引擎论坛 |网站地图

GMT+8, 2024-5-19 03:06 , Processed in 0.018988 second(s), 23 queries , Gzip On, Redis On.

Powered by haom2 X3.4

© 2001-2023 Discuz! Team.

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