我正在使用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
}