首页 > 代码库 > 初学cocos2dx 写了个2048 跟大家一起分享下
初学cocos2dx 写了个2048 跟大家一起分享下
首先是头文件
部分代码是借鉴加修改 大部分是自己写的。
class HelloWorld : public cocos2d::CCLayer { public: virtual bool init(); static cocos2d::CCScene* scene(); void menuCloseCallback(CCObject* pSender); CREATE_FUNC(HelloWorld); //以上为自动生成的代码bool doUp(); //实现上下左右移动功能 bool doDown(); bool doLeft(); bool doRight();void createCardSprite(cocos2d::CCSize size); //创建出一个4*4的精灵矩阵void HelloWorld:: Random_createCardSprite(); //随机生成数字 随机位置生成bool HelloWorld:: FullScreen(); //判断是否全屏充满了数字 并且不能移动bool HelloWorld:: GameOver();// 游戏结束 void random_num(int x,int y);// 随机生成2跟4void Random_createCardSprite_easy(int flag); // 设置这个函数的目的本来是想设置游戏难度 由于并未实现选难度的功能 所以 这个函数只有只有调用 Random_createCardSprite(int flag);的功能void HelloWorld:: Random_createCardSprite(int flag); //随机生成数字 有规律的生成 向上移动则在下面生成
private:int firstX,firstY,endX,endY; //触摸点的坐标 CardSprite *CardNum[4][4]; //创建 数字精力的数组对象 4*4};
class CardSprite: public cocos2d::CCSprite { public: virtual bool init(); static CardSprite* createCardSprite(int numbers,int width,int height,float CardSpriteX,float CardSpriteY); CREATE_FUNC(CardSprite);int GetNumber();//取得这个精灵所代表的数字 void SetNumber(int NewNumbers); //修改这个精灵所代表的数字void change_num_view(); //改变数字的外观 根据 数字大小转换颜色 private: int number; //这个精灵所代表的数字 void NumberInit(int numbers,int width,int height,float X,float Y); //初始化“数字” //定义显示数字的控件 cocos2d::CCLabelTTF *labelTTFCardNumber; //显示背景 cocos2d::CCLayerColor *layerColorBG; };
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。