Releases: SuperIceCN/BlocklyNukkit
Releases · SuperIceCN/BlocklyNukkit
BlocklyNukkitLoader-1.2.9.1-beta-r18
Bug Fixed
- 修复射箭函数中参数依赖问题
- 修复方块实体无法不坠落
- 重构BNNPC的AI架构,修复bnnpc两格高出不去问题
- 修复bn插件包资源文件解压错误问题
particle
- void drawDot(Position pos,int pid)
entity
- Entity spawnFallingBlock(Position pos, Block block, boolean enableGravity,boolean canBePlaced)
- EntityArrow shootArrow(Position from,Position to,Entity shooter,boolean canPickUp,double multiply)
- EntityArrow shootArrow(Position from,Position to,boolean canPickUp,double multiply)
- EntityArrow shootArrow(Position from,Position to,double multiply)
- EntityArrow shootArrow(Position from,Position to,boolean canPickUp)
- EntityArrow shootArrow(Position from,Position to)
- EntitySnowball shootSnowball(Position from,Position to,Entity shooter,boolean canPickUp,double multiply)
- EntitySnowball shootSnowball(Position from,Position to,boolean canPickUp,double multiply)
- EntitySnowball shootSnowball(Position from,Position to,double multiply)
- EntitySnowball shootSnowball(Position from,Position to,boolean canPickUp)
- EntitySnowball shootSnowball(Position from,Position to)
manager
- void removeCommand(String name) --移除名为name的命令
- void sendMail(String smtpMailServer,String from,String to,String cc,String bcc,String subject,String content)
- 发送电子邮件,默认为utf-8编码
- <E> syncCallFunction(String functionName,Object... args) --同步执行函数
blockitem
- void addShapedCraft(String shape,Item output,(String key,Item value)...)
- 这是更舒服的添加有序合成API,shape是合成形状字符串,
- 用一个字母或数字代表合成原材料的摆放方式,用"|"来连接三行,用空格来占格,如果最后的一行或列没有东西,请不要保留
- output是合成产物,后面的参数是映射表,key是你之前的shape中的字符,value是这个key代表的物品
- shape中有多少种字符串就得有多少个这也的映射参数
- 例如 石镐:addShapedCraft("SSS| I | I ",石镐物品,"S",圆石物品,"I",木棍物品)
- 工作台: addShapedCraft("MM|MM",工作台物品,"M",橡木木板物品)
BNNPC
- void reFresh() --强制客户端刷新bnnpc以防止隐身
BlocklyNukkitLoader-1.2.9.0-beta-r43
Bug fixed:
- 新增预处理语句pragma autoload false/true,是否让bn解释器自动加载此插件,默认true
- 修复了射箭不会触发EntityDamageByEntityEvent问题
- 修复了http处理时url无法自动编码问题
- 修复了bnnpc无法被回收的问题
还修复了很多其他问题
BlocklyNukkitLoader-1.2.9.0-beta-r39
manager
- void requireMinVersion(String minVersion,String failMessage) --检查bn解释器版本,如果太低停止运行并发出failMessage
database - memoryStorage: 内存共享存储管理器
- void memoryStorage.setItem(Object key,Object item) --设置指定key对应的数据为item
- String memoryStorage.getItem(Object key) --获取指定key对应的数据
- void memoryStorage.removeItem(Object key) --移除指定key对应的数据
- Object[] localStorage.getKeys() --获取所有的key
BlocklyNukkitLoader-1.2.9.0-beta-r37
manager
- void downloadFromURL(String url,String saveDir,String saveName)
window - void setSwingStyle(String style) --设置swing的样式
- 目前有:Darcula Intellij Metal Motif Multi Nimbus OS(系统样式)
- JFrame getStyledSwingWindow(String title,int width,int height,String iconPath)
- 根据之前设置的样式获取Swing窗口对象,iconPath为null或""将使用bnLOGO替代
database
- 根据之前设置的样式获取Swing窗口对象,iconPath为null或""将使用bnLOGO替代
- void localStorage.cacheAll() --从本地读取数据并缓存,增加运行时获取数据速度
- String localStorage.cache(String key) --从本地读取指定数据并缓存
- void localStorage.setItem(String key,String item) --设置指定key对应的数据为item
- String localStorage.getItem(String key) --获取指定key对应的数据
- void localStorage.removeItem(String key) --移除指定key对应的数据
- String[] localStorage.getKeys() --获取所有的key
- void localStorage.save() --强制立即保存数据,bn会每3秒检查并保存一次数据
BlocklyNukkitLoader-1.2.9.0-beta-r35
Bug Fixed:
- 修复了文件读写出现乱码的问题
C/C++ API:
- int getJArrayLength(int jStackIndex);
- int getJObjectArrayLength(int jStackIndex);
BlocklyNukkitLoader-1.2.9.0-beta-r33
修复:
C/C++API新增:
- void setJArrayByIndex(int jStackIndex, int jObjStackIndex,int index);
- int getJObjectField(int jStackIndex, char* fieldName);
BlocklyNukkitLoader-1.2.9.0-beta-r32
Bug Fixed:
- 修复了无法监听修改version命令的问题
C/C++
- 更新了基于webassembly技术栈的C/C++插件编写支持
- 可以直接调用java并于java进行交互,一次编译,处处运行,支持windows linux macos
BlocklyNukkitLoader-1.2.9.0-beta-r27
Bug Fixed:
- 修复了BNNPC无法在重启时被回收掉的问题
- 修复了bn的qqbot模块回收未正常释放问题
- 修复了自定义注册方块有时导致客户端卡死问题
blockitem
- void registerSimpleItem(int id,String name)
- 注册简单的物品堆,但是现在无法显示材质,只能在覆写教育版物品时显示材质
world
- void drawPic(Position pos1,Position pos2,String img,int faceData)
- 从pos1到pos2绘制img路径上的图片,faceData指定物品展示框的朝向,pos1和pos2必须在同一垂直面上
manager
- void interrupt(String info) --强制中断当前函数运行并抛出info作为警告
- 当此函数不在任何一个函数中被调用时,将会中止全局运行
BlocklyNukkitLoader-1.2.9.0-beta-r24
Bug Fixed:
修复了logger(console)输出null、nil或None报错的问题
world
- void regenerateChunk(Position pos)
- void defineChunkRenderByName(String forLevel,String callback,int priority / void)
- forLevel是渲染器能够渲染的指定世界名称
- callback是渲染器回调函数
- priority是优先级,优先级越大先调用,不填默认为0
blockitem
- void registerSolidBlock(int id,String name,double hardness,double resistance,int toolType,boolean isSilkTouchable,int dropMinExp,int dropMaxExp,int mineTier)
- 注册固体方块,参数分别为方块id(可覆写原版方块),方块名称,方块硬度,方块抗爆炸度,挖掘工具,是否受精准采集影响,最小掉落经验,最大掉落经验,挖掘等级
- 方块硬度越大挖掘时间越长,抗爆炸度越高越不容易被炸
- 挖掘工具0-无,1-剑,2-铲,3-镐,4-斧,5-剪刀
- 挖掘等级0-空手,1-木,2-金,3-石,4-铁,5-钻石
BlocklyNukkitLoader-1.2.9.0-beta-r22
window
- void sendPlayerXboxInfo(Player from,Player to) --向to玩家展示from玩家的xbox信息
- void startEndPoem(Player player) --让玩家屏幕上开始展示终末之诗
SimpleWindowBuilder
- buildButton(String text,String img)
- button(String text,String img)
- button(String text)
- setAction(String actionFunctionName/F function)
- action(String actionFunctionName/F function)
- setTitle(String title)
- title(String title)
- setContext(String context)
- context(String context)
- showToPlayer(Player p)
- showToPlayer(Player p,boolean acceptClose)
- showToPlayer(Player p,String callbackFunctionName/F function)
- showToPlayer(Player p,String callbackFunctionName/F function,boolean acceptClose)
- show(Player p)
- show(Player p,boolean accpetClose)
- show(Player p,String callbackFunctionName/F function)
- show(Player p,String callbackFunctionName/F function,boolean acceptClose)
ModalWindowBuilder
- setTitle(String title)
- title(String title)
- setContext(String context)
- context(String context)
- setButton1(String text)
- setButton2(String text)
- button1(String text)
- button2(String text)
- setAction(String callbackFunctionName/F function)
- action(String callbackFunctionName/F function)
- showToPlayer(Player p)
- showToPlayer(Player p,boolean acceptClose)
- showToPlayer(Player p,String callbackFunctionName/F function)
- showToPlayer(Player p,String callbackFunctionName/F function,boolean acceptClose)
- show(Player p)
- show(Player p,boolean accpetClose)
- show(Player p,String callbackFunctionName/F function)
- show(Player p,String callbackFunctionName/F function,boolean acceptClose)
CustomWindowBuilder
- setTitle(String title)
- showToPlayer(Player p)
- showToPlayer(Player p,boolean acceptClose)
- showToPlayer(Player p,String callbackFunctionName/F function)
- show(Player p)
- show(Player p,boolean accpetClose)
- show(Player p,String callbackFunctionName/F function)
- show(Player p,String callbackFunctionName/F function,boolean acceptClose)
- showToPlayer(Player p,String callbackFunctionName/F function,boolean acceptClose)
- showAsSetting(Player p, String callbackFunctionName/F function)
- showAsSetting(Player p, String imageURL, String callbackFunctionName/F function)
- buildLabel(String text)
- label(String text)
- buildInput(String title,String placeholder)
- input(String title,String placeholder)
- buildInput(String title,String placeholder,String defaulttext)
- input(String title,String placeholder,String defaulttext)
- buildToggle(String title)
- toggle(String title)
- buildToggle(String title,boolean open)
- toggle(String title,boolean open)
- buildDropdown(String title,String inner)
- dropdown(String title,String inner)
- buildDropdown(String title,String inner,int index)
- dropdown(String title,String inner,int index)
- buildSlider(String title,double min,double max,int step,double defaultvalue)
- slider(String title,double min,double max,int step,double defaultvalue)
- buildSlider(String title,double min,double max,int step)
- slider(String title,double min,double max,int step)
- buildSlider(String title,double min,double max)
- slider(String title,double min,double max)
- buildStepSlider(String title,String options)
- stepSlider(String title,String options)
- stepslider(String title,String options)
- buildStepSlider(String title,String options,int index)
- stepSlider(String title,String options,int index)
- stepslider(String title,String options,int index)
- setAction(String callbackFunctionName/F function)
- action(String callbackFunctionName/F function)
BNNPC
- void doEmote(String action/void) --让npc执行指定的表情动作
- action可以是 Wave Punch Clap OverThere Hammer Fall Diamond Pickaxe
- 也可以填写对应的中文 挥手 拳击 鼓掌 在那 锤子 摔倒 钻石
- 不填的话将上面的五个动作中任选一个
- 至于为什么只有8个: 因为剩下的要氪金购买之后才能获取uuid,冰凉没钱
- 欢迎大家贡献uuid
- boolean directMove(Position to) --直线移动到某处
world
- void regenerateChunk(Position pos)