首页 > 其他 > 详细

coco2dx实现翻拍效果

时间:2014-01-16 00:05:10      阅读:439      评论:0      收藏:0      [点我收藏+]

昨天吃饭看见同事演示他做的翻牌效果,感觉不错,我心血来潮也来搞个,很简单直接上代码。

bubuko.com,布布扣
class FlipCard : public CCNode
{
public:

    CREATE_FUNC(FlipCard);

    virtual bool init()
    {
        if (CCNode::init())
        {
            m_pFront = CCNode::create();
            m_pBack =CCNode::create();
            m_pBack->setVisible(false);
            addChild(m_pBack);
            addChild(m_pFront);
            m_fDeltaFlipAngle = 0.0f;
            return true;
        }
        return false;
    }

    void Flip()
    {
        if (m_pFront->numberOfRunningActions()>0 || m_pBack->numberOfRunningActions()>0)
        {
            return;
        }
        static const float fDuration = 2.0f;

    auto* pSeq1 = CCSequence::create( CCOrbitCamera::create(fDuration*0.5f, 1, 0, m_fDeltaFlipAngle, 90, 0, 0),
        CCHide::create(),
        NULL);
    m_fDeltaFlipAngle+=90.0f;
    auto* pSeq2 = CCSequence::create( CCDelayTime::create(fDuration*0.5f),
        CCShow::create(),
        CCOrbitCamera::create(fDuration*0.5f, 1, 0, m_fDeltaFlipAngle, 90, 0, 0),
        NULL);
    m_fDeltaFlipAngle+=90.0f;
        m_pFront->runAction(pSeq1);
        m_pBack->runAction(pSeq2);

        auto p = m_pFront;
        m_pFront = m_pBack;
        m_pBack = p;
    }

    CCNode* m_pFront;
    CCNode* m_pBack;
    float    m_fDeltaFlipAngle;
};
bubuko.com,布布扣

coco2dx实现翻拍效果

原文:http://www.cnblogs.com/mrblue/p/3516549.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!