本帖最后由 超神的冰凉 于 2020-3-29 11:10 编辑
BlocklyNukkit入门教程
——为零插件开发基础的小白定制的入门教程
本教程是干嘛的:
本教程是为BlocklyNukkit图形化插件编辑器编写的教程,因为现有的blocklynukkit文档作为面向熟练掌握本编辑器使用方法的人员的教程,较为晦涩难懂,零基础开发者难以理解。本教程作为blocklynukkit文档的入门补充,旨在让所有希望写出自己插件的小白都能快速上手blocklynukkit这个工具,打造出自己的插件。
补充:已经熟练掌握blocklynukkit图形编辑器或js编辑器的开发者没用必要阅读本教程,java开发原生插件的开发者请如无特殊必要撤离此处以免造成不必要的困扰。
补充:教程中为了节约篇幅,将把blocklynukkit简写为bn
教程目录:
教程正在更新,部分章节尚未编写
· 熟悉blocklynukkit图形编辑器界面
· 第一个Hello,World!
· 计算数字和文本
· 走进逻辑的世界
· 使用神奇的变量
· 计算机最不怕的就是重复了
· 灵活方便的列表
· 函数:为懒人而生
· 回调:bn与nukkit的桥梁
· 玩家基础:基础而又重要的操作
· 事件:来自nukkit星球的信号
· 命令:插件中不可或缺的一环
· 配置文件:保存数据的重要手段
· 临时存储:方便快捷地交换数据
· 位置基础:操纵整个世界的利器
· 窗口基础:插件最重要的交互
· 后台调用:实现很多功能的重要手段
· 方块物品基础:整个游戏的核心
· and more......
一些有用的资源:
blocklynukkit在线使用:https://kingdom_of_dragon.gitee.io/blocklynukkit/
blocklynukkit论坛:https://bbs.blocklynukkit.com
blocklynukkit交流群:953752196
blocklynukkit帖子:https://www.mcbbs.net/thread-987302-1-1.html
wode大佬的js教程:https://www.mcbbs.net/thread-815052-1-1.html
blocklynukkit官方文档:https://docs.qq.com/doc/DRkRpS0xmV2ZJbGdi
Juna的bn通俗易懂教程:https://docs.qq.com/doc/DWkRhWW5lWGN2S2h4
——为零插件开发基础的小白定制的入门教程
本教程是干嘛的:
本教程是为BlocklyNukkit图形化插件编辑器编写的教程,因为现有的blocklynukkit文档作为面向熟练掌握本编辑器使用方法的人员的教程,较为晦涩难懂,零基础开发者难以理解。本教程作为blocklynukkit文档的入门补充,旨在让所有希望写出自己插件的小白都能快速上手blocklynukkit这个工具,打造出自己的插件。
补充:已经熟练掌握blocklynukkit图形编辑器或js编辑器的开发者没用必要阅读本教程,java开发原生插件的开发者请如无特殊必要撤离此处以免造成不必要的困扰。
补充:教程中为了节约篇幅,将把blocklynukkit简写为bn
教程目录:
教程正在更新,部分章节尚未编写
· 熟悉blocklynukkit图形编辑器界面
· 第一个Hello,World!
· 计算数字和文本
· 走进逻辑的世界
· 使用神奇的变量
· 计算机最不怕的就是重复了
· 灵活方便的列表
· 函数:为懒人而生
· 回调:bn与nukkit的桥梁
· 玩家基础:基础而又重要的操作
· 事件:来自nukkit星球的信号
· 命令:插件中不可或缺的一环
· 配置文件:保存数据的重要手段
· 临时存储:方便快捷地交换数据
· 位置基础:操纵整个世界的利器
· 窗口基础:插件最重要的交互
· 后台调用:实现很多功能的重要手段
· 方块物品基础:整个游戏的核心
· and more......
一些有用的资源:
blocklynukkit在线使用:https://kingdom_of_dragon.gitee.io/blocklynukkit/
blocklynukkit论坛:https://bbs.blocklynukkit.com
blocklynukkit交流群:953752196
blocklynukkit帖子:https://www.mcbbs.net/thread-987302-1-1.html
wode大佬的js教程:https://www.mcbbs.net/thread-815052-1-1.html
blocklynukkit官方文档:https://docs.qq.com/doc/DRkRpS0xmV2ZJbGdi
Juna的bn通俗易懂教程:https://docs.qq.com/doc/DWkRhWW5lWGN2S2h4
熟悉blocklynukkit编辑器界面
笔者写本篇时bn的最新版本是1.1.6
开门见山不叨叨,打开bn在线编辑器 https://kingdom_of_dragon.gitee.io/blocklynukkit/

