【cocos2dx 3.3 lua】04 纸牌翻转效果--类似QQ斗地主癞子效果
2016-05-30 22:31
633 查看
周末在家玩QQ斗地主,发现里面的癞子翻牌效果挺不错,于是想着自己做一个玩玩,于是有了如下代码:
-- 卡牌旋转动画
-- 需要2张图,一张正面一张背面,否则会看到一张正面旋转了360度
local cardFace = self.rootLayer:getChildByName('CARD')
local cardBack = self.rootLayer:getChildByName('CARD_BACK')
-- 单面旋转
--cardFace:runAction( cc.OrbitCamera:create(4, 1, 0, 0, 360*4, 0, 0) )
-- 正反面旋转
local aniTime = 0.25
---[[
self.rootLayer:runAction( cc.Repeat:create( cc.Sequence:create(
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(true)
cardBack:setVisible(false)
cardFace:runAction( cc.OrbitCamera:create(aniTime/2, 1, 0, 0, 80, 0, 0) )
end),
cc.DelayTime:create(aniTime/2),
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(false)
cardBack:setVisible(true)
cardBack:runAction( cc.OrbitCamera:create(aniTime, 1, 0, 80, 180, 0, 0) )
end),
cc.DelayTime:create(aniTime),
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(true)
cardBack:setVisible(false)
cardFace:runAction( cc.OrbitCamera:create(aniTime/2, 1, 0, 270, 90, 0, 0) )
end),
cc.DelayTime:create(aniTime/2)
), 5) )
--]]主要是利用了cc.OrbitCamera实现翻转,参数分别为:时间,半径,半径变化,起始z角度,翻转z角度,起始x角度,翻转x角度
解释如下:
2张牌,正反面
正面牌旋转90度,隐藏,出现反面牌,旋转180度,隐藏,出现正面牌,旋转90度,回到起始位置,重复动作
这里特别注意:
第一个角度不是90而是80,因为测试发现,90度时,旋转角会超过90度,影响效果,于是取了80.
效果:
-- 卡牌旋转动画
-- 需要2张图,一张正面一张背面,否则会看到一张正面旋转了360度
local cardFace = self.rootLayer:getChildByName('CARD')
local cardBack = self.rootLayer:getChildByName('CARD_BACK')
-- 单面旋转
--cardFace:runAction( cc.OrbitCamera:create(4, 1, 0, 0, 360*4, 0, 0) )
-- 正反面旋转
local aniTime = 0.25
---[[
self.rootLayer:runAction( cc.Repeat:create( cc.Sequence:create(
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(true)
cardBack:setVisible(false)
cardFace:runAction( cc.OrbitCamera:create(aniTime/2, 1, 0, 0, 80, 0, 0) )
end),
cc.DelayTime:create(aniTime/2),
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(false)
cardBack:setVisible(true)
cardBack:runAction( cc.OrbitCamera:create(aniTime, 1, 0, 80, 180, 0, 0) )
end),
cc.DelayTime:create(aniTime),
cc.CallFunc:create(
function ( sender )
cardFace:setVisible(true)
cardBack:setVisible(false)
cardFace:runAction( cc.OrbitCamera:create(aniTime/2, 1, 0, 270, 90, 0, 0) )
end),
cc.DelayTime:create(aniTime/2)
), 5) )
--]]主要是利用了cc.OrbitCamera实现翻转,参数分别为:时间,半径,半径变化,起始z角度,翻转z角度,起始x角度,翻转x角度
解释如下:
2张牌,正反面
正面牌旋转90度,隐藏,出现反面牌,旋转180度,隐藏,出现正面牌,旋转90度,回到起始位置,重复动作
这里特别注意:
第一个角度不是90而是80,因为测试发现,90度时,旋转角会超过90度,影响效果,于是取了80.
效果:
相关文章推荐
- cocos2d-x android 直接加载下载到sd的zip里的资源文件(二)
- cocos2d-x 自定义N个碰撞矩形框。
- cocos2dx-Action-圆周运动
- Cocos2d 内存优化
- cocos-js,Widget的addTouchEventListener改善
- cocos2dx - Chipmunk 物理引擎 -个人笔记
- Cocos2d 屏幕适配方案
- iOS配置cocos2d-x
- Cocos2d-js 对象缓冲池cc.pool
- Cocos2d-JS schedule用法
- Cocos2d3.x之C3130: 编译器错误: 未能将插入的代码块写入PDB
- Cocos2d-3.x Android环境搭建
- cocos2dx 3.x粒子系统
- Cocos2d-x中使用音频CocosDenshion引擎介绍与音频文件的预处理
- Cocos2dx3.10在Windows平台搭建Android命令行编译apk打包
- cocosPods 常见使用步骤
- Cocos2dx 世界、屏幕、openGL、本地等坐标系
- VS2012 Cocos2D-X 环境搭建
- Cocos2d-x教程第(8)讲-遮罩层实现捕鱼达人滚动数字表盘
- 【cocos2d-x 手游研发----博彩大转盘】