您好,登錄后才能下訂單哦!
設計玩家的血條,重載CCLayer的draw(),主要使用幾個簡單的OpenGL ES函數進行繪制
如下:
類的實現如下
class Level: public CCLayer
{
private:
int life;//生命值
public:
//獲得生命值
int getlife();
//獲得金幣數
//設置生命值
void setlife(int temp);
//設置金幣數
Level(void);
~Level(void);
//繪制血條
virtual void Level::draw();
};
主要函數的實現
Level::Level(void)
{
//初始化變量
life = 100;
}
Level::~Level(void)
{
}
void Level::draw()
{
CCLayer::draw();
CCSize s = CCDirector::sharedDirector()->getWinSize();
glColor4f(0.0,0.0,0.0,1.0);
glLineWidth(10);
ccDrawLine( CCPointMake(5,s.height - 10), CCPointMake(115,s.height - 10) );
glColor4f(1.0,0.0,0.0,1.0);
glLineWidth(5);
ccDrawLine( CCPointMake(10,s.height - 11), CCPointMake(10 + life,s.height - 11) );
}
int Level::getlife()
{
return life;
}
void Level::setlife(int temp)
{
life = temp;
}
加入init()中
Level* lvl=new Level();
addChild(lvl);
下一篇將講解敵人的初始化,以及敵人的血條的處理。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。