[Bug]: 重载js插件后,用先前保存的ctx调用vars.intGet(ctx,key)[0]返回的数值都是0
Closed this issue · 6 comments
error2913 commented
在提问之前...
- 我理解 Issue 是用于反馈和解决问题的,而非吐槽评论区,将尽可能提供更多信息帮助问题解决
- 我填写了简短且清晰明确的标题,以便开发者在翻阅 issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
- 我已查看master branch或最新测试版的更新内容,并未提及该 bug 已被修复的情况
- 已有issue中并没有看见其他人与我反馈相同的问题
问题描述
重载js插件后,用先前保存的ctx调用vars.intGet(ctx,key)[0]返回的数值永远都是0
如何复现
1.在插件获取一个用户的ctx并存入数据库
2.重载插件
3.调用seal.vars.intGet(ctx,key),全都是0
你期望发生的
js重载后仍能正常读取
实际上发生的
所有读取到的都变成0
日志文件
日志正常
截图
海豹核心版本
1.4.6
操作系统
windows
帐号类型
使用协议
内置拉格兰
附加内容
No response
Szzrain commented
ctx怎么存进的数据库,以及你怎么取出来的,没看到这部分的代码
error2913 commented
error2913 commented
Xiangze-Li commented
考虑到 MsgContext 里指针乱飞的情况,我觉得有必要怀疑正确写法是不是真的存在。即,将 MsgContext 对象保存下来并在 goja 重启后使用是否是一个有可行性的设计。
error2913 commented
那么是否可以,只通过QQ号和角色卡名来读取属性,绕开这个问题