菜鸟成长记(1)——cocos2dx-2048小游戏实战之界面布局

来源:互联网 发布:知金教育靠谱吗 编辑:程序博客网 时间:2024/06/05 23:42

程序目标:实现2048小游戏的玩法功能,并且初步了解使用cocos2dx编写程序

计划用时:3到5天

使用引擎:cocos2dx-3.6版本

操作系统:OS

IDE:Xcode

前言:第一个项目来点简单的,不需要美术资源的2048当然是第一选择。小游戏,简单直观易于拆解需求更是我菜鸡的福音。好了,废话少说,我们下面就开始2048的编写吧。

需求分析: 1.游戏标题。

2.累积的分数展示。

3.重置按钮。

4.4 * 4的底盘以及可以变化的"卡牌"



1.0 界面布置

从头脑中的原型到一个实际完成的项目,总是有许多弯路要走。正所谓万事开头难,怎么来开始这个项目正是菜鸡的第一个难题。我选择根据需求分析建立界面布局作为第一个步骤。这个是最简单的,最好入手的,而且可以马上给一个完整的游戏画面。这样一来,貌似还是有点成就感的。

好,根据网上的各路大神给的教程,我终于成功的建立了一个空的项目。(卧槽,Run起来还真是不容易)

迫不及待了,马上打开工程,进入classes略过AppDelegate直接杀进HelloWorldScene.h

在头文件中定义各种变量方法。。搞起走!

对了,在这之前我们得梳理一下到底我们开始要做什么,对了就是根据需求分析建立界面布局。那么到底有哪些需要布局呢?如需求分析所列,游戏标题,累积的分数,重置按钮。


在HelloWorld.h中

private:    //记录分数    int score;        //标题展示板    cocos2d::Label *title;        //分数标题板    cocos2d::Label *showLabel;        //分数展示板    cocos2d::Label *scoreLabel;        //重置游戏    cocos2d::Label *restartLabel;

声明完成后,除开分数,这里还有三个Label需要摆放位置。唔...背景颜色需要设置,搞起!


在HelloWorld.cpp中

    //分数初始化    score = 0;    //设置背景颜色    auto BgColor = LayerColor::create(Color4B(180,170,160,255));    this->addChild(BgColor);        //摆放标题板    title = Label::createWithTTF("My2048", "fonts/arial.ttf", 60);    title->setColor(Color3B(255,255,153));    title->setPosition(visibleSize.width / 2,visibleSize.height - 50);    this->addChild(title);        //摆放重置板    restartLabel = Label::createWithTTF("Rest", "fonts/arial.ttf", 30);    restartLabel->setColor(Color3B(200,255,250));    restartLabel->setPosition(visibleSize.width / 2,visibleSize.height - 110);    this->addChild(restartLabel);        //摆放分数标题板    showLabel = Label::createWithTTF("score", "fonts/arial.ttf", 30);    showLabel->setPosition(visibleSize.width / 5,visibleSize.height - 150);    this->addChild(showLabel);        //摆放分数板    scoreLabel = Label::createWithTTF("0", "fonts/arial.ttf", 30);    scoreLabel->setPosition(visibleSize.width / 2 + 60,visibleSize.height - 110);    this->addChild(scoreLabel);

好了,到目前位置,菜鸡终于将这些板子都摆好了。运行一下看看效果,毕竟辛苦了半天,坐标可是用猜的。。。来,我们看看在Iphone4s模拟器上跑出来的效果。高清无码献给各位


卧槽,好像有点不对。。这不是竖屏的,好把,继续查资料。发现了,要在工程设置中更改属性

接着再来运行一下看看效果


借用金星的一句话:“完美!”

总结:1.不要在头文件中使用using namespace。  2.注意命名规范。 3.注释尽量详尽,前后格式要统一。 

0 0