如你所见,bn编辑器现在可以尽情使用了!
恭喜你完全学会了bn!可以自己去写插件了!教程结束!再见!
接下来,我们呢将介绍界面的分区

界面分为4个区域,分别为工具栏,拼图区,命令区和代码区
工具栏存放了所有你构建插件所需的拼图块,你可以将它们拖动出来来构建插件
拼图区是将拼图块拼在一起用来构建插件的区域,右下角有四个按钮,从上到下是一个准星,+,—和垃圾桶,他们分别可以将拼图块整理,进行缩放和清除拼图。
命令区是一个logo,同时也是一个超大号按钮(鼠标移上去有阴影的),点击以后会弹出来一个菜单,里面有超多操作&黑科技,等你来发掘。
代码区上面会有一个版本提示,叉掉即可,代码区会实时将拼图区的拼图块转化为代码
本节就先到这里
第一个helloworld!
本节将带您通过经典得不能再经典的helloworld示例,带你初步掌握blocklynukkit插件的基本安装与发布方法
本节用到的拼图块

建议学习时长:20分钟
众所周知,helloworld项目是每一种编程语言都拥有的新手挑战,所以,bn所为一种新的编辑器,当然也有helloworld啦。
helloworld本身并不难,难点在于如何配置开发环境,正确地使用。
首先,我们来了解一下这4个块(块是拼图块的简称):(其实顾名思义就能知道了)
左侧两个块用来在控制台(服务器的后台)输出(这里的输出就是在屏幕上显示的意思)一段文本(就是一些文字的意思)&(信息指的是INFO类型的正常文本,警告指的是WARN类型的警示文本)
它们有两个输入(每个输入指拼图块里面的空缺),能够上下连接(因为它们上下都有突起)。
右侧两个块是两个输出块(指左侧有突起可以插入到其他块里面的拼图块),右上角的块输出(这里的输出是指向其他块输出值(值是一对一些数据的叫法))的是nukkit控制台实例。右下角的块是字符串块,字符串是文本的别称,你可以点击中间的浅色区域来编辑内容(手机部分浏览器弹出键盘后会瞬间收起来,请加群下载手机客户端解决或者换一个浏览器解决),它输出你编辑的字符串。
如何把拼图块拼接起来呢?很简单,从工具箱里按住拖动到相应的位置上,系统会自动帮你调整拼接,有时候你可能死活都没法把一个块拼上去,那是因为bn的自动查错系统检测到了你这样拼接是错误或者毫无意义的。
像这样,我们将一个nukkit控制台实例和一个自定义字符串块拖动到输出控制台实例块,这样,我们就制作了一个能够输出控制条信息的插件,接下来,我们可以点击自定义字符串块中间的浅色部分来编辑文字为Hello World:

这样,您就成功地构建了一个Hello World!插件,恭喜您成功入门了bn!
但是,光做出来不能用不行啊,接下来我们将介绍如何将插件安装到服务器上:
点击命令区的logo按钮,会弹出来如下的对话框,我们选择云端同步

点击云端同步之后,我们选择云端同步,输入自己的插件名称(只能包含英文和数字和下划线),比如我这里写的"superice_helloworld":

点击同步按钮,稍等几秒,就会弹出如下的对话框,说明同步成功:

接下来,前往您的服务器,您安装了BlocklyNukkit.jar之后运行一次,您的./plugin/BlocklyNukkit文件夹中应该会有一个update.yml,打开它,您会发现如下的文本:
这个文件定义了blocklynukkit解释器每次加载时从云端同步的插件名称,first.js是作者在云端写好的一个插件示例,您可以在下面仿照着添加一行您自己的插件名,插件名即为刚刚您同步到云端之后显示的“您的文件名为:”的内容,对于我刚刚的操作,应该添加后是这样的:
接下来,重新启动您的服务器,就会看到成功地输出了Hello World!字样!
课后作业:
仿照本例,使用输出警告块在控制台输出"Goodbye World!"。
计算数字和文本
笔者写本篇时bn最新版本为1.1.7建议学习时间:40分钟
学习建议:真正的知识来源于实践,纸上得来终觉浅,绝知此事要躬行。要深入理解bn,要多练习,多实践。本教程不可能将每个实例都详细地讲述,从错误中学习很重要!
众所周知,文本和数字是一个好的程序中不可或缺的一环,本节将通过简单的示例来带您了解如何进行数学和文本的运算。
数字运算:
blocklynukkit提供了大部分常用的基本初等数学计算拼图块,能够完成大部分的代数运算。
使用方法很简单,直接拖出来组合即可。
文本运算:
blocklynukki提供了强大的文本运算功能

对于这些块的详细使用方法,我们将在下面的示例中演示:
示例1:

输出:示例2:

