2012-02-29 108 views
0

我正在使用objective-c中的iPhone應用程序,也使用cocos2d作爲圖形。我有一個大的精靈,我做了關於如何擴展精靈的研究和我的代碼看起來像這樣...比例精靈錯誤

//Set up sprite 
    // Use batch node. Faster 
    CCSpriteBatchNode *parent = [CCSpriteBatchNode batchNodeWithFile:@"egg.png" capacity:100]; 
    eggTexture_ = [parent texture]; 

    [eggTexture_ setScaleX: 10/eggTexture_.contentSize.width]; 
    [eggTexture_ setScaleY: 10/eggTexture_.contentSize.height]; 

它編譯罰款!然後我得到一個運行時錯誤「SIGABRT」。我找不到問題。這可能是一件很成熟的事情。回想一下,在「CCTexture2d可能無法響應setScaleX」的行後面會出現「警告」。任何幫助非常感謝:)謝謝

回答

3

實際上,類CCTexture2D不響應setScaleX和setScaleY。該語句[父質地】挑選的對象是紋理,所以你必須得到與此類似

*終止應用程序的錯誤消息由於未捕獲的異常「NSInvalidArgumentException」,原因是:「 - [CCTexture2D setScaleX: ]:無法識別的選擇器發送到實例0x5e14c70'

我不確定爲什麼你想要縮放紋理,我懷疑你寧願縮放一個CCSprite,並將其放置在場景中。像:

CCSprite *eggSprite_ = [CCSprite spriteWithTexture:[parent texture]]; 
[eggSprite_ setScaleX: 10/eggSprite_.contentSize.width]; 

等等

+0

好了,現在我改變了CCTexture2d到CCSprite ......它不再在代碼中後期的作品,當我需要使用精靈在Box2D的我怎麼打開CCSprite到PhysicsSprite – 2012-02-29 02:13:44

+0

ohh ...對不起,你的目的在這個問題上還不清楚。我沒有box2D的實用知識,也沒有它的API。 'PhysicsSprite'是否有一個帶有cocos2d Sprite的init(創建者),或者甚至派生自CCSprite?這是我敢冒險猜測:)。 – YvesLeBorg 2012-02-29 02:41:39