我正在使用Cocos2dx 2.1.4开发游戏,并希望创建一个自定义的Sprite类。但是,我不知道如何为它设置图像。 CCSprite::create("xxx.png")initWithFile("xx.png")之类的东西。

怎么做?我需要在自定义精灵类中覆盖initWithFile吗?

最佳答案

您应该覆盖要使用的CCSprite的create方法和onEnter onExit方法,例如:

MySprite* MySprite::create(const char *pszFileName)
{
    MySprite *pobSprite = new MySprite();
    if (pobSprite && pobSprite->initWithFile(pszFileName))
    {
        pobSprite->autorelease();
        return pobSprite;
    }
    CC_SAFE_DELETE(pobSprite);
    return NULL;
}

void MySprite::onEnter()
{
    // Register touch delegate
}

void MySprite::onExit()
{
    // Unregister touch delegate
}

09-06 15:37
查看更多