Cocos2d-x 3.10 学习记录之使用Cocostuio并加载Csb文件

时间:2022-05-12 00:08:59

今天主要自学了一下如何使用cocostudio以及加载csb文件、获取csb中的节点

注意Text,Button这类控件属于ui里的 所以要引入ui/CocosGUI.h头文件

并且如果不想每次都打cocos2d::ui::Xxxxx的话 记得要加using namespace ui;命名空间

.h代码如下:

#include "cocos2d.h"
#include "ui/CocosGUI.h"

USING_NS_CC;

class LoadCsb : public Layer{
public:
virtual bool init();
static Scene* createScene();
CREATE_FUNC(LoadCsb);
public:
virtual void update(float dt);
void resetLoadingBar();
private:
Sprite* _skill_1;
Sprite* _skill_2;
Sprite* _skill_3;
Sprite* _skill_4;
int count;
cocos2d::ui::Button* _reset_loading_bar;
cocos2d::ui::Text* _txt_current_hp = nullptr;
cocos2d::ui::LoadingBar* _hp;
};


.cpp代码如下:

bool LoadCsb::init(){
if (!Layer::init()){
return false;
}

Node* node = CSLoader::createNode("ccs/UseCsd.csb");
this->addChild(node);
_skill_1 = dynamic_cast<Sprite*>(node->getChildByName("skill_1"));
_reset_loading_bar = dynamic_cast<Button*>(node->getChildByName("reset_loading_bar"));
_txt_current_hp = dynamic_cast<Text*>(node->getChildByName("txt_current_hp"));
_hp = dynamic_cast<LoadingBar*>(node->getChildByName("loading_bar"));
return true;
}