思考了好久决定这么做……
自己做一个简单的语言规则,所有的操作都有一条执行命令对应,然后将每一步操作都记录下来,回撤就是执行 当前命令的反向命令,反向命令往往就是上一步执行的命令
所以先解决一个问题:定义语言规则
数据类型
int
float
string
json {}
array []
语法:
结果回调 = 对象.方法(数据类型 参数,…)
执行结束
执行下一步以此类推
示例:选中某个对象,然后撤回
json cube=view.select(string cube01)
view.move(cube.location) //选中时原地移动一下相当于记录当前记录
view.move( 目标位置 )
undo//撤回到上一步选中时移动的位置,从log看移动两次,一次原地,一次后者注:目标位置来自于视图操作柄的回调
总结:类似python
然后就是做一个语言编译器
能够调取ue4 runtime下实际执行的方法
总的来说就是 获取class,然后执行对应的方法,传参
回调返回 true,执行下一步
最后在做一个脚本入口
可以让能力的开发者,根据接口文档,自己编写代码,一键执行自己常用操作
突然感觉我这个半路出家的程序猿好牛逼,已经自己在造语言了⊙∀⊙