输出:
BlocklyNukkit入门教程
——为零插件开发基础的小白定制的入门教程
本教程是干嘛的:
本教程是为BlocklyNukkit图形化插件编辑器编写的教程,因为现有的blocklynukkit文档作为面向熟练掌握本编辑器使用方法的人员的教程,较为晦涩难懂,零基础开发者难以理解。本教程作为blocklynukkit文档的入门补充,旨在让所有希望写出自己插件的小白都能快速上手blocklynukkit这个工具,打造出自己的插件。
补充:已经熟练掌握blocklynukkit图形编辑器或js编辑器的开发者没用必要阅读本教程,java开发原生插件的开发者请如无特殊必要撤离此处以免造成不必要的困扰。
补充:教程中为了节约篇幅,将把blocklynukkit简写为bn
教程目录:
教程正在更新,部分章节尚未编写
· 熟悉blocklynukkit图形编辑器界面
· 第一个Hello,World!
· 计算数字和文本
· 走进逻辑的世界
· 使用神奇的变量
· 计算机最不怕的就是重复了
· 灵活方便的列表
· 函数:为懒人而生
· 回调:bn与nukkit的桥梁
· 玩家基础:基础而又重要的操作
· 事件:来自nukkit星球的信号
· 命令:插件中不可或缺的一环
· 配置文件:保存数据的重要手段
· 临时存储:方便快捷地交换数据
· 位置基础:操纵整个世界的利器
· 窗口基础:插件最重要的交互
· 后台调用:实现很多功能的重要手段
· 方块物品基础:整个游戏的核心
· and more......
一些有用的资源:
blocklynukkit在线使用:https://kingdom_of_dragon.gitee.io/blocklynukkit/
blocklynukkit论坛:https://bbs.blocklynukkit.com
blocklynukkit交流群:953752196
blocklynukkit帖子:https://www.mcbbs.net/thread-987302-1-1.html
wode大佬的js教程:https://www.mcbbs.net/thread-815052-1-1.html
blocklynukkit官方文档:https://docs.qq.com/doc/DRkRpS0xmV2ZJbGdi
Juna的bn通俗易懂教程:https://docs.qq.com/doc/DWkRhWW5lWGN2S2h4
2021.12 数据,可能有更多内容
BlocklyNukkit入门教程——为零插件开发基础的小白定制的入门教程
本教程是干嘛的:
本教程是为BlocklyNukkit图形化插件编辑器编写的教程,因为现有的blocklynukkit文档作为面向熟练掌握本编辑器使用方法的人员的教程,较为晦涩难懂,零基础开发者难以理解。本教程作为blocklynukkit文档的入门补充,旨在让所有希望写出自己插件的小白都能快速上手blocklynukkit这个工具,打造出自己的插件。
补充:已经熟练掌握blocklynukkit图形编辑器或js编辑器的开发者没用必要阅读本教程,java开发原生插件的开发者请如无特殊必要撤离此处以免造成不必要的困扰。
补充:教程中为了节约篇幅,将把blocklynukkit简写为bn
教程目录:
教程正在更新,部分章节尚未编写
· 熟悉blocklynukkit图形编辑器界面
· 第一个Hello,World!
· 计算数字和文本
· 走进逻辑的世界
· 使用神奇的变量
· 计算机最不怕的就是重复了
· 灵活方便的列表
· 函数:为懒人而生
· 回调:bn与nukkit的桥梁
· 玩家基础:基础而又重要的操作
· 事件:来自nukkit星球的信号
· 命令:插件中不可或缺的一环
· 配置文件:保存数据的重要手段
· 临时存储:方便快捷地交换数据
· 位置基础:操纵整个世界的利器
· 窗口基础:插件最重要的交互
· 后台调用:实现很多功能的重要手段
· 方块物品基础:整个游戏的核心
· and more......
一些有用的资源:
blocklynukkit在线使用:https://kingdom_of_dragon.gitee.io/blocklynukkit/
blocklynukkit论坛:https://bbs.blocklynukkit.com
blocklynukkit交流群:953752196
blocklynukkit帖子:https://www.mcbbs.net/thread-987302-1-1.html
wode大佬的js教程:https://www.mcbbs.net/thread-815052-1-1.html
blocklynukkit官方文档:https://docs.qq.com/doc/DRkRpS0xmV2ZJbGdi
Juna的bn通俗易懂教程:https://docs.qq.com/doc/DWkRhWW5lWGN2S2h4
熟悉blocklynukkit编辑器界面
笔者写本篇时bn的最新版本是1.1.6
开门见山不叨叨,打开bn在线编辑器 https://kingdom_of_dragon.gitee.io/blocklynukkit/

如你所见,bn编辑器现在可以尽情使用了!
恭喜你完全学会了bn!可以自己去写插件了!教程结束!再见!
接下来,我们呢将介绍界面的分区

