2015-05-11 31 views
1

我会尽我所能地尽力解释它。我要创建一个类的属性,如尺寸,颜色,动作和一些布尔序列点,所以我创建了一个Dot.h文件:Cocos2d-x 3.0 - 新类的DrawNode()

#include "cocos2d.h" 
USING_NS_CC; 
class Dot : public cocos2d::Layer{ 
public: 
    virtual bool init(); 
    CREATE_FUNC(Whites); 
private: 
    bool circumstanceA = 1; 
    bool circumstanceB = 0; 
}; 

和Dot.cpp文件:

#include "Dot.h" 
USING_NS_CC; 
bool Dot::init() 
{ 
    if (!Layer::init()) 
     return false; 
    Size visibleSize = Director::getInstance()->getVisibleSize(); 
    Vec2 origin = Director::getInstance()->getVisibleOrigin(); 

    auto scale = ScaleTo::create(0.5, (visibleSize.height/6) + (arc4random() % (visibleSize.height/15)) - visibleSize.height /30); 
    auto scale_ease = EaseBackOut::create(scale->clone()); 
    return true; 
} 

现在,这里是我卡住的地方。我是Cocos2d-x语法的新手,也是一名程序员的初学者,所以如果我的问题对你来说看起来很平淡,我很抱歉,但我在这里学习。

我需要的是能够处理这个类中的对象,因为它们是普通的精灵。

首先,我该如何说每个Dot对象都必须绘制一个点以“追加”到该对象的程序?就像一个精灵。只是在init将像

drawDot(Vec2((arc4random() % (int)(visibleSize.width - visibleSize.width/6)) + visibleSize.width/12, (arc4random() % (int)(visibleSize.width - visibleSize.width/3.5)) + visibleSize.width/7), 0, Color4F(255,255,255,255)); 

东西()Dot.cpp将是太简单了:?/

(是我用于创建点右边一个功能,我发现周围很多网络,但不知道哪一个是最好的/最新的......)

我应该在我的场景中做我的声明一个新的对象吗?像

Dot *myDot = Dot::create(); 
myDot->drawDot(Vec2((arc4random() % (int)(visibleSize.width - visibleSize.width/6)) + visibleSize.width/12, (arc4random() % (int)(visibleSize.width - visibleSize.width/3.5)) + visibleSize.width/7), 0, Color4F(255,255,255,255)); 

但这种方式也不会编...

我需要一个基地开始,请告诉我,如果我要以正确的方式,或者如果我不得不重新启动一种不同的方式,以获得我的点对象...

非常感谢你!

回答