本帖最后由 秋风残叶 于 2021-12-8 20:24 编辑
Denizen新手教程
Denizen Beginner's Guide
Denizen是一款功能非常强大的脚本引擎类型的服务端插件,如果您对Denizen还不了解请参考这个
站内搬运帖
。
Denizen虽然功能强大,但学习起来较为复杂,无编程基础的新人想要入门总是十分不易。在以前,Denizen只提供了用来查阅变量/脚本的参考文档,甚至连个入门教程都没有,这更让新手入门雪上加霜。
本插件的搬运者摸索了插件脚本的基本用法,并在搬运帖中写了少量教程,写的十分外行且不系统,但就算是这样的内容也确实帮助了一些服主,帮助他们燃起对Denizen脚本的兴趣,搬运者十分感谢他们的支持。
现在,想必作者团队也发现了插件入门不易的问题,现改版了旧版的
Denizenscript论坛
并逐步推出了浅显易懂的入门教程,Denizen的搬运者立刻着手于本教程的翻译工作,现发布本译文。
秋风残叶
|
|
这篇帖子是一整套Wiki翻译中的一章(总共九个大章节),然而,Wiki的原作者并没有完成全部内容,且进度拉胯,部分大章节已经写完,部分大章节只写了一点,甚至还有部分大章节一点没动。
很遗憾,这篇帖子涉及的就是作者进度拉胯的一个大章节。
因此,这篇帖子可能内容很少,写的也不够好——不是因为翻译者在水贴,是因为拉胯的原作者目前只写了这么多!
请不要觉得这篇帖子没有价值
,毕竟翻译者一直在跟进原作者的Wiki进度,当原作者完成之后会第一时间补全内容。
|
本教程总共9个大章节,您现在阅读的是第4大章节
NPC
NPCs
注意:《NPC》按照作者原定计划分为4小章节,但作者进度拉胯,目前没有一篇是全部完成的
译者目前已跟进作者之进度
-
告诉我,我是谁——分配型脚本
-
告诉我,我要做什么——交互型脚本
-
和我聊聊天——聊天触发
-
离我近一点——接近触发
|
|
|
|
这里提供一个简单的分配型脚本写法
可复制
-
my_assignment:
-
type: assignment
-
actions:
-
on assignment:
-
- trigger name:click state:true
-
on click:
-
- chat "你好 <player.name>!"
复制代码
可复制
之后,你可以使用指令
/ex assignment set my_assignment
来把这个分配型脚本“分配”给你选中的NPC(来自Citizens)
|
相关的参考文档
|
如果你想阅读更多有关分配型脚本的内容,也许你可以读读以下链接内容。
请注意:对于Denizen新人来说,以下链接内容过于复杂,不建议现在就阅读,建议继续阅读本指南接下来的部分,当你已经有了Denizen基础能力以后才建议回来阅读链接内容。
|
|
|
|
|
这里提供一个简单的交互型脚本写法
可复制
-
my_assignment:
-
type: assignment
-
actions:
-
on assignment:
-
- trigger name:click state:true
-
interact scripts:
-
- my_interact
-
-
my_interact:
-
type: interact
-
steps:
-
1:
-
click trigger:
-
script:
-
- chat "你好, <player.name>!"
-
- zap 2
-
2:
-
click trigger:
-
script:
-
- chat "再说一遍你好, <player.name>!"
-
- zap *
复制代码
可复制
之后,你可以使用指令
/ex assignment set my_assignment
来把这个脚本“分配”给你选中的NPC(来自Citizens)
|
相关的参考文档
|
如果你想阅读更多有关交互型脚本的内容,也许你可以读读以下链接内容。
请注意:对于Denizen新人来说,以下链接内容过于复杂,不建议现在就阅读,建议继续阅读本指南接下来的部分,当你已经有了Denizen基础能力以后才建议回来阅读链接内容。
交互型脚本相关文档
触发指令文档
交互型脚本触发语言
|
|
|
|
可复制
-
my_assignment:
-
type: assignment
-
actions:
-
on assignment:
-
- trigger name:chat state:true
-
interact scripts:
-
- my_interact
-
-
my_interact:
-
type: interact
-
steps:
-
1:
-
chat trigger:
-
1:
-
trigger: /Hello/ NPC!
-
script:
-
- chat "你好, <player.name>!"
-
2:
-
trigger: /Goodbye/ NPC!
-
script:
-
- chat "再见, <player.name>!"
复制代码
可复制
之后,你可以使用指令
/ex assignment set my_assignment
来把这个脚本“分配”给你选中的NPC(来自Citizens)
|
相关的参考文档
|
如果你想阅读更多有关聊天触发的内容,也许你可以读读以下链接内容。
请注意:对于Denizen新人来说,以下链接内容过于复杂,不建议现在就阅读,建议继续阅读本指南接下来的部分,当你已经有了Denizen基础能力以后才建议回来阅读链接内容。
聊天触发语言文档
|
|
|
|
|
这里展示一个简单的交互型脚本及简单的接近触发写法
可复制
-
my_assignment:
-
type: assignment
-
actions:
-
on assignment:
-
- trigger name:proximity state:true radius:10
-
interact scripts:
-
- my_interact
-
-
my_interact:
-
type: interact
-
steps:
-
1:
-
proximity trigger:
-
entry:
-
script:
-
- chat "你好, <player.name>!"
-
exit:
-
script:
-
- chat "再见, <player.name>!"
-
move:
-
script:
-
- ratelimit <player> 10s
-
- chat "还在附近闲逛, <player.name>?"
复制代码
可复制
之后,你可以使用指令
/ex assignment set my_assignment
来把这个脚本“分配”给你选中的NPC(来自Citizens)
|
相关的参考文档
|
如果你想阅读更多有关接近触发的内容,也许你可以读读以下链接内容。
请注意:对于Denizen新人来说,以下链接内容过于复杂,不建议现在就阅读,建议继续阅读本指南接下来的部分,当你已经有了Denizen基础能力以后才建议回来阅读链接内容。
接近触发语言文档
|
|
|
|
来自群组:
PluginsCDTribe