# FlarumReader 介绍
FlarumReader,简称 FR,是一个简单的 Flarum 游戏内客户端。你可以通过此插件在服务器里与 Flarum 论坛进行交互。例如,你可以通过它来阅读论坛里的一些帖子、回帖等。相关功能正在逐步完善中。
TIP
💬 Flarum 是 G 点论坛所使用的论坛程序的名字,就好像是你的系统叫 Windows 或 macOS 或 MIUI 或 EMUI 或 HarmonyOS 或 iOS 或 iPadOS 或 Linux 或 Android 一样,论坛也有自己的软件名。它是开源的,这里 (opens new window)是它的官网。
# 基本用法
要开始使用,请执行指令 /g login <用户名> <密码>
。此处,用户名填写 G 点用户名,密码填写对应的密码,均为明文。执行该指令后,你将获得一份凭证(Token),这份凭证代表了你的论坛用户身份。使用该凭证,你可以在游戏内访问所有与论坛相关的指令操作。
目前,FR 支持的操作包括
- 分页查看论坛的帖子列表,按时间顺序排列;
- 阅读指定的帖子;
- 回复指定的帖子。
更多功能将在稍后推出。要访问 FR 的指令,你可以使用以下形式
/flarumreader <参数...>
或者,在 SoTap 所有服务器内,你可以使用简写 /g
。
/g <参数...>
# 指令列表
以下列出所有指令及其相关参数解释。
# /g login <用户名> <密码>
登录你的 G 点账号。没有登录之前任何其它指令都无法使用。
# /g logout
退出你的 G 点账号。再次使用需要重新登录。
# /g list [页数]
可简写为 /g l
。
以列表形式翻阅帖子。页数为任意
执行结果
# /g view <纯数字序号或 ID>
可简写为 /g v
查看指定的帖子。
- 你可以选择紧跟纯数字序号,序号是任意
,对应了你最近一次执行/g list
的结果上的各项。例如,当你最近一次执行/g l 2
,显示了第二页的内容时,那么/g v 5
就代表着查看第二页的第五个帖子。对应上图便是「煮饭贴!不定期更新 - by labtecxxx」。
WARNING
没有执行过 /g list
就执行 /g v <纯数字序号>
会导致错误。
- 你也可以选择紧跟 ID,这时与你是否执行过
/g list
没有关系。例如「SoTap周边预约开启」这个帖子的网址为 https://g.sotap.org/d/232-sotap ,那么它的 ID 就是232
(把链接里多余的单词去掉,剩下的数字就是 ID),是独一无二的。此时执行/g v #232
就可以直接查看该帖子而不需要查看列表。
WARNING
ID 前面必须加 #
,否则会被认为是纯数字序号。
执行完后,需要等待几秒获取帖子内容,然后就会打开一个书本,这个书本里的便是帖子的内容及其回复。
执行结果
需要注意的是,由于 Flarum API 的限制,当页面的回复超过 20 条(包括被隐藏的回复,也就是原帖作者自己删掉的回复)时,后面的回复将无法获得。因此在页面可见回复大于 10 条时我们将显示一个说明和指向原帖的链接。
说明内容
# /g reply <纯数字序号或 ID> <文本内容|book>
可简写为 /g r
回复指定的帖子。
纯数字序号或 ID 的填写请参考上面的 /g view
,用于指定一个你想要回复的帖子。后面的 <文本内容|book>
是指,这里既可以直接写文本,也可以写一个单词 book
代表把你手上拿着的书(可以是没有署名的也可以是已经署名的)里的内容作为回复发到指定的帖子里。
回复纯文本的例子
如果直接写文本,由于 Minecraft 在聊天框里有字数限制,且无法换行,适用于较为简短的回复。如果要进行较长的回复,请使用书本编辑(支持 Markdown 语法、换行等等)并执行 /g reply <纯数字序号或 ID> book
。
执行以后将会以你登录账号的身份对指定的帖子进行回复。以下是几个例子:
/g r #232 笑死,观望下再买。
向 ID 为 232 的帖子(《SoTap周边预约开启》 (opens new window))回复「笑死,观望下再买。」/g r 3 book
向当前列表内第三个帖子回复手持书中的内容。/g r #1 nbcs
尝试向 ID 为 1 的帖子(《新注册请读》 (opens new window))回复「nbcs」。然而这会失败,因为这个帖子已经被锁定了。
# /g download <纯数字序号或 ID>
可简写为 /g d
下载指定的帖子。
此功能实际上和 view 相差不大,唯一的区别是获取了内容以后不直接显示,而是以书本的形式存在玩家的背包里。玩家执行以后将会获得一本包含标题、作者信息的署名书,书里的内容是执行该指令的时候该帖的内容,包含所有内容和部分回帖。
这本署名书将永久以物品的形式存在,除非被清除或破坏。该指令默认情况下普通玩家没有权限。
# /g post <标题> <标签 1> <标签 2> ...
可简写为 /g p
发布一个新的主题。
需要注意的是,要发布一个新的主题,必须在书本中完成对内容的编辑,然后将书拿在手中执行该指令,否则不会成功。同时,标签必须指定至少一个,且不能指定不存在的标签。若要查看已有的标签,可执行 /g tags
。对于某些标签,例如「小黑屋」、「公告」等,普通用户无法使用,因此附带此类标签将导致无法发送。
查看标签
发送成功
# /g reload
管理员用的指令。用来重载插件。该指令实际上会完成两个操作:
- 将最新的配置文件读取到插件里,因此修改完配置文件需要执行才能看到效果。
- 刷新一遍用户表。
用户表是插件启用时自动从论坛中获取到的一个 ID—用户和用户—ID 对,用于插件内用户与其 ID 的一一对应。如果获取过程出错或者获取内容不完整,会导致部分或全部场景下的用户名显示为 null
。