コード例 #1
0
bool CSpriteObject::init(CCDictionary* pObjectDict)
{
    do {
        CC_BREAK_IF(!CObjectBase::init(pObjectDict));
        CCString* fileType = getFileTypeFromDict();
        CC_BREAK_IF(NULL == fileType);
        CCString* fileName = getFileNameFromDict();
        CC_BREAK_IF(NULL == fileName);
        
        if (getMaxLevelFromDict() > 0)
        {
            fileName = CCString::createWithFormat("%s%d", fileName->getCString(), getLevel() - 1);
        }
        
        if (fileType->compare("ccbi") == 0)
        {
            fileName = CCString::createWithFormat("%s.ccbi", fileName->getCString());
            CC_BREAK_IF(!setSpriteFromCcbi(fileName->getCString()));
        }
        else
        {
            CC_BREAK_IF(!setSprite(fileName->getCString()));
        }
        
        return true;
    } while (false);
    
    return false;
}
コード例 #2
0
ファイル: TFSpriteObject.cpp プロジェクト: jobine/TheForce
CCSprite* TFSpriteObject::getFarmSprite()
{
    if (pFarmSprite_)
    {
        return pFarmSprite_;
    }
    
    CCString* fileNameInFarm = getFileNameInFarmFromDict();
    CCAssert(fileNameInFarm && strlen(fileNameInFarm->getCString()) > 0, "File name in farm is invalid.");
    
    if (getMaxLevelFromDict() > 0)
    {
        fileNameInFarm = CCString::createWithFormat("%s%d", fileNameInFarm->getCString(), getLevel() - 1);
    }
    
    pFarmSprite_ = CCSprite::createWithSpriteFrameName(fileNameInFarm->getCString());
    CCAssert(pFarmSprite_, "Failed to create Farm Sprite.");
    
    return pFarmSprite_;
}