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)
友情提示:参考着代码学习: 下载地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值