哈希链表
写入键值
TJ_HashTableInsert 参数1 参数2
参数位置 |
参数说明 |
参数1 |
标识字符串 |
参数2 |
键值(可为数字或字符串) |
[@测试]
#IF
CHECKLEVELEX > 0
#ACT
TJ_HashTableInsert 杀手 一号战队
SENDMSG 5 玩家"杀手"加入一号战队
break
查找键值
TJ_CheckHashTableExist 参数1
参数位置 |
参数说明 |
参数1 |
标识字符串(不区分大小写) |
[@测试]
#IF
TJ_CheckHashTableExist 杀手
#ACT
SENDMSG 5 玩家“小杀”已存在记录中
break
获取键值
TJ_HashTableGet 参数1 参数2
参数位置 |
参数说明 |
参数1 |
标识字符串(不区分大小写) |
参数2 |
获取保存后的变量(不区分大小写) |
[@测试]
#IF
TJ_CheckHashTableExist 杀手
#ACT
TJ_HashTableGet 杀手 <$STR(S10)>
SENDMSG 5 玩家“小杀”当前键值为[<$STR(S10)>]
break
#ELSEACT
SENDMSG 5 未找到“杀手”任何记录
break
删除键值
TJ_HashTableRemove 参数1
参数位置 |
参数说明 |
参数1 |
标识字符串(不区分大小写) |
[@测试]
#IF
TJ_CheckHashTableExist 杀手
#ACT
TJ_HashTableRemove 杀手
SENDMSG 5 玩家“小杀”已删除记录
break
清除所有键值
TJ_HashTableClear
[@测试]
#IF
CHECKLEVELEX > 0
#ACT
TJ_HashTableClear
SENDMSG 5 已清除所有键值记录
break
载入文本内容到键值
TJ_HashTableLoad 参数1 参数2 参数3
参数位置 |
参数说明 |
参数1 |
文本路径 |
参数2 |
键值(可为数字或字符串) |
参数3 |
分割符(该参数忽略则视为换行符) |
[@测试]
#IF
CHECKLEVELEX > 0
#ACT
TJ_HashTableLoad ..\QuestDiary\战队成员.txt 一号战队
SENDMSG 5 该文本内的所有玩家加入“一号战队”
break
“战队成员.txt”文本内容如下:(文本玩家每行一个名字,则 TJ_HashTableLoad 命令最后一个参数可为空)
杀手
小杀
魔尊
雄霸
(扩展)载入文本内容到键值
TJ_HashTableLoadEx 参数1 参数2 参数3
参数位置 |
参数说明 |
参数1 |
文本路径 |
参数2 |
标识符前缀附加值 |
参数3 |
键值(可为数字或字符串) |
参数4 |
分割符(该参数忽略则视为换行符) |
[@测试]
#IF
CHECKLEVELEX > 0
#ACT
TJ_HashTableLoadEx ..\QuestDiary\战队成员.txt 情义天下 一号战队
SENDMSG 5 该文本内【情义天下】队伍所有玩家加入“一号战队”
break
“战队成员.txt”文本内容如下:(文本玩家每行一个名字,则 TJ_HashTableLoad 命令最后一个参数可为空)
杀手
小杀
魔尊
雄霸
"使用前缀附加值后,查找、检测命令则需要添加前缀符号值。"
[@测试]
#IF
TJ_HashTableLoadEx 情义天下杀手
#ACT
SENDMSG 5 “情义天下杀手”已存在记录中
break
[@测试]
#IF
CHECKLEVELEX > 0
#ACT
TJ_HashTableGet 情义天下雄霸 <$STR(S10)>
SENDMSG 5 玩家“情义天下雄霸”当前是:[<$STR(S10)>]
break