cocos2d-js 翻牌

pg.TurnCardLayer = cc.Layer.extend({
    okBtn: null
});

pg.TurnCardLayer.create = function () {
    var res = new pg.TurnCardLayer();
    return (res && res.init()) ? res : null;
};

pg.TurnCardLayer.prototype.ctor = function () {
    cc.Layer.prototype.ctor.call(this);

    // 初始化
    console.log("TurnCardLayer:init");
    // 屏幕大小
    var winSize = cc.winSize;

    // 设定纹理格式
    pg.setDefaultTextureFormat(cc.Texture2D.PIXEL_FORMAT_RGB565);

    // 创建背景
    var bgSprite = new cc.Sprite(res.StartBG_568_png);
    bgSprite.setPosition(winSize.width / 2, winSize.height / 2);
    this.addChild(bgSprite);

    // 重置纹理格式
    pg.setDefaultTextureFormat(cc.Texture2D.PIXEL_FORMAT_RGBA4444);

    var okBtnItem = cc.MenuItemImage.create(res.Start_png);
    okBtnItem.setPosition(winSize.width / 2, winSize.height / 2);

    var menu = new cc.Menu(okBtnItem);
    menu.setPosition(0, 0);
    this.addChild(menu, 10);

    // 输出纹理内存占用
    pg.dumpTextureInfo();
};

pg.TurnCardLayer.prototype.init = function () {

    return true;
};

pg.TurnCardLayer.prototype.onClear = function () {
    pg.Layer.prototype.onClear();
    console.log("TurnCardLayer:clear");
    pg.removeTextureForKey(res.StartBG_568_png);
};


pg.TurnCardScene = cc.Scene.extend({
    actionIsDone: false
});

pg.TurnCardScene.create = function (num) {
    var res = new pg.TurnCardScene();
    if (res && res.init(num)) {
        // var layer = pg.TurnCardLayer.create();
        // res.addChild(layer);
        return res;
    }
    return null;
};

pg.TurnCardScene.prototype.init = function (num) {
    //加一背景
    // var background = cc.LayerColor.create(cc.color(255, 180, 255, 255), cc.size.width, cc.size.height);
    // this.addChild(background);

    this.actionIsDone = true;// 标示动作是否完成

    this.createPoker();      // 创建扑克

    this.createListener();   // 注册监听

    return true;
};

// 创建扑克
pg.TurnCardScene.prototype.createPoker = function () {
    // 扑克牌正面
    // 创建背景

    // var pokerFront = new cc.Sprite(res.Card_Clubs_2_png);
    // pokerFront.setVisible(true);
    // pokerFront.setPosition(cc.p(cc.winSize.width / 2, cc.winSize.height / 2));
    // this.addChild(pokerFront, 1, 123);
    //
    // 扑克牌反面
    var pokerBack = new cc.Sprite(res.Card_BackGround_Normal_png);
    pokerBack.setPosition(cc.p(cc.winSize.width / 2, cc.winSize.height / 2));
    this.addChild(pokerBack, 1, 321);
};

// 翻牌动作
pg.TurnCardScene.prototype.startOrbitAction = function () {
    // // 扑克牌正面
    // var pokerFront = this.getChildByTag(123);
    // // 扑克牌反面
    var pokerBack = this.getChildByTag(321);

    var actionBy = cc.rotateBy(0.2, 0, -90);

    pokerBack.runAction(cc.sequence(actionBy,
        cc.callFunc( function() {
            pokerBack.setTexture(res.Card_Clubs_2_png);
            pokerBack.setFlippedX(true);
        }),
        actionBy
    ));
};

pg.TurnCardScene.prototype.actionIsDownFunc = function () {
    this.actionIsDone = true;
};

pg.TurnCardScene.prototype.createListener = function() {
    var listener = cc.EventListener.create({
        event: cc.EventListener.TOUCH_ALL_AT_ONCE,
        swallowTouches: true,
        onTouchesBegan: function (touches, event) {

            var target = event.getCurrentTarget();
            target.onTouchBegan(touches);

            return true;
        },
        onTouchesMoved: function (touches, event) {

            var target = event.getCurrentTarget();
            target.onTouchMoved(touches);
        },
        onTouchesEnded: function (touches, event) {

            var target = event.getCurrentTarget();
            target.onTouchEnded(touches);
        }
    });
    cc.eventManager.addListener(listener, this);
};

pg.TurnCardScene.prototype.onTouchBegan = function (touches) {
    var touch = touches[0];
    var convertedLocation = touch.getLocation();

    this.startOrbitAction();
    return true;
};

pg.TurnCardScene.prototype.onTouchMoved = function (touches) {
    var touch = touches[0];
    var convertedLocation = touch.getLocation();
};

pg.TurnCardScene.prototype.onTouchEnded = function (touches) {

};

pg.TurnCardScene.prototype.onEnter = function () {
    cc.Layer.prototype.onEnter.call(this);
};

pg.TurnCardScene.prototype.onExit = function (){
    cc.Layer.prototype.onExit.call(this);
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

VCHH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值