1
私はcocos2dxでゲームを作っていますが、カウントダウンタイマーの作成方法がわからないので、時間がなくなる前にレベルを完了するのに一定の時間があります。Cocos2d-xでカウントダウンタイマーを作成する最も良い方法は何ですか?
私はcocos2dxでゲームを作っていますが、カウントダウンタイマーの作成方法がわからないので、時間がなくなる前にレベルを完了するのに一定の時間があります。Cocos2d-xでカウントダウンタイマーを作成する最も良い方法は何ですか?
schedule
メソッドを使用すると、一定時間後に関数を呼び出して、それに応じてタイマーのラベルを更新できます。
これをチェックアウト:
をプライベートint
メンバーを作成は、例えばcountdown
と呼ばれ、あなたからカウントダウンしたい秒数でそれを初期化します。また、あなたのシーンのinit
方法では、タイマーのLabel
(のはlbl
それを呼びましょう)
を宣言アップデータをスケジュールし、この
this->lbl = Label::createWithTTF(std::to_string(this->countdown), "fonts/Marker Felt.ttf", charSize/15); // make sure you #include <string>
lbl->setPosition(Vec2(0,0)); // set the position to wherever you like
this->schedule(schedule_selector(MySceneClass::updateTimer), 1.0f); // calls updateTimer once every second
宣言のようなラベルを初期化し、このような何かを見てupdateTimer
を実装:
void MySceneClass::updateTimer(float dt)
{
if (!countdown)
return; // when countdown reaches 0, stop updating to avoid negative values
lbl->setString(std::to_string(--countdown));
}