- 设置资源查找路径
默认是Resources下面查找
std::vector<std::string> searchPath;
searchPath.push_back("sd");
//searchPath.push_back("/");
FileUtils::getInstance()->setSearchPaths(searchPath);
如果这样设置那么查找的目录是变成: Resources/sd/
- 音乐声音
预加载:
SimpleAudioEngine::getInstance()->preloadBackgroundMusic("**.mp3");
SimpleAudioEngine::getInstance()->preloadEffect("**.wav");
播放声音:
SimpleAudioEngine::getInstance()->playBackgroundMusic("**.wav");
SimpleAudioEngine::getInstance()->playBackgroundMusic("**.wav",true);
SimpleAudioEngine::getInstance()->playEffect("**.mp3",false);
创建菜单按钮
auto backItem = MenuItemImage::create(
"**.png",//默认图片
"**.png",//选中图片
CC_CALLBACK_1(**::menuBackCallback//按钮点击事件触发回调,this));
开关菜单按钮
MenuItemImage *_trnOn,*_trnOff;
_trnOn = MenuItemImage::create(
"btn_**On.png","btn_**On.png");
_trnOff = MenuItemImage::create(
"btn_**Off.png","btn_**Off.png");
MenuItemToggle *toggleItem = MenuItemToggle::createWithCallback(
CC_CALLBACK_1(**::toggleMenuCallback,this),_turnOn,_turnOff,NULL);
toggleItem->setSelectedIndex(1);//设置初始值
创建菜单
auto menu = Menu::create(backItem,toggleItem,**Item,NULL);
加进场景(之前设置显示位置等)//比如backItem->setPosition(Vec2(* *,* *));
this -> addChild( menu );//*->removeFromParent();移除
- 本地存储
获取值:
UserDefault::getInstance()->getBoolForKey("**")
存储值:
UserDefault::getInstance()->setBoolForKey("**",false);
- 场景转跳
auto scene = MainScene::createScene();
TransitionScene* reScene = TransitionPageTurn::create(1.0f,scene,true);
Director::getInstance()->replaceScene(reScene);
auto sprite = Sprite::create("scene_end.png");
sprite->setPosition(Point(GAME_SCREEN_WIDTH/2,GAME_SCREEN_HEIGHT/2));
this->addChild(sprite);
TTFConfig config("yuehei.otf",48);
auto labelscore = Label::createWithTTF(config," 0 ");
labelscore -> setPosition(Point( GAME_SCREEN_WIDTH/2,GAME_SCREEN_HEIGHT/1.4));
this->addChild(labelscore);
- 交互
添加监听
auto touchListener = EventListenerTouchOneByOne::create();
touchListener->onTouchBegan = CC_CALLBACK_2(GameScene::onTouchBegan,this);
touchListener->onTouchMoved = CC_CALLBACK_2(GameScene::onTouchMoved,this);
_eventDispatcher->addEventListenerWithSceneGraPHPriority(touchListener,this);
获取点击点
auto location = touch->getLocation();
判断点击点是否在某区域
(可以根据点击点 获取sprite 也可以根据结束点几点判断左滑右滑 )
auto upRect = Rect(*,*,*,*);
if (upRect.containsPoint(location)) { }
- 简单动画
staSprite->runAction(MoveTo::create(time,posOfDest));//移动位置
staSprite->runAction(Sequence::create(
MoveTo::create(time,posOfDest),MoveTo::create(time,posOfSrc),NULL));//先后连续移动两次位置
- 节点位置 position 节点位置 anchorpoint 锚点,默认节点中心,position的位置的参考点,scale缩放的参考点,rotation旋转的参考点