qisu
查看: 245|回复: 0

[教程] ESPHashTableCreate写入键值到内存详细说明

[复制链接]

156

主题

0

回帖

471

积分

超级版主

Rank: 8Rank: 8

积分
471
发表于 2023-7-31 21:22:48 来自手机 | 显示全部楼层 |阅读模式

1.本站资源来源于网络,本站不研究无任何技术支持!仅供自行学习交流之用,请勿用于商业用途!

2.一切网民在进入奇速网单主页及各层页面时已经仔细看过并完全同意本站站务区内发布的 免责声明

3.本站内容如若侵犯到您的权益,请通过本站提供的邮箱联系我们,我们将立马删除,E-mail:ggweb@foxmail.com

ESPHashTableCreate

功能:写入键值到内存

命令:

ESPHashTableCreate 参数1 参数2

参数详解:


参数1:标识字符串(不区分大小写)


参数2:存储内容


例子:


我们做个物品首爆提示功能


首先开启ESP功能,功能窗口二-个性化功能-开启物品爆出掉落反馈勾选后保存


下面进行脚本编写


QManage.txt


[@Startup]


#ACT


;写在这里,是因为我们要把之前的记录,载入到哈希链表里,用于查询记录


ESPHashTableLoad ..\QuestDiary\功能文件\爆出提示.txt 1


;载入文件记录,如果想每次启动M2重新计算的,这里就可以去掉,因为哈希值链表,进程每次重新启动就会初始化,他虽然是全局,但不会保存记录到下次启动M2,也不会因为玩家下线而清除之前添加的键值这一点需要理解。


QFunction-0.txt


[@物品爆出反馈]


#IF


ESPHashTableContainsKey <$STR(S$当前爆出物品名称)>


;这条是查询指令,判断有没有这条记录,因为是用内存算法查找,所以会比用Checktextlist这个命令快上百倍、上千倍,以替代斲丧较大的命令,这也是开发哈希链表主要原因,


#ACT


;跳到这里,说明找到此记录,那就不是首爆了,那就空着,不写代码


#elseact


;跳到这块,说明没找到此记录


ESPHashTableCreate <$STR(S$当前爆出物品名称)> 1


;参加哈希链表记录,参数2可以随便定义一个,在这里、用1就可以


AddTextListEx ..\QuestDiary\功能文件\爆出提示.txt  <$STR(S$当前爆出物品名称)>


;同时输出文件,下次重新启动M2也可以载入此记录,如果想每次启动M2都是初始化,这句输出文件和载入命令也可以免了


SendCenterMsg 180 251 恭喜角色:<$USERNAME>,爆出全区第一个<$STR(S$当前爆出物品名称)> 0 3
回复

使用道具 举报

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

本版积分规则

24小时热门更多>
快速回复 返回列表 返回顶部