重新调整文件结构
增加加解密库的blowfish算法，把气球统计数据用blowfish加密存储
更换Util工具库中的命名空间以及对应文件的换行符为Unix风格
增加用户金币的显示和存储

1. 增加UserDataManager类（在UserData.h/cpp中），存储用户的金币、以及到目前位置的气球数据
2. 修改保存分析数据的文件名，之前用明文记录导致读取json数据失败会影响老版本的程序升级，故直接替换掉文件名
3. 修改BalloonAnalysis中的基类，在构造函数中先调用initData完成数据初始化
4. 暂时更新图鉴场景，显示用户当前拥有的金币
5. 在游戏场景结束时，把用户数据存盘
6. 把全局累计分析数据从单例中暂时去掉，直接放到UserDataManager中
7. 在游戏切换到后台时，把用户数据存盘
增加游戏前的额外道具购买功能

1. 增加用户数据额外道具的存储结构体ItemType
2. 增加对应的数据获取和添加接口（带数据校验）
3. 把DialogLayer增加create默认函数，以便可以实例化
4. 添加消费金币的音效
5. 增加BalloonItem类中对应的道具数值变量，以及设置和获取的函数
6. 结算对话框中增加获取金币的显示
7. 增加额外道具的时间和打气筒额外分数道具功能实现
8. 增加游戏结束后增加一盘游戏记录的数据
9. 每局游戏结束后，设置获得的金币
10. 把原本iOS弹出提示的代码放到弹出结算对话框的过程中
11. 多国语言文件中增加额外道具的名称和内容
把游戏开始前购买的道具的配置写入到配置文件中

1. 配置文件为buyExtendItems.plist，配置上显示的图标名称，道具类型，耗费值等数据
重新整理购游戏前购买道具的功能

1. 用户数据中增加游戏前道具购买的保留数据，打气筒增强、开始时间、时间道具增强、巨人收割
2. 把一次性道具的使用去掉kCCItemExTypeNone，直接把道具的枚举值从0计算，这里因为牵涉到道具配置上的类型值，所以，从0开始计算比较易于处理
3. 把一次性道具的校验和修改数据都统一成两个函数verifyItemExByID和setItemExCheckCodeByID
4. 把一次性道具的校验KEY和保存KEY都用静态字符串数组存储，下标就是对应道具类型的枚举值（这里要求一次性道具的类型是从0开始）
5. 一次性道具数据从磁盘中载入和读取的方式都修改为循环的模式，以简化一次性道具的读取和保存
6. 在一次性道具购买的界面增加确定开始游戏和回到主界面的两个按钮
7. 在游戏主界面中，增加对应一次性购买道具的对应数据保存以及效果
修改设置按钮点击放大缩小的函数中的按钮的大小以当前已有的缩放比例基础上进行再次缩放
增加任务模块
把任务是否完成的判断放到弹出结算框
任务数据解析中增加对比类型，用于设定任务数据的比较类型，如大于，小于，等于等
增加IAP类库，可以从苹果商店中获取对应的内购项目
增加新功能介绍的工具类，增加去除广告的功能

1. 增加PageSliderGuideView类，用于纯图片的新功能展现
2. 在NDKBridge的代码中实现是否显示广告的函数，目前需要在程序启动的时候判断才能去处广告，考虑把广告的部分移动到NDKBridge中，方便同步操作
把广告插件放到NDKBridge中调用，增加按钮重复点击的控制

1. 把GAdMob2dx类放到NDKBridge中调用，当然，还是可以通过直接调用GAdMob2dx的实例来操作，但是不推荐
2. 在ControlUtil类中增加一个isButtonCanTouch的函数，参数是按钮的间隔，毫秒级别，如果返回true表示已经可以按下，否则按钮被点击过快
修改WriteDataWithChecksum和IsCheckKeyDataValidate函数中校验值的计算方式，使得每个值都和其他值独立，即数据不可复制
增加成就管理类和个人技能数据管理类
修正在点击CCTableView中的元素，下拉后表现偏移量不正确的bug
增加声音控制类中调整背景音乐和音效的音量的接口

1. 增加音乐和音效接口
2. 在游戏开始后把背景音乐音量调低，回到主界面后音量恢复
增加测试代码，在图鉴界面点击项目后拉长区域显示，做为展现详细界面的demo
增加气球类中的对应套图的一些测试代码（未完成）