太阳rpg编辑器提供了方便的创建插件!
做好的插件可以导出插件给别人导入使用!
你有一个插件,我有一个插件!我们交换一下我们就都有2个插件了!
插件为groovy(兼容java)语言!
会编程语言的 无论 js jass h5 lua c 熟悉十分钟都能上手写自己的业务插件、游戏内容插件等!
插件是一个以_sep结尾的文件夹(并且文件夹内包含一个同名的.groovy脚本文件、当用户点击插件时就是执行这个脚本)!
插件除了主要的.groovy脚本文件之外还能在文件夹里放入其他任意文件,脚本里可以通过预置变量获得当前插件的路径以访问这些文件
导出插件是将选择的插件文件夹压缩打包成一个类似zip的压缩包,后缀名为.seps。导入插件就是将这个压缩包又解压到用户的插件根目录里
插件主要是一个groovy脚本文件 (groovy语法学习资料: www.w3cschool.cn/groovy)
groovy 是java的超集、所以这里严格按照java的语法也是能正常运行的(groovy只是可以省略写括号、分号、类型、def定义类型类似于java Object类型等)
利用编辑器提供的内置常用函数 可以达到快速编辑地图的各种功能
插件里的代码可以访问整个编辑器程序的所有函数变量(如果常用函数没有想要的功能,可以询问作者获得对应的函数路径)
插件里的代码权限很高,支持访问整个电脑的文件系统,以及发起网络请求等 以及访问编辑器的所有类与对象(事实上java程序能做得到的,这里插件都能轻松做到)!
插件里默认import一些class(有java.util、java.io等)! 如果不确定是否已经默认导入了 可以自行在脚本里import(import java.awt.Frame) 不支持java.awt.*写法!;
(可以使用的类主要有java11、javafx11、groovy3.0等!)
预置变量:sep (当前插件相关变量)
sep.name 返回当前插件的文件名
sep.dir 返回当前插件的根文件路径
全局变量:SE (solar editor 太阳编辑器的缩写 可以通过这个变量能简单的访问到常用的函数)
常量:
SE.filePath_desktop 返回当前用户的桌面路径
SE.filePath_lni 返回用户的地图lni根目录(大多数操作都是基于lni文件夹,用户点击保存文件时会把这个lni转换为打开的w3x)
SE.filePath_plugin 返回用户的插件根目录(用户在设置里配置的插件根目录)
函数名:
SE.unit("hpea")//这里就是新建一个单位
SE.item()//新建物品
SE.ability()//新建技能
SE.buff()//新建魔法效果
SE.upgrade()//新建科技
SE.doodad()//新建装饰物
SE.destructable()//新建可破坏物
SE.trigger()//新建触发 第一个参数是触发名字 第二个是freemarker的datamodel 第三个就是模板文本
SE.icon()//新建图片 第一个参数是背景图片的文件路径 第二个是需要打印到图片上的文字 返回这个图标在物编中的使用路径!
SE.addMenuData()//给变量面板添加右键菜单
SE.addAbilitySelectMenu()//给变量面板添加选择技能的右键菜单
SE.addItemSelectMenu()//给变量面板添加选择物品的右键菜单
SE.addUnitSelectMenu()//给变量面板添加选择单位的右键菜单
SE.addFileMultipleChooserMenu()//给变量面板添加选择文件的右键菜单
SE.addDirectoryChooserMenu()//给变量面板添加选择文件夹的右键菜单(返回当前文件夹下的所有File对象)
SE.getCheckedWar3ObjectIds() //获取当前物编选择的ids字符串 方便用户直接在物编面板点击插件 直接操作用户选中的物编
SE.getCheckedTriggers() //获取当前触发编辑器选择的触发对象列表
SE.getCheckedFiles() //获取当前输入管理器选择的文件列表
SE.getW3oMapByIds()//根据传入的ids返回对象列表
SE.getW3oMap()//根据传入的id (hepa) 获得 物编对象Map
SE.showDialog()//传入标题 表单变量 按钮回调 即可弹出一个对话框
更多api请查看官方插件源码