Quick-Cocos2d-x-3.2中示例Coinfilp总结一

参考至:点击打开链接

如题目所示,我使用的是Quick-Cocos2d-x-3.2

这篇文章主要是简单总结一下Coinflip实例的开发过程,从游戏启动开始串一下各个文件都实现了那些功能

一,程序的启动(main.lua)

进入main.lua文件,这是lua脚本的启动文件,通过调用require("app.MyApp").new():run()这样一个方法,实现进入游戏启动后的场景

二,程序启动的方法实现(MyApp.lua)

查看MyApp.lua中的run方法:一,设置了图片等资源的搜索路径;二,添加图片缓存;三,预加载音频文件;最后调用enterMenuScene()

方法进入MenuScene场景。到此,一二两步实现了游戏的启动,这个时候我们就可以看到游戏启动后的效果

run方法外,还封装了进入更多游戏场景,关卡选择场景,游戏场景等所有场景的切换方法,便于后续管理和编写


一个场景MenuScene是进入了,但是这个场景不建立的话,我们怎么能看到呢?所以接下来是:

三,场景MenuScene的实现 (MenuScene.lua文件 ,引入了views.AdBar和views.BubbleButton两个自定义类)

(一),背景的添加(就是建立并添加一个图片精灵(Sprite));

(二),信息条的添加调用自定义类AdBar的new方法创建信息条(图中绿色部分就是信息条));AdBar的实现

(三),创建如上图所示的MOREGAMES,STARTA按钮(调用自定义类BubbleButton的new方法创建按钮),这两个除

图片,位置,点击后进入的场景不同,其他代码部分一模一样。他们的按钮属性是一样的。

按钮BubbleButton的实现


接下来玩游戏嘛,点击MOREGAMES

四,场景MoreGamesScene(MoreGamesScene.lua)

很简单的页面吧。。。就是一个场景(图片精灵);一个信息条;和一个后退按钮

cc.ui.UIPushButton. new ( "#BackButton.png" )
:align(display.CENTER,display.right-100,display.bottom+120)
--添加点击的响应事件
:onButtonClicked(function()
app:enterMenuScene()--回到MenuScene中
end)
:addTo(self)

然后点击BACK返回到上面第一个主场景MenuScene。。。点击START按钮,进入关卡选择场景
五, 游戏关卡选择场景ChooseLevelScene(ChooseLevelScene.lua)引入AdBar和LevelList两个自定义
组成部分:
(一),背景图片的建立,设置位置为顶部;
(二),标题的建立,设置位置(即上面coinflip字样);
(三),信息条的建立(绿条。。。玩游戏的没色盲吧应该);
(四),创建等级列表(即关卡板):具体实现
1,创建一个rect矩形块(触摸矩形区域);
2,执行LevelsList构造方法(这里封装了翻页方法,创建了7个cell和指示灯);
3,调用levelsList:addEventListener监听事件方法,,监听onTapLevelIcon事件,调用自身onTapLevelIcon方法
4,执行自身的onTapLevelIcon(event),播放音效跳转到指定关卡的PlayLevelScene。
(五),设置后退按钮
这样,一个关卡选择场景就实现了,然后跟着选择进入游戏场景PlayLevelScene
六,游戏场景(PlayLevelScene.lua)引入了Levels,Board,AdBar三个自定义
场景组成:
1,背景(屏幕正中央且置顶
2,标题
3,信息条
4,等级文本的显示(即上图中的Level: 6的信息)
5,硬币板 Board的具体实现
(1),调用自定义类Board的构造方法 创建硬币板并放置所有硬币;
(2),监听LEVEL_COMPLETED事件,完成这一关后,调用自身onLevelCompleted方法添加胜利图片
6,后退按钮,(BACK)
友情提示:参考着代码学习: 下载地址

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...