【quick-cocos2d-lua】 coinflip翻金币游戏
2018-06-26 09:54
513 查看
等级选择场景和Level1游戏场景:
项目组成:
等级选择场景:第一页为4排4列组成的16个按钮,一共有7页,按钮矩阵下面有显示页数的图标。按住页面往左拖动,可进行翻页,一次可翻多页。翻页完成后,下面显示页数的图标也跳动到对应的页数。各个类之间关系及类的主要作用:
LevelsListCell(每一页的组成,按钮)
↑
ChooseLevelScene→LevelsList(7页及页数指针)
↓
继承于:PageControl
↓
继承于:ScrollView
Level1游戏场景:任意点击一个金币,则其上下左右以及自己进行翻转,原为金色则翻转之后变银色,原为银色则反之。当所有的都显示为金色时,则这一关胜利通过。
主要代码分析:
①ChooseLevelScene:主要是创建一个levels list
[code]local rect = cc.rect(display.left, display.bottom + 180, display.width, display.height - 280) self.levelsList = LevelsList.new(rect) self.levelsList:addEventListener("onTapLevelIcon", handler(self, self.onTapLevelIcon)) self:addChild(self.levelsList)
②LevelsList:创建list页面及选项按钮,以及页面显示指针
[code]function LevelsList:ctor(rect) LevelsList.super.ctor(self, rect, PageControl.DIRECTION_HORIZONTAL) -- add cells local rows, cols = 4, 4 if display.height > 1000 then rows = rows + 1 end local numPages = math.ceil(Levels.numLevels() / (rows * cols)) local levelIndex = 1 for pageIndex = 1, numPages do local endLevelIndex = levelIndex + (rows * cols) - 1 if endLevelIndex > Levels.numLevels() then endLevelIndex = Levels.numLevels() end local cell = LevelsListCell.new(cc.size(display.width, rect.height), levelIndex, endLevelIndex, rows, cols) cell:addEventListener("onTapLevelIcon", function(event) return self:onTapLevelIcon(event) end) self:addCell(cell) levelIndex = endLevelIndex + 1 end -- add indicators local x = (self:getClippingRect().width - LevelsList.INDICATOR_MARGIN * (numPages - 1)) / 2 local y = self:getClippingRect().y + 20 self.indicator_ = display.newSprite("#LevelListsCellSelected.png") self.indicator_:setPosition(x, y) self.indicator_.firstX_ = x for pageIndex = 1, numPages do local icon = display.newSprite("#LevelListsCellIndicator.png") icon:setPosition(x, y) self:addChild(icon) x = x + LevelsList.INDICATOR_MARGIN end self:addChild(self.indicator_) end
阅读更多
相关文章推荐
- 跑酷类游戏------quick-Cocos2d-X lua添加plist文件以及实现动画
- 跑酷类游戏------quick-Cocos2d-X lua添加瓦片地图、瓦片地图的移动以及碰撞检测
- 使用lua更新脚本后,xcode下游戏资源没有更新的问题[quick-cocos2d-x]
- quick-cocos2d-x从零开始游戏开发笔记(二):Lua语言基础学习
- 在Windows上用cygwin成功编译quick-cocos2d-x项目下的CoinFlip例子
- [quick-cocos2d-x lua学习] 让游戏竖屏显示
- quick-Cocos2d/framework/display.lua(这个组件提供的功能是很重要的,包括场景、层、精灵、动画这些游戏中必要的组件)
- 【quick-cocos2d-lua】 飞行游戏
- 使用lua更新脚本后,xcode下游戏资源没有更新的问题[quick-cocos2d-x]
- Quick-cocos2dx-lua 游戏IOS端编译
- 使用VS插件在VS2012/2013上编辑和调试Quick-Cocos2d-x的Lua代码
- quick-cocos2d-x从零开始游戏开发笔记(三):参照Flappy Bird制作第一个游戏①
- quick-cocos2d-x endToLua 退出会卡住
- quick-cocos2d-x游戏开发【13】——节点生命周期事件,帧事件等其他事件
- quick-cocos2d-x 如何设置游戏的屏幕方向
- 在Quick-cocos2d-x中使用LuaXML
- Cocos2d-x-Lua 开发一个简单的游戏(记数字步进白色块状)
- quick-cocos2d-x 学习系列之十lua调用JAVA
- Quick-Cocos2d-x lua 调用java 在谷歌手机5.0 以上出现的问题处理方式
- 【quick-cocos2d-x】Lua 语言基础