游戏gm系统
前言:
最近发现很多游戏的gm系统做的比较简单,可能就是添加了几个gm指令的按钮,又或者支持批量的gm指令,但是不够智能,于是我比较渴望能做一个gm系统(毕竟自己之前也确实没有做过这类系统),支持上下翻页,支持自动绘制所有参数。之前看过一个大牛写的行为树编辑器,他就是把自定义的类绘制在了编辑器上,他的类有很多但是他的绘制方法确极其的简单,这就是反射的魅力。
1.具体代码请访问https://github.com/yangjiejie/-gm-
游戏中按下g打开gm的ui系统,然后点击功能按钮(1级页面)进入gm操作详细面板(2级页面),具体面板的绘制采用unity的gui系统(存在一些缺陷需要自己去自绘控件)
2.所有的gm接口我都会放在GmFunc.cs中 ,如果是页面2的可以放在GmFunc2.cs中,GmFunc这个类可以设计为一个部分类。大概如下
这里需要设计特性Attribute,GmAttribute,利用反射去获取参数 ,这里1是页面1的意思,添加道具就是我们的1级页面显示的功能按钮 如下图所示,
点击后会展开2级页面绘制所有参数,如下图所示
2.记忆功能
添加一个gm指令后,通常需要有记忆功能显示最近的gm指令。这里
点击这个自绘toggle(unity的自带gui没法很好的绘制toggle需要自绘)之后就会显示最近的gm指令集,然后就是和上面的操作一样了。