• cocos2dx一个场景添加多个层


    首先创建两个layer,以下是头文件

    #pragma once
    #include "cocos2d.h"
    USING_NS_CC;
    class BackgroundLayer : public cocos2d::CCLayer
    {
    public:
    virtual bool init();
    CREATE_FUNC(BackgroundLayer);
    };

    #pragma once
    #include "cocos2d.h"
    USING_NS_CC;
    class FishLayer : public cocos2d::CCLayer
    {
    public:
    virtual bool init();
    CREATE_FUNC(FishLayer);
    };

     

    现在去源文件实现一下:

    #include "BackgroundLayer.h"
    bool BackgroundLayer::init()
    {
    CCSprite* bg = CCSprite::create("bg.png");
    bg->setPosition(ccp(visiblesize.width/2, visiblesize.height/2));
    addChild(bg);
    return true;
    }

    #include "FishLayer.h"
    bool FishLayer::init()
    {
    CCSprite* bg = CCSprite::create("bgfish.png");
    bg->setPosition(ccp(visiblesize.width/2, visiblesize.height/2));
    addChild(bg);
    return true;
    }

    ok,现在已经有了两个层了,建一个scene并添加他们:

    #pragma once
    #include "cocos2d.h"
    #include "FishLayer.h"
    #include "BackgroundLayer.h"
    class GameScene : public cocos2d::CCScene
    {
    public:
    virtual bool init();
    static CCScene* playGame();
    };


    去源文件添加啦:

    #include "GameScene.h"
    CCScene* GameScene::playGame()
    {
    GameScene* scene = new GameScene();
    scene->init();
    return scene;
    }
    bool GameScene::init()
    {
    BackgroundLayer* pLayer_bg = BackgroundLayer::create();
    FishLayer* pLayer_fish = FishLayer::create();
    addChild(pLayer_bg);
    addChild(pLayer_fish);
    return true;
    }

    ok,现在场景里面已经有两个层了,可以分别在这两个层里添加东西了。

  • 相关阅读:
    更改SQLServer实例默认字符集
    使用DMV排查数据库系统异常
    OD使用符号文件进行源码级调试问题
    申请博客园第一天
    各种mac软件地址
    第6条:理解“属性”
    提高代码质量的几个方法!52个,先罗列几个自己看
    Item2的使用
    MAC命令大全
    PV UV IP
  • 原文地址:https://www.cnblogs.com/ADaii/p/3779985.html
Copyright © 2020-2023  润新知