位置: 编程技术 - 正文
推荐整理分享cocos2dx3.2 读取json(cocos2dx schedule),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:cocos creator读取json,cocos2d schedule,cocos2d读取文件,cocos2d读取文件,cocos读取配置文件,cocos2dx-js,cocos2dx schedule,cocos读取配置文件,内容如对您有帮助,希望把文章链接给更多的朋友!
#include "json/rapidjson.h"
#include "json/Document.h"
#include "json/reader.h"
#include "json/writer.h"
#include "cocos2d.h"
USING_NS_CC;
bool SpaceShip::init(ValueMap&vm,int index){
do{
/*读取配置文件字符串数据*/
ssize_t size;
std::string pathKey =FileUtils::getInstance()->fullPathForFilename("Json/ship_config.json");
unsignedchar*ch=FileUtils::getInstance()->getFileData(pathKey.c_str(),"r",&size);
std::string data=std::string((constchar*)ch,size);
/*开始解析*/
rapidjson::Document doc;///<创建一个Document对象rapidJson的相关操作都在Document类中
doc.Parse<0>(data.c_str());///<通过Parse方法将Json数据解析出来
if(doc.HasParseError())
{
CCLOG("GetParseError%sn",doc.GetParseError());
returnfalse;
}
if(index>0)
{
int size = doc.Size();
for (int i =0; i < size; i)
{
int id = doc[i]["id"].GetInt();
if (id == index)
{
char c[2];//!!!!!!!!!!!!!!!0~9个飞船,超过需扩展
sprintf(c,"%d",index-1);
constchar*modePath =doc[i]["pic"].GetString();
CCLOG("ship path:%s",modePath);
std::string pre ="Image/SpaceShip/";
shipSp =Sprite::create(pre.append(modePath).append(".png"));
// shipSp->setAnchorPoint(Point(.5,.5));
Size ss=shipSp->getContentSize();
shipSp->setRotation(SHIPROTATION);
addChild(shipSp,SPACESHIP,SPACESHIP);
shieldValue = doc[i]["shield"].GetInt();
energy = doc[i]["energy"].GetInt();
shapeId = doc[i]["shape"].GetInt();
m_rate = doc[i]["rate"].GetDouble();
radius = ss.width*0.6;
break;
}
}
}
}while(0);
scheduleUpdate();
returntrue;
}
cocos2dx 中实现再按一次退出效果 我们常见的安卓项目都有再按一次退出程序的提示,在cocos2dx中如何实现?编译环境cocos2dx3.3vs先上代码//创建一个监听按键的函数autolistener=EventListener
cocos2dx lua在sublime下的插件安装及查看定义 sublime插件:点击打开链接开发工具sublimetext及其强力插件QuickXDevQuickXDev设置:
cocos2dx HelloWorld代码分析 刚接触cocos2dx,看了一些教程之后,先稍微总结一下,有点粗浅,多多指教1.用python脚步创建一个新项目,名为Hello:2.可见,在projects目录下多了一个Hell
友情链接: 武汉网站建设