cocos2dx实战篇——《战神传说》学习心得
【唠叨】
源码教程请移步: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中声明:externCCArray*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的最大整数doublefloor(doublex);//大于x的最小整数doubleceil(doublex);//
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、飞机触摸移动
//voidGame::ccTouchMoved(CCTouch*touch,CCEvent*event){if(ship!=NULL){CCPointpos=touch->getDelta();//获得触屏滑动的偏移量CCPointcurrentPos=ship->getPosition();//获得飞机目前坐标currentPos=ccpAdd(currentPos,pos);//飞机+偏移量后的坐标currentPos=ccpClamp(currentPos,CCPointZero,mysize);//不能移除屏幕ship->setPosition(currentPos);//设置飞机移动后的坐标}}//
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。