2014-04-13 437 views
0

我試圖創建在cocos2d-JS的動畫精靈,但我不希望使用spritesheet正如我在的cocos2d-iphone項目所做的:動畫精靈沒有spritesheet

NSMutableArray *animationFrames = [NSMutableArray array]; 
    int frameCount = 0; 
    for(int i = 1; i <= 9; ++i) 
    { 
    CCSpriteFrame *spriteFrame = [CCSpriteFrame frameWithImageNamed:[NSString stringWithFormat:@"hero-%d.png",i]]; 
    [animationFrames addObject:spriteFrame]; 
    } 
NSLog(@"cria sprite com frames"); 
_player = [CCSprite spriteWithSpriteFrame:animationFrames.firstObject]; 

哪有我在cocos2d-js中這樣做?我在cocos2d-js文檔中找不到相同的功能。

+0

動畫和精靈表是兩個單獨的概念,您可以一起使用它們,但不需要這樣做。你在問什麼以任何方式玩精靈動畫? – LearnCocos2D

回答

0

也許下面的代碼稍微複雜一些,因爲它可能是。但它工作並加載文件中的精靈,並將動畫放在一起,並將其用於精靈的runAction(animFrame是一個空數組,「this」是一個ccLayer)。

var str = ""; 
for (var i = 1; i < 9; i++) { 
    str = "mosquito_fly" + (i < 10 ? ("0" + i) : i) + ".png"; 
    var texture = cc.textureCache.addImage("res/Murbiks/"+str); 
    var spriteFrame = cc.SpriteFrame.create(texture,cc.rect(0,0,96,96)); 
    animFrames.push(spriteFrame); 
} 

var animation = cc.Animation.create(animFrames, 0.06+Math.random()*0.01, 10); 
var animate = this.animateMostafa = cc.Animate.create(animation); 

// Create sprite and set attributes 
mostafa = cc.Sprite.create(res.Mostafa_single_png);   
mostafa.attr({ 
    x: 0, 
    y: 0, 
    scale: 0.60+Math.random()*0.3, 
    rotation: 0 
}); 
this.addChild(mostafa, 0);