感谢点评与关注,欢迎转载与分享。
勤奋努力,持之以恒!
#include "HelloWorldScene.h"
#include "SimpleAudioEngine.h"
using namespace cocos2d;
using namespace CocosDenshion;
CCScene* HelloWorld::scene()
{
CCScene *scene = CCScene::create();
HelloWorld *layer = HelloWorld::create();
scene->addChild(layer);
return scene;
}
bool HelloWorld::init()
{
if ( !CCLayer::init() )
{
return false;
}
size = CCDirector::sharedDirector()->getWinSize();
//加一背景
CCLayerColor* background = CCLayerColor::create(ccc4(255, 180, 255, 255), size.width, size.height);
this->addChild(background);
actionIsDone = true;//标示动作是否完成
createPoker(); //创建扑克
return true;
}
//创建扑克
void HelloWorld::createPoker()
{
//扑克牌正面
CCSprite* pokerFront = CCSprite::create("poker_front.png");
pokerFront->setVisible(false);
pokerFront->setPosition(ccp(size.width/2, size.height/2));
this->addChild(pokerFront,1,123);
//扑克牌反面
CCSprite* pokerBack = CCSprite::create("poker_back.png");
pokerBack->setPosition(pokerFront->getPosition());
this->addChild(pokerBack,1,321);
}
//翻牌动作
void HelloWorld::startOrbitAction()
{
//扑克牌正面
CCSprite* pokerFront = (CCSprite*)this->getChildByTag(123);
//扑克牌反面
CCSprite* pokerBack = (CCSprite*)this->getChildByTag(321);
float orbitTime = 1;
if (pokerFront->isVisible() == false && actionIsDone == true) {
actionIsDone = false;
//第一个参数是旋转的时间,第二个参数是起始半径,第三个参数半径差,第四个参数是起始Z角,第五个参数是旋转Z角差,第六个参数是起始X角,最后一个参数旋转X角差,
CCOrbitCamera* orbitFront = CCOrbitCamera::create(orbitTime, 1, 0, 270, 90, 0, 0);
CCSequence* sequenceFront = CCSequence::createWithTwoActions(CCShow::create(), orbitFront);
CCTargetedAction* targetFront = CCTargetedAction::create(pokerFront, sequenceFront);
CCOrbitCamera* orbitBack = CCOrbitCamera::create(orbitTime, 1, 0, 0, 90, 0, 0);
pokerBack->runAction(CCSequence::create(orbitBack, CCHide::create(), targetFront, CCCallFunc::create(this, callfunc_selector(HelloWorld::actionIsDownFunc)),NULL));
}else if(pokerFront->isVisible() == true && actionIsDone == true){
actionIsDone = false;
CCOrbitCamera* orbitFront = CCOrbitCamera::create(orbitTime, 1, 0, 270, 90, 0, 0);
CCSequence* sequenceFront = CCSequence::createWithTwoActions(CCShow::create(), orbitFront);
CCTargetedAction* targetFront = CCTargetedAction::create(pokerBack, sequenceFront);
CCOrbitCamera* orbitBack = CCOrbitCamera::create(orbitTime, 1, 0, 0, 90, 0, 0);
pokerFront->runAction(CCSequence::create(orbitBack, CCHide::create(), targetFront, CCCallFunc::create(this, callfunc_selector(HelloWorld::actionIsDownFunc)),NULL));
}
}
void HelloWorld::actionIsDownFunc()
{
actionIsDone = true;
}
bool HelloWorld::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
{
//翻牌动作
startOrbitAction();
return true;
}
void HelloWorld::ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent){}
void HelloWorld::ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent){}
void HelloWorld::onEnter()
{
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, false);
CCLayer::onEnter();
}
void HelloWorld::onExit()
{
CCDirector::sharedDirector()->getTouchDispatcher()->removeDelegate(this);
CCLayer::onExit();
}
HelloWorld::~HelloWorld(){}
两张扑克牌资源:
分享到:
相关推荐
cocos2d-x3.10 翻页、翻牌效果的实现 http://blog.csdn.net/glunoy
cocoscreator 翻牌效果cocoscreator 翻牌效果cocoscreator 翻牌效果
完美搓牌效果 流畅翻拍动画 容易集成 一个文档一张图片即可
cocos2dlua 3D扑克翻牌特效 OPENGL的 效果很好 cocos2dlua 3D扑克翻牌特效 OPENGL的 效果很好
CocosCreator扑克翻牌效果,利用mask组件特性. http://blog.csdn.net/pppxxx1983/article/details/78411157
shader编写,在lua层实现卡牌搓牌带3D弧边搓牌、翻牌效果。
Cocos2d-x实现战争迷雾效果 项目源码下载
cocos creator + TypeScript 实现翻牌效果,本教程演示版本creator V2.07
Cocos2d-x实现的A*寻路.主要参考和修改了这篇文章:http://www.ityran.com/archives/1994 实现的。开始时是根据自己的理解用中文注释,后来看来原代码,就直接使用和修改原代码,注释就用原文里的英文了。 原作者...
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
使用cocos2d-x实现绳子的真实效果
感觉4个人开发游戏真的很累,游戏为了脱颖出更加真实的效果还使用了物理引擎,在老大的同意的情况下,我共享cocos2d自己写的一些大家比较常用的,因为cocos2d有些控件不怎么好用或者没有,反正我觉得是这样的。...
cocos2d-lua 实现富文本
感觉4个人开发游戏真的很累,游戏为了脱颖出更加真实的效果还使用了物理引擎,在老大的同意的情况下,我共享cocos2d自己写的一些大家比较常用的,因为cocos2d有些控件不怎么好用或者没有,反正我觉得是这样的。...
cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门 cocos2d入门
该资源主要用于cocos2d-x中Value与json字符串的相互转换,提供从json文件读取为cocos2d::Value,cocos2d::Value写入到文件,cocos2d::Value转换为json字符串,json字符串转换为cocos2d::Value。json字符串转换成cocos...
一个都不能死游戏cocos2d-x实现
使用cocos2d-x开发的有图形界面的单摆运动状态展示。 版本3.8. 实现了单摆周期求解、瞬时角速度求解,并且都展示在图形界面中。 可以改变摆线长度和摆角大小。 包含了代码和资源。
在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...
cocos2d-x 3.x 实现类似水果忍者的刀光拖尾效果