您好,登錄后才能下訂單哦!
【嘮叨】
源碼教程請移步:http://blog.csdn.net/iamlazybone/article/details/19612941
感謝懶骨頭提供了這么多的Demo教程,對于初學者的我而言,幫助真的十分大。
注:本節僅僅記錄博主自身學習《戰神傳說》的心得體會。
【游戲截圖】
【學習心得】
1、CCSprite從大圖里截取小圖
// //CCRectMake構造為UI坐標,原點在左上角。 CCSprite* sp = CCSprite::create("menu.png",CCRectMake(0,0,120,0)); //
2、全局變量extern
// //在.h中聲明: extern CCArray* play_bullet; //在.cpp中定義: CCArray* play_bullet = NULL; //
3、CCMenu布局
// //1.讓menu的所有按鈕豎著排列,并且設置間距為20. menu->alignItemsVerticallyWithPadding(20); //2.按菜單項順序豎著排列,放置每行ci個元素 menu->alignItemsInColumns(c1, c2, c3, ..., cn, NULL); //
4、開關菜單項CCMenuItemToggle
// CCMenuItemFont* on = CCMenuItemFont::create("ON"); CCMenuItemFont* off = CCMenuItemFont::create("OFF"); CCMenuItemToggle* toggle = CCMenuItemToggle::createWithTarget(this,menu_selector(Options::setOptions),off,on,NULL); //設置開關選項,下標從0開始 toggle->setSelectedIndex(1); //
5、上下取整函數
// //小于等于x的最大整數 double floor(double x); //大于x的最小整數 double ceil(double x); //
6、隨機數0~1
// CCRANDOM_0_1(); //
7、動作分解
當一個動畫由多個動作組成時,可以對動畫進行動作分解。
如分解成:移動、放大、旋轉等,單獨處理,然后在整合成一個復雜的動作。
8、流程分解
(1)checkIsCollide(); //碰撞檢測(只扣血)
(2)removeInactiveUnit(); //移除不活躍的元素(銷毀死掉的戰機或***)
(3)checkIsReborn(); //戰機重生,或游戲結束(重新復活)
(4)updateUI(); //刷新界面
9、混合模式
詳細講解請移步:http://shahdza.blog.51cto.com/2410787/1547633
10、飛機觸摸移動
// void Game::ccTouchMoved(CCTouch* touch, CCEvent* event) { if( ship!=NULL ) { CCPoint pos = touch->getDelta(); //獲得觸屏滑動的偏移量 CCPoint currentPos = ship->getPosition(); //獲得飛機目前坐標 currentPos = ccpAdd(currentPos, pos); //飛機+偏移量 后的坐標 currentPos = ccpClamp(currentPos, CCPointZero, mysize); //不能移除屏幕 ship->setPosition(currentPos); //設置飛機移動后的坐標 } } //
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。