大部分功能都是可见的,也很容易理解,再补充一些不可见的功能点。
输入框按上下键可以显示历史指令,但是前提是必须输入至少一个字符才会触发
输入框会自动获取焦点,其它地方的点击事件触发完后又会回到输入框
如果配置了小键盘的映射指令,小键盘就无法在输入框输入了,即使输入框有焦点。
按上下左右键会自动行走,但是进入游戏后需要至少手动行走一步之后才能有效
配置页面保存配置后配置项都存在config.json 里,可以手动修改,比如安装了一个特殊的字体,但是下拉选择里没有这个字体,就可以手动修改config.json设置自己的字体。
配置字体里有一项配置字间隔
,这个可以为负数,有一些字体选择后字与字之间的宽度特别宽,可以把这个值设置为负数,比如-10之类的,就会有很好的效果。
有3个log目录,一个是MUD服务返回的原始数据,存在 raw
目录下,一个是处理过的数据(去掉ASCII颜色码),存在 process
目录下,还有一个是客户端的日志,里面可以看到GMCP相关的数据。每种日志都会保留3天,每天一个文件。
ctrl+z 会自动回滚文本到最底部,有的时候需要往上滑去查看历史文本,然后按这个快捷键快速回到底部
如果想在界面上直接执行函数,只需要 ## 后面跟函数完整写法就可以,如下图:
以下是完整系统函数的列表
变量说明(vars)
id
描述:玩家ID
示例:sys.id
name
描述:玩家名称
示例:sys.name
password
描述:玩家密码
示例:sys.password
send(cmd)
描述:发送指令给Mud服务器
示例:sys.send('ls')
note(text, color)
描述:记事本记事
示例:sys.note('hello', 'green')
timer(index, label, value, iscountdown, format)
描述:设置不同的定时器到界面上
示例:sys.timer(1, 'test', 100, true, 'ss')
info(msg)
描述:打印信息在界面上
示例:sys.info('hello')
error(msg)
描述:打印错误信息在界面上
示例:sys.error('error: hello')
alias(name, command)
描述:为命令设置别名,可用于简化命令或实现命令的别名
示例:sys.alias('k', 'killall')
action(id, pattern, func, isRaw)
描述:注册文本或正则触发器
示例:sys.action('id1','看到了', function(){ sys.send('hi'); })
unalias(name)
描述:移除指定命令别名
示例:sys.unalias('go')
unaction(id)
描述:移除指定的命令触发器
示例:sys.unaction(id)
enablealias(name)
描述:启用指定的命令别名
示例:sys.enablealias('go')
disablealias(name)
描述:暂时禁用指定的命令别名
示例:sys.disablealias('go')
enableaction(id)
描述:启用指定的命令触发器
示例:sys.enableaction(id)
disableaction(id)
描述:暂时禁用指定的命令触发器
示例:sys.disableaction(id)
random()
描述:生成一个随机数(时间戳+随机值)
示例:sys.random()
onSend(id, callback)
描述:注册发送指令前的回调函数
示例:sys.onSend('id', function(cmd){ /* ... */ })
onReceive(id, callback, isRaw)
描述:注册接收消息时的回调函数
示例:sys.onReceive('id', function(msg){ /* ... */ },true)
delay(seconds, commandOrFunc)
描述:延迟执行命令或函数
示例:sys.delay(2, 'look')
undelay(timerId)
描述:取消延迟执行
示例:sys.undelay(timerId)
tick(seconds, commandOrFunc)
描述:定时循环执行
示例:sys.tick(5, 'look')
untick(timerId)
描述:取消定时循环
示例:sys.untick(timerId)
sleep(seconds)
描述:异步延迟指定秒数
示例:await sys.sleep(2)
actionOnce(pattern, func, timeout)
描述:只触发一次的命令监听
示例:sys.actionOnce('你得到了', () => sys.send('get all'), 30)
batch(commands[], delaySec)
描述:批量顺序执行命令
示例:await sys.batch(['look', 'go east'], 1)
reversePath(path)
描述:反转路径字符串
示例:sys.reversePath('w;w;s')
find(name, desc, timeout)
描述:在当前房间查找物品或NPC
示例:await sys.find('小贩', '一个卖东西的小贩', 3)
try(command, successText, timeout, failTexts[])
描述:执行命令并等待匹配文本
示例:await sys.try('go east', '你到达了东门', 10, ['这里没有路'])
retry(command, successText, interval, maxRetry)
描述:重试执行命令直到成功
示例:await sys.retry('go east', '你到达了东门', 2, 5)
test(text, isRaw)
描述:模拟文本触发器
示例:sys.test('看到了',false)
reload(scope)
描述:重新加载脚本,com 或 my
示例:sys.reload('com')
go(location)
描述:使用逍遥游移动到指定位置
示例:sys.go('扬州')
_send(cmd)
描述:直接发送指令(不做处理)
示例:sys._send('look')
xy(location, callback)
描述:使用逍遥游并成功后执行回调
示例:await sys.xy('扬州城', () => sys.send('look'))
status()
描述:获取当前角色状态对象
示例:sys.status()
isbusy()
描述:判断是否忙碌
示例:sys.isbusy()
isfighting()
描述:判断是否战斗中
示例:sys.isfighting()
room()
描述:获取当前房间对象
示例:sys.room()
closeFullme()
描述:关闭fullme窗口
示例:sys.closeFullme()
n>