网络消息结构体脚本自动生成编辑器的进一步扩展

来源:互联网 发布:淘宝好看的男鞋店铺 编辑:程序博客网 时间:2024/06/08 12:39
由于之前我们的消息都是这样的

把所有相关部分的消息结构类都写在一个cs文件里,这样很乱,不便于管理,新网络框架是一个结构用一个文件的方式,就是我之前写的编辑器自动生成的那种脚本,所以现在需要把旧的框架脚本里的类一个个剥离提取成一个个新的cs文件,但是项目中最起码有几百个消息结构体,难道一个一个创建吗?那太费事了,不是一个程序员该做的。编辑器创建的功能是为了以后一个个添加新消息时方便快捷,而将旧的脚本替换成新的框架所需的脚本文件,我采用了代码的办法。对我的编辑器又做了进一步的扩展。

从前两天只能创建消息,到现在我把编辑器做成了选择好路径中的cs文件,再点击生成的按钮,选择一个保存大量脚本的文件夹,就可以自动剥离出我们需要的脚本文件了。像这样

 

选择好源文件路径(打开Windows文件浏览器自己选择),会把路径打到文本框里可以手动修改,点击生成按钮。再选择一个保存的路径

于是这些我需要的脚本文件就批量生成了。(和源文件中结构不同,采用新的结构。具体实现方式见下文)

 

生成的代码和源文件不同,统统按我的格式来,直接调用我之前写的创建脚本方法就好了。自动生成的代码永远比人手写的干净整齐,哈哈

批量创建仅需要拿到文件夹的路径,后面根据不同的类自己加文件名,然后批量写入即可。

 

由于每生成一个小脚本,都需要得到的是字段和两个id以及消息的类型是请求或是回应,字段可以在原脚本中读取,而两个id在原脚本中是被调用的时候再赋值的,消息类型也没有直接区分,只能根据其被调用的方式来得到,所以我在每个需要转换的类下面的第一行加入我的标签。格式如下

MYTIP,ID1,ID2,Type

就这样,通过读取标签的形式,我得到了该类的基本信息,再动动脑子仔细观察一下源文件代码结构实现一下逻辑上的算法,就能提取出想要的字段,生成我所需要的脚本文件了。

 

随便截取一部分代码,表示坑是很多的,源文件比较老了。很多地方是制表符还是空格根本分不清的,还有一些莫名其妙的空格,所以都是先处理再走逻辑。毕竟源文件比较乱,我又只能读字符串,所以调试和修改的过程还是比较痛苦的。但是最后点一下生成几十个脚本的时候那种爽快感还是不言而喻的。写了这个扩展功能。后续把别的游戏中的消息转成新网络框架所需的结构类脚本文件也轻松愉快了。写编辑器的技能绝对是程序员必备,不要做一个在做重复事情的程序员,重复的事情请交给计算机去做。哈哈

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 想怀孕想生儿子怎么办 到期大姨妈不来怎么办 怕怀孕月经不来怎么办 宫颈环扎后宫缩怎么办 来例假刺激外阴高潮了怎么办 客人消费完说没钱怎么办? 孕13周血糖偏高怎么办 餐后血糖高14点怎么办 餐后血糖20多怎么办 空腹血糖6.6饭后9.2怎么办 键盘shift键失效了怎么办 灵异附身夫妻不合怎么办 鞋子买大了半码怎么办 鞋子买小了半码怎么办 黑布鞋鞋面白了怎么办 黑布鞋不黑了怎么办 黑布鞋退白了怎么办 老北京布鞋款式太少怎么办 老人输液抽搐后昏迷怎么办 头七家里有狗怎么办 股票退市股民的钱怎么办 美国股票退市股民怎么办 百度云字幕和视频不同步怎么办 百度云加载字幕有延迟怎么办 很难适应新环境怎么办 蜘蛛丝碰到嘴唇上起包有毒怎么办? 电瓶车在路上爆胎了怎么办 嘴被虫子咬肿了怎么办 高铁管家购票失败怎么办 高铁车厢空调冷怎么办 高铁票过了时间怎么办 网购火车票丢了怎么办 改签没有票了怎么办 火车票取了没赶上车怎么办 上车后车票丢了怎么办 晒了吗任务过期怎么办 坐火车买了站票怎么办 坐火车忘记带票怎么办 距离二本线差几分怎么办 行李包落火车候车厅怎么办 高铁票买错地点怎么办