xiaoyewan 发表于 2022-8-26 18:05:01

请问有办法在游戏中做出类似AI检测关键词回复的功能吗?

想问问D大,识别玩家输入的一段话中的某几个关键字,然后触发回答。这种效果有办法用nvlmaker实现嘛?
我只会用@edit name="f.词"配合分歧来检测关键词,但是这种办法只限输入完整关键词,有什么办法可以检测出输入文字的一部分内容吗

VariableD 发表于 2022-8-28 23:41:54

indexOf
 indexOf メソッドは、部分文字列の位置を返します。

構文 : indexOf(<部分文字列>[,<検索開始位置>])

 文字列から、<部分文字列> を<検索開始位置>から検索し、最初に見つかった位置を返します。 0 が返されれば文字列の先頭です。-1 が返されたときは見つからなかったときです。<検索開始位置>を省略すると、文字列の先頭からの検索になります。


例:
    var str = "abcdefghijkl";
    var n = str.indexOf("fgh"); // n には 5 が代入される
    var n = str.indexOf("xyz"); // n には -1 が代入される
即,找不到关键字就是-1,因此不等于-1就是找到了。

xiaoyewan 发表于 2022-8-29 11:52:27

感谢D大!我学会了~
贴一下我的脚本,以便后面的朋友参考
示例:当玩家输入文字包含“吃”字时,触发对话“午饭要吃什么?”
@dia
@eval exp="f.词='说点什么'"
@nowait
@edit name="f.词" opacity="0" color="0xFFFFFF"
@r
@links target="*输入完毕" text="确定" hint="点这里继续"
@endnowait
@s
;----------
*输入完毕
@commit
@er

    var str = f.词;
    var n = str.indexOf("吃");

@if exp="(n!=-1)"
@dia
午饭要吃些什么?
@endif

znq19 发表于 2022-9-9 15:34:47

xiaoyewan 发表于 2022-8-29 11:52
感谢D大!我学会了~
贴一下我的脚本,以便后面的朋友参考
示例:当玩家输入文字包含“吃”字时,触发对话“ ...

感谢示例!
页: [1]
查看完整版本: 请问有办法在游戏中做出类似AI检测关键词回复的功能吗?