2014-06-20 48 views
0

是一位使用sprite builder和cocos2d的新手。在SpriteBuilder中跳轉一個正在運行的sprite

我已經完成了使用精靈生成器及其時間軸運行的精靈連續運行。即一旦應用程序啓動後,英雄精靈就會不斷運行,就像廟會遊戲一樣。

在這裏,如果用戶點擊屏幕,這個精靈應該跳轉。 Am結構與實現這個如何使我的運行精靈跳上屏幕上的點擊?

下面是我在touchBegan中編寫的代碼,讓我的精靈跳躍。在這裏我需要將這個正在運行的動畫與精靈跳轉動畫合併。任何建議和幫助將大有幫助。

[_hero.physicsBody applyImpulse:ccp(0, 400.f)]; 
+1

請說明您的具體問題或添加額外的細節,以確切地突出你需要什麼。正如目前所寫,很難確切地說出你在問什麼。請參閱「如何問問」頁面以獲取有關澄清此問題的幫助。 – LearnCocos2D

+0

在上面找到我的編輯 – nik

+0

如何在屏幕觸摸時將運行精靈與跳躍精靈合併 – nik

回答

0

我這樣做的方式是使用typedef枚舉來設置一組變量來存儲字符狀態。在Definitions.h類中進行設置。然後,在你的英雄類中,添加一個將使用switch語句來改變狀態的方法。例如,如果傳入jumpState並且當前狀態爲runState,則該方法將狀態更改爲jumpState並運行一個名爲jumpAnim的方法。然後,您可以在JumpAnim中編寫動畫或從spritebuilder中加載它。

然後,在您的遊戲最終確定的另一個類中,將其稱爲GamePlay圖層,這就是您的touchBegan方法所在的位置。在GameplayLayer.h中,設置一個CCTime變量來存儲你的jumptimer的值,你的向上跳躍動畫運行多久。

在您的touchBegan方法中,您可以將狀態更改爲跳轉並重置jumpTimer。

然後,在您的更新方法中,調用updateHero方法。 updateHero將會有一個if語句 - 如果英雄狀態是jumpState,那麼將他向上移動3個點直到jumpTimer用完。一旦計時器耗盡,將狀態更改爲fallingState。下降狀態也應該在角色分類中的switch語句中。

希望這會有幫助

相關問題