界面分为4个区域,分别为工具栏,拼图区,命令区和代码区
工具栏存放了所有你构建插件所需的拼图块,你可以将它们拖动出来来构建插件
拼图区是将拼图块拼在一起用来构建插件的区域,右下角有四个按钮,从上到下是一个准星,+,—和垃圾桶,他们分别可以将拼图块整理,进行缩放和清除拼图。
命令区是一个logo,同时也是一个超大号按钮(鼠标移上去有阴影的),点击以后会弹出来一个菜单,里面有超多操作&黑科技,等你来发掘。
代码区上面会有一个版本提示,叉掉即可,代码区会实时将拼图区的拼图块转化为代码
本节就先到这里
第一个helloworld!
本节将带您通过经典得不能再经典的helloworld示例,带你初步掌握blocklynukkit插件的基本安装与发布方法
本节用到的拼图块

建议学习时长:20分钟
众所周知,helloworld项目是每一种编程语言都拥有的新手挑战,所以,bn所为一种新的编辑器,当然也有helloworld啦。
helloworld本身并不难,难点在于如何配置开发环境,正确地使用。
首先,我们来了解一下这4个块(块是拼图块的简称):(其实顾名思义就能知道了)
左侧两个块用来在控制台(服务器的后台)输出(这里的输出就是在屏幕上显示的意思)一段文本(就是一些文字的意思)&(信息指的是INFO类型的正常文本,警告指的是WARN类型的警示文本)
它们有两个输入(每个输入指拼图块里面的空缺),能够上下连接(因为它们上下都有突起)。
右侧两个块是两个输出块(指左侧有突起可以插入到其他块里面的拼图块),右上角的块输出(这里的输出是指向其他块输出值(值是一对一些数据的叫法))的是nukkit控制台实例。右下角的块是字符串块,字符串是文本的别称,你可以点击中间的浅色区域来编辑内容(手机部分浏览器弹出键盘后会瞬间收起来,请加群下载手机客户端解决或者换一个浏览器解决),它输出你编辑的字符串。
如何把拼图块拼接起来呢?很简单,从工具箱里按住拖动到相应的位置上,系统会自动帮你调整拼接,有时候你可能死活都没法把一个块拼上去,那是因为bn的自动查错系统检测到了你这样拼接是错误或者毫无意义的。

像这样,我们将一个nukkit控制台实例和一个自定义字符串块拖动到输出控制台实例块,这样,我们就制作了一个能够输出控制条信息的插件,接下来,我们可以点击自定义字符串块中间的浅色部分来编辑文字为Hello World:

这样,您就成功地构建了一个Hello World!插件,恭喜您成功入门了bn!
但是,光做出来不能用不行啊,接下来我们将介绍如何将插件安装到服务器上:
点击命令区的logo按钮,会弹出来如下的对话框,我们选择云端同步

点击云端同步之后,我们选择云端同步,输入自己的插件名称(只能包含英文和数字和下划线),比如我这里写的"superice_helloworld":

点击同步按钮,稍等几秒,就会弹出如下的对话框,说明同步成功:

接下来,前往您的服务器,您安装了BlocklyNukkit.jar之后运行一次,您的./plugin/BlocklyNukkit文件夹中应该会有一个update.yml,打开它,您会发现如下的文本:
代码:
- mods:
- - first.js
代码:
- mods:
- - first.js
- - superice_helloworld.js
课后作业:
仿照本例,使用输出警告块在控制台输出"Goodbye World!"。
计算数字和文本
笔者写本篇时bn最新版本为1.1.7建议学习时间:40分钟
学习建议:真正的知识来源于实践,纸上得来终觉浅,绝知此事要躬行。要深入理解bn,要多练习,多实践。本教程不可能将每个实例都详细地讲述,从错误中学习很重要!
众所周知,文本和数字是一个好的程序中不可或缺的一环,本节将通过简单的示例来带您了解如何进行数学和文本的运算。
数字运算:
blocklynukkit提供了大部分常用的基本初等数学计算拼图块,能够完成大部分的代数运算。

文本运算:
blocklynukki提供了强大的文本运算功能

对于这些块的详细使用方法,我们将在下面的示例中演示:
示例1:

输出:
代码:
- I LOVE NUKKIT
- nukkit is mush faster
- Blocklynukkit为入门开发者设计!

输出:
代码:
- 我的幸运数字是666
- 余数是6
我是吹爆呢还是吹爆呢还是吹爆呢?
感谢分享,学到了亿点
把重点都整理起来了,非常有帮助,感谢分享
收藏学习
感谢分享,很有帮助
MCBBS有你更精彩~
已收藏,真的很有用
感谢分享了很多使用教程
666666666666