希望定义一个炸弹类,继承CCSprite;
炸弹精灵类同时还有子精灵halo,子精灵sparkle,子精灵_shockwave。
创建这个炸弹类,如何用 帧缓存读取的方式实现读取图片?
头文件定义:
class org_bomb : public cocos2d::CCSprite
{
public:
org_bomb();
~org_bomb();
static org_bomb* gameWithSpriteFrame(CCSpriteFrame* pSpriteFrame);
static org_bomb* gameWithSpriteFrameName(const char *pszSpriteFrameName);
bool isvisible;
CCSprite* halo;
CCSprite* sparkle;
CCSprite* _shockWave;
};
CPP文件:
org_bomb* org_bomb::gameWithSpriteFrame(CCSpriteFrame *pSpriteFrame)
{
org_bomb *pobSprite = new org_bomb();
if (pSpriteFrame && pobSprite && pobSprite->initWithSpriteFrame(pSpriteFrame))
{
pobSprite->autorelease();
return pobSprite;
}
CC_SAFE_DELETE(pobSprite);
return NULL;
}
org_bomb* org_bomb::gameWithSpriteFrameName(const char* pszSpriteFrameName){
CCSpriteFrame *pFrame = CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(pszSpriteFrameName);
#if COCOS2D_DEBUG > 0
char msg = {0};
sprintf(msg, “Invalid spriteFrameName: %s”, pszSpriteFrameName);
CCAssert(pFrame != NULL, msg);
#endif
return org_bomb::gameWithSpriteFrame(pFrame);
}
运行直接报错:
Undefined symbols for architecture i386:
“org_bomb::org_bomb()”, referenced from:
org_bomb::gameWithSpriteFrame(cocos2d::CCSpriteFrame*) in HelloWorldScene.o
org_bomb::gameWithSpriteFrameName(char const*) in HelloWorldScene.o