1.做的第一款游戏终于上线了 功能虽然不多,但确实耗费了许多心血,这是一款类橙光游戏.中间许多功能都是从前未尝试过的,最早打算使用cocos2dx ,不过后来想想还是算了. 最终决定用oc来写,期间遇到很多坑,都是一点点来想出来的.最后成型时发现其他游戏也是这么实现的多多少少还是有些成就感.
首先关于剧本 ,cocos2dx 关于游戏人物对话剧本都是用json实现的,可是我们剧本太长,后台还有分数计算走不同剧情,所以想到直接用txt文档,剧本第一个坑就是编码,有的txt文件并不是Unicode编码导致读取出现乱码,更坑的有时编译前根本没法发现,最后通过终端发现编码不对 其实用json完全可以避免,其次剧本字数显示使用的是定时器,这其中关于定时器注销和数组越界非常不好处理.
2.人物显示和场景切换也非常头疼,从剧本读取出人物场景文件,添加大量判断,最后也没想好怎么优化,图片赋值也不是常用方式,因为图片太大 加载进内存当切换时不会立即释放从而导致内存暴涨.程序闪退.最后采用
[[UIImage alloc] initWithContentsOfFile: [[NSBundle mainBundle] pathForResource:imageString ofType:@"jpg"]];的方式,直接在目录中读取并不加载进内存.
3.关于存档.由于轻量级存储并且游戏不需要登录,所从开始就考虑用NSUserDefaults来存储,
不过NSUserDefaults限制过多,况且我还有存储历史对话和屏幕截图 最终用对象签订nscoding协议来解决NSUserDefaults限制过多问题.由于多界面存在读取入口,为了避免循环引用最终考虑提取单例.
关于添加友盟统计,因为文件已经成型采用hook监听viewdidload方法来进行统计.
4.关于单击界面文字显示结束,双击跳过,并且文字显示结束直接单击跳过.采用的方法就是用三个bool变量,通过bool值来控制文字显示.这其中会影响快进和自动时的定时器,采取办法就是点击自动和快进就关闭点击方法.
5.关于设置菜单,为了保证时效性采用通知中心来控制音乐播放和字速显示.
其他的还有很多,说起来很简单不过做起来确实费点劲.因为没有经验所以所有的坑都得自己去试,纪录一下吧.
第一款iOS游戏,类橙光
1.jpg
2.jpg
3.jpg
4.jpg
5.jpg
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
- 封装这个sql自动生成的类库目的是,之前项目数据库中的数据表字段非常多,本人既不喜欢写存储过程,又厌烦这些繁多的数...