本帖最后由 renyunzhong 于 2020-11-8 11:41 编辑 
Creatio Lib
Skript 扩展 & 更多指令
目前处于Alpha版本,可能会遇到Bug,遇到了请返回到 ISSUE
 
前言 | FORWARD
用过Skript的人都知道,这个东西不加扩展插件根本没法玩,很多东西都是缺的
由于我自己在写脚本时候遇到很多这种问题,而且发现好多简单功能居然连扩展插件里都没有
于是我就学了下Java,写了这么个东西
不过国内用SK的人也少,写SK扩展的好像也没几个,我估计这插件大概也没多少人用(划掉)
特点 | FEATURES
添加了很多SK指令和表达式,很多都是Bukkit API里面有的,也有写是Bukkit API没有的
部分指令提供了使用其他插件API的方法,详情见下方
指令详细信息在 这里 查看,下方举部分为例 (纯英文,等有精力在弄中文版吧) 
功能介绍 | SYNTAX
⚠长文本警告⚠
| 
 1.更好的粒子生成方法。众所周知SK本体提供的粒子生成很垃圾,多少个版本没几个是正常工作的,更别提给红石粒子上色了。CreatioLib提供了3个与粒子生成有关的效果,分别是生成世界粒子(所有人可见),玩家粒子(指定人可见)和数据包粒子(指定人可见): 
 (效果)生成世界粒子(spawn|show|gen|generate) [%-number%] %string% (world|public|server) particle at %location% offset by %number%,%number%,%number% (with|and) (speed|extra) %number% [with data %-object% [and size %-number%]]
 (效果)生成玩家粒子(spawn|show|gen|generate) [%-number%] %string% (player|private|client) particle at %location% for %players% offset by %number%,%number%,%number% (with|and) (speed|extra) %number% [with data %-object% [and size %-number%]]
 
 (效果)生成数据包粒子(spawn|show|gen|generate) [%-number%] %string% packet particle at %location% for %players% offset by %number%,%number%,%number% (with|and) (speed|extra) %number% force %boolean% [with data %-object%]
 红石、物品碎片、方块碎片和掉落尘埃可以指定特殊值,红石粒子是bukkit颜色,物品碎屑是ItemStack,最后两者是BlockData,填在表达式末尾的object中即可(packet规则有所不同,具体看上方的连接)BukkitAPI提供的粒子生成方法生成红石粒子指定颜色只能在RGB0~255之中选择,而这个范围做出来的白色粒子发灰,而通过发包显示的粒子可以达到与原版/particle指令无任何区别(比如/particle dust -0.01 -0.01 -0.01 1 ~ ~ ~的极白粒子)        2.记分板操作。Skript作为如此强大的一个脚本插件居然连读取记分板数据的方法都没有,读取要靠扩展插件,写入要靠原版指令,所以我增加了操作计分板的几个表达式:(表达式)获取服务器主记分板对象[the] (server|main|primary) scoreboard objective %string%
 
 (表达式)获取记分板对象的名字或显示名[the] (name|display name) of scoreboard %objective%
 
 (表达式)实体或条目在记分板对象上的分数[the] score of (entity|entry) %entity% in [objective] %objective%
 
        3.对CoreProtect的支持。对于使用CoreProtect的服务器来说,SK里涉及到玩家修改方块的部分会很难受,因为SK的编辑不会被记录到CP的数据库里,而CP没有提供任何可以添加记录的指令,只有一个不学java根本用不了的API,所以我将这个API翻译成了SK表达式:(效果)记录玩家聊天log [core[ ]protect] [player] chat[ting] as %player% with [msg|message] %string%
 
 (效果)记录玩家指令log [core[ ]protect] [player] command as %player% with [cmd|command] %string%
 
 (效果)记录玩家交互方块log [core[ ]protect] [block] interaction [registered] as %string% at %location%
 
 (效果)记录玩家方块放置log [core[ ]protect] [block] place[ |ment] [registered] as %player% at %location% placed %material% [[with] [block]data %-blockdata%]
 
 (效果)记录玩家破坏方块log [core[ ]protect] [block] removal [registered] as %string% at %location% broke [a] %material% [[with] [block]data %-blockdata%]
 其中Material为Bukkit材料,不是skript的,使用[the] [bukkit] material [type|name] of %item%获取        4.杂项 & BukkitAPI中的方法扩展。Skript里头缺少很多BukkitAPI提供的东西,以及BukkitAPI没有的,这些功能看着小没什么用但是不知道在什么地方会成为一个蛋疼问题(虽然它可能真的没用):(表达式)获取BukkitAPI物品材料名(DIAMOND_SWORD这类)[the] [bukkit] material [type|name] of %item%
 
 (表达式)获取BukkitAPI颜色[the] [bukkit] %string% color %number%,%number%,%number%
 
 (表达式)修改玩家手中物品冷却(末影珍珠的冷却)[the] %itemstack% [(1¦(client-side|client|visual))] [item] cooldown of %player%
 
 (效果)播放声音(可以是材质包的)playsound %string% at %location% [to %-players%] [(in|from) %-soundcategory%] [(and|with) volume %-number%] [(and|with) pitch %-number%]
 
这些只是一部分功能,完整的可以看最上面的WIKI连接。
 | 
效果图 | SCREENSHOT
CoreProtect自定义记录添加
数据包粒子的颜色多样性
物品冷却时间
注意事项 | ATTENTION
1.目前插件处于早期测试阶段,部分功能可能不稳定,请酌情使用。
2.本贴内部下载的版本不是最新版,最新版请到Spigot帖子(开头)或者Github中下载。
3.插件基于1.16BukkitAPI编写,理论上1.13+均可使用,更低版本的请根据实际需求决定。
3.本插件所有代码均为原创或来源于开源产品。
下载地址 | DOWNLOAD
MCBBS下载:
v0.1.03-alpha
原创不易,所以如果你喜欢本插件请评分回复支持一下!