一种基于展示实体的法阵
本项目旨在通过简单的函数调用创建多样的法阵效果
>>演示视频<<
API函数
sklibs:skmagic/new
创建法阵
执行者将作为新法阵的持有者,如果该执行者已经持有法阵,则新的法阵会替换原来的法阵
-
config根标签
-
elements该法阵所包含的层
-
(一个层)
-
id(可选,该项默认为model的值) 层ID
-
model该层的模型
-
color模型的渲染颜色,列表中的三个值分别表示RGB通道,使用颜色转换器计算颜色
-
distance该层距离玩家眼部的距离
-
size该层的缩放倍数
-
rotate_step(可选) 旋转步长,例如[10,3.14]表示每10tick旋转3.14弧度,不指定该项则不旋转
-
rotate_phase(可选,默认为0) 初相位
sklibs:skmagic/modify
修改法阵的属性
将修改执行者所持有的法阵的属性,如果执行者没有持有法阵,则该函数不起作用
-
config根标签
-
id目标层ID,给所有ID为该ID的层应用如下变换
-
size缩放倍数
-
distance到玩家眼部的距离
-
duration插值时间
sklibs:skmagic/modify2
批量修改法阵的属性
将批量修改执行者所持有的法阵的属性,如果执行者没有持有法阵,则该函数不起作用
-
config根标签
-
modify修改列表
-
(一项修改)
-
id目标层ID,给所有ID为该ID的层应用如下变换
-
size缩放倍数
-
distance到玩家眼部的距离
-
duration插值时间
sklibs:skmagic/insert
向法阵添加新的层
向执行者所持有的法阵添加新的层,如果执行者没有持有法阵,则该函数不起作用
参数格式与sklibs:skmagic/new相同
-
config根标签
-
elements该法阵所包含的层
-
(一个层)
-
id(可选,该项默认为model的值) 层ID
-
model该层的模型
-
color模型的渲染颜色,列表中的三个值分别表示RGB通道,使用颜色转换器计算颜色
-
distance该层距离玩家眼部的距离
-
size该层的缩放倍数
-
rotate_step(可选) 旋转步长,例如[10,3.14]表示每10tick旋转3.14弧度,不指定该项则不旋转
-
rotate_phase(可选,默认为0) 初相位
sklibs:skmagic/remove
移除函数执行者所持有的法阵
没有参数
sklibs:skmagic/danmaku
发射弹幕
向执行者面向的方向发射指定数量的弹幕
-
config根标签
-
n弹幕的数量
快速体验
快速体验演示视频中的法阵
聊天框里执行该函数打开菜单
1 | /function sklibs:skmagic/demo/menu |
制作自己的法阵
一张图看懂下面整个流程
下载资源包,并将它解压到.minecraft/resourcepacks文件夹下,这个资源包里存放了一些已经制作好的材质和模型,现在我们将在它的基础上制作新的材质与模型
绘制材质,可以使用PhotoShop绘制,需要注意以下几点
- 图像应为正方形
- 绘制的图案应为白色,这是为了方便后续着色
- 图案以外的地方保持透明
将绘制好的材质分层导出,因为法阵是需要旋转的,我们希望每一层有不同的旋转速度。需要多少层并无限制,这里演示只分了两层
- 图像导出到(资源包)/assets/minecraft/textures/item文件夹下
- 文件名任意
然后需要制作模型
来到(资源包)/assets/minecraft/models/skmagic文件夹下,找到demo.json复制一份,文件名任意,打开新复制的json文件,填入刚才做好的材质文件的文件名,注意这里的文件名没有.png后缀,如图所示
如果你的材质文件分了很多层,则每一层都需要单独创建模型文件,刚才的材质有两层,则需要两个模型文件,如图所示
接下来需要添加物品模型映射
打开(资源包)/assets/minecraft/items/acacia_button.json添加如下内容,如图所示,红色方框指定的是模型文件的文件名,不需要.json后缀,绿色方框是模型的“调用名称”,你可以通过这个名字来调用对应的模型文件
1 | {"when": "d2.2.1","model": {"type": "model","model": "minecraft:skmagic/d2.2.1","tints": [{"type": "dye","default": [0,0,0]}]}}, |
最后只需要调用sklibs:skmagic/new函数就可以看到效果了
1 | function sklibs:skmagic/new {config:{elements:[ |
数据包下载
数据包
1.21.5_skmagic_1.0.7z
资源包 SK Magic
RP.7z