网上找了一个梦幻连连看的资源。大家能够百度一下。然后整理一下加到project里面去。包含声音和图片文件。后面解释怎样整理能够方便管理。

我不推荐在代码里面直接引用资源文件名称,我称之为硬编码。

做iOS开发的同学好像比較习惯这样,要用按个图片,直接用图片来索引。

我们将全部的资源文件用C风格的字符串做一个索引,放在一个头文件Resources.h里面。这样以后须要改动图片或者索引能够非常方便的改动。

好,先加这么多资源。

来看看AppDelegate.cpp,这是入口。看看入口函数
applicationDidFinishLaunching。

    auto screenSize = glview->getFrameSize();auto designSize = Size(960, 640);auto fileUtils = FileUtils::getInstance();std::vector<std::string> searchPath;if (screenSize.width > 960) {designSize = Size(1136, 640);searchPath.push_back("Iphone5");}fileUtils->setSearchPaths(searchPath);glview->setDesignResolutionSize(designSize.width, designSize.height, ResolutionPolicy::SHOW_ALL);// create a scene. it's an autorelease objectauto scene = StartGame::createScene();// rundirector->runWithScene(scene);

我这里写的比較简单。由于仅仅做了960X640和1136X640两种资源,所以仅仅做了这两个的适配。这里的适配比較简单粗暴,就是依据屏幕尺寸去载入相应的资源,同一时候设置相应的设计分辨率。

这不是重点。后面我会重点讲分辨率适配。这里仅仅是出来一个界面。重点是我们的连连看游戏。

    // create a scene. it's an autorelease objectauto scene = StartGame::createScene();// rundirector->runWithScene(scene);

最后两句创建了一个StartGame的场景,导演运行这个场景。

假设你看你创建的project,会发现源代码里面是用的Helloworld。是的,我们就是要干掉HelloWorld。创建我们自己的游戏场景。

右键点击xcode左側的Classes,选择新建文件。选择C++。取个名字StartScene。同一时候创建头文件。

好了。怎样来写这个StartScene。呢。一步一步来。

我先不讲原理,直接讲怎么搞。

首先要知道。我们这个连连会是神马样子的。
至少应该是这种,首页进来有个大背景。然后有些点缀物,比方蓝天白云神马的,然后有个button,点击開始游戏。
好,先看怎么来出一个背景。
StartScene.h

class StartGame : public cocos2d::Layer
{
public:static cocos2d::Scene* createScene();virtual bool init();void play(void);CREATE_FUNC(StartGame);
};

定义了几个函数。
createScene()是一个静态函数,用来创建一个场景。
init()函数比較怪,是一个虚函数,为什么会这样。后面讲。先这么写好了。
play(void)是我们自己定义的一个函数,看名字就知道干嘛的。

CREATE_FUNC(StartGame),是个神马东西,也是一个create函数,用来创建StartGame实例的。后面大家会知道这就是引擎里面用的最多的二阶段构造器。

再来看实现文件cpp

#include "StartScene.h"
#include "Resources.h"
USING_NS_CC;Scene* StartGame::createScene()
{// 创建一个场景实例auto scene = Scene::create();// 创建StartGame的实例,是一个Layerauto Layer = StartGame::create();// 把StartGame的对象加入到场景里面scene->addChild(Layer);return scene;
}bool StartGame::init()
{// 先调父类的init函数// 这里能够知道,init()函数是一个继承下来的函数,并且是一个虚函数。子类能够重写这个函数if ( !Layer::init() ) {return false;}// 获取屏幕可视区域Size visibleSize = Director::getInstance()->getVisibleSize();// 创建一个背景auto background = Sprite::create(s_backgound);// 设置位置为中心位置background->setPosition(visibleSize.width / 2, visibleSize.height / 2);// 加入到当前层addChild(background);return true;
}void StartGame::play()
{}

代码里面有写凝视。非常easy对不正确。

看跑起来会是个什么东西。

就是个海洋背景图嘛。

转载于:https://www.cnblogs.com/lcchuguo/p/5274706.html

cocos2d-x 3.6版连连看载入资源相关推荐

  1. cocos2d-x 3.6版连连看加载资源

    网上找了一个梦幻连连看的资源,大家可以百度一下.然后整理一下加到工程里面去,包括声音和图片文件,后面解释如何整理可以方便管理. 我不推荐在代码里面直接引用资源文件名,我称之为硬编码.做iOS开发的同学 ...

  2. Qt版连连看之极速连连看:设计

    [源码及安装包下载地址]http://code.google.com/p/speedlink/downloads/list [项目展示及相关截图在最后] 术语约定: 面板:连连看中用于拜访小图案的区域 ...

  3. Jquery做的网页版连连看(初稿)

    这两天一直构思做一个网页版连连看,不过一直没有时间也没有算法.今天早上有空,先完成了一个外壳,就少了算法.我知道网页版的连连看其实也有人做过了,但可能每个人的想法不同,思路也不同.我只是当做一种练习. ...

  4. live2d sdk java_Unity Live2D SDK的使用方法(一)——载入资源

    0.文件类型说明 .cmox文件:Live2D制做工具Cubism的工程文件格式. .moc文件:Unity能够直接用的文件格式,将.cmox文件载入Cubism后导出得到. .bytes文件:二进制 ...

  5. 手把手带你清理电脑版微信冗余资源

    手把手带你清理电脑版微信冗余资源 文章目录 手把手带你清理电脑版微信冗余资源 正文 0. 痛点 1. 检查 MacOS 系统资源占用情况 2. 删除电脑版微信冗余空间 其他资源 参考连接 正文 真的是 ...

  6. 鸟哥的Linux私房菜-基础篇第四版.pdf免费资源下载链接,《鸟哥的Linux私房菜-基础篇》第四版.pdf

    <鸟哥的Linux私房菜-基础篇>第四版.pdf免费资源下载链接(.pdf书籍的优点是便于直接在电脑中保存有电脑就可以阅读,如果觉得这本书给你提供到了很大的帮助,可以去书店补一本纸质版) ...

  7. DLG\DOM\DEM...免费提供!河北省向全社会公开2020版地理信息数据资源

    河北省自然资源厅发布关于公开2020版地理信息数据资源的公告,这是河北省首次系统地向全社会公布地理信息数据资源. "此次公布的地理信息数据全部向全社会免费提供,以推进'放管服'改革,优化营商 ...

  8. 襄阳教育云平台实名认证_襄阳教育云平台手机版(襄阳教学资源平台)V3.7.6 中文版...

    襄阳教育云平台手机版(襄阳教学资源平台)是一款拥有丰富教学资源的客户端应用.旨在确保更好体验平台资源及应用,利用襄阳教育云平台可以更好的辅助教师授课,同步课程高效教学,并且襄阳教育云平台让学生可以随时 ...

  9. Cocos2D来制作横版过关游戏1

    本文实践自 Allen Tan 的文章< How To Make A Side-Scrolling Beat 'Em Up Game Like Scott Pilgrim with Cocos2 ...

最新文章

  1. wpf每隔一小时_包河区徐河排涝站24小时不间断运作 11座区管泵站全面应战保安澜...
  2. Spring-AOP @AspectJ语法基础
  3. MFC-CString与int互相转化
  4. Flsak爱家租房--实名认证
  5. 2015新东方计算机,2015年同等学力计算机综合模拟(2)
  6. Alpha(9/10)
  7. 2016专接本c语言真题_专科三年记录+自己学习专接本历程
  8. Exchange 2016 OWA登陆异常
  9. JS 实现列表移动(JQuery实现)
  10. mac下编译安卓源码
  11. php 里面的echo啥意思,echo的含义 echo 有哪些含义,有什么功能
  12. 开发电商网站应该注意哪些
  13. 35条心理暗示让你摆脱坏心情,做快乐的自己
  14. (co-,contra-,in-)variance in Scala, what is [+-A]
  15. 攻防世界_难度8_happy_puzzle
  16. split在python中什么意思_python 正则表达式 split(python里split什么意思)
  17. 牛人教你读文献! 学习了!
  18. 虐我千百遍之NS3安装
  19. 5.15日 搭建青龙面板教程——狗东跑跑跑~
  20. LTE调度算法(下行)

热门文章

  1. 如何让学习成为一种习惯
  2. Web前端开发技术课程大作业——龙猫宫崎骏5页 带js 带jquery 带轮播 带js表单校验 带留言表单 HTML+CSS+JS网页设计期末课程大作业 web前端开发技术 web课程设计
  3. python — 生成器、推导式、递归
  4. activiti——网关
  5. 对接支付宝支付,沙箱环境提示:支付存在钓鱼风险!防钓鱼网站的方法
  6. 华泰证券研究所谢春生:从全球看金融 IT 架构的变化
  7. 月薪12K北漂程序员的真实生活!
  8. 电脑32位和64位操作系统的区别
  9. 常见的现货白银投资专业术语
  10. 关于weblogic报错:Unable to obtain lock on *******/AdminServer.lok. Server may already be running