我现在要在编辑器里配置一些Buff数据,这个Buff的类在Model里边,正常我在这个类上加odin的标签,然后编辑器序列化这个类就行。但是有时候会需要一些Unity的api来辅助显示,比如增加什么图标之类的,因为在model中没法调用Editor的东西,这种情况要怎么处理呢
配置到excel就行了
不然就把buff放到ModelView中
egametang 现在确实是放到了excel中,excel只是存了这个类的序列化后的json。因为服务器也要用这个类来当数据,我目前想到的是在Editor里写这个类,然后同步生成一个cs文件到Model里边,运行时用Model里边的来反序列化
egametang 想到一个办法,buff数据放Editor asmdef里,然后链接到Model中,Odin的逻辑只在Editor asmdef的宏中。 但是今天实践发现unity的asmdef没办法给单独加宏,只能加这个dll是否生成的define,而不是csproj的DefineConstants, 可恶啊
我提供一个思路,把这个类复制一份到Editor里,放到另一个命名空间里
gameall3d 我目前想到的是在Editor里写这个类,然后同步生成一个cs文件到Model里边,这样就不用受限制了
wanger 因为我用的Luban,我直接在Model和Editor下都生成,就两边同步使用了~
gameall3d 但是这样会覆盖Editor下写的Odin编辑器属性吧,因为odin是要修改这个配置类的
wanger 哦,你还要用Odin配置啊,那麻烦些了,如果是用Luban的话,可能要改生成类的模板,或者定制一些功能
gameall3d 是,因为想用编辑器来搞一些配置,类似技能编辑器那种