纯粹娱乐:了解cocos2d-x

  • 设置资源查找路径

默认是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旋转的参考点
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值