CC_SYNTHESIZE(varType, varName, funName)
这是一个自动生成been方法的宏,该方法可以为一个私有变量(假设是int a)设置get,set方法---->>>CC_SYNTHESIZE(int,a,A);
第三个参数一般是私有变量名称的大写,比如a变量的get方法就是getA,去掉get就剩下A了,所以第三个参数就是A。
value类型的变量通过调用asString().c_str()方法就可以转换为String类型。
Value跟var一样。
Plist文件的使用
- CCSpriteFrameCache* cache = CCSpriteFrameCache::getInstance();
- cache->addSpriteFramesWithFile("test.plist", "test.png");
- /* 创建Sprite */
- CCSprite* s1 = CCSprite::createWithSpriteFrame(cache->getSpriteFrameByName("g_good.png"));
- s1->setPosition(ccp(100, 100));
- addChild(s1);
- CCSprite* s2 = CCSprite::createWithSpriteFrame(cache->spriteFrameByName("musicBtn.png"));
- s2->setPosition(ccp(300, 300));
- addChild(s2);
--------------------------------
setFrameZoomFactor(float f)将模拟器的分辨率设置为实际分辨率的百分之x。
-----------------
cocos2dx-3.4rc1 加载cocostudio并获取控件
#include"cocostudio/CocoStudio.h"
#include "ui/CocosGUI.h"
using namespace cocos2d::ui;
using namespace cocostudio;
Node* test = CSLoader::createNode("MainScene.csb");//MainScene.csb就是cocostudio生成的资源文件
Button* bt = (Button*)test->getChildByName("buttonL");
------------------------------------
Director::getInstance()->getWinSize();//此方法得到的是setFrameSize里面的参数
Director::getInstance()->getVisibleSize();//此方法得到的是实际上屏幕所显示的大小,而不一定是自己一开始在setFrameSize里面设置的大小.
-----------------------------------
targetAction目标动作
如果A想在调用完Sequence之后让B做些什么动作,就可以通过这个接口将B与B要做的动作封装成一个参数放进A的sequence函数中。
auto jump = JumpBy::create(
1
.0f,Point(
30
,
0
),
100
,
3
);
//先写一个跳跃的动作
auto targetAct = TargetedAction::create(girl,jump);
//写一个目标动作,将动作执行人girl和要执行的动作jump放入其中
//将girl的目标动作放入boy的sequence里去
boy->runAction(Sequence::create(RotateBy::create(
1
.0f,
360
),ScaleTo::create(
1
.0f,
1
.2f),targetAct,NULL));
----------------------------------
关于静态常量的声明与赋值
先在.h文件中声明
然后在.cpp的函数外面类里面赋值,不然会出错,规则为 Vector<Gun*> *MainScene::guns = new Vector<Gun*>();