關於Cocos2d x中增加暫停按鈕的步驟

2021-09-08 04:20:04 字數 1620 閱讀 9279

1.在gamescene.cpp的init方法中先定義乙個裡面放著可變換並在變換的時候會響應事件的menuitem的menu,這個menu裡面的可變換menuitem又由兩個小menuitem組成,每個小menuitem都有兩種狀態,一種是正常的狀態,還有一種是按下去的狀態。

//加入暫停按鈕

auto pause_sp1 = sprite::create("jewel1.png");

auto pause_sp2 = sprite::create("jewel2.png");

auto resume_sp1 = sprite::create("jewel4.png");

auto resume_sp2 = sprite::create("jewel6.png");

auto pauseitem = menuitemsprite::create(pause_sp1, pause_sp2);

auto resumeitem = menuitemsprite::create(resume_sp1, resume_sp2);

auto pausebutton = menuitemtoggle::createwithtarget(this, menu_selector(gamescene::pausebuttoncallback), pauseitem, resumeitem, nullptr);

pausebutton->setanchorpoint(vec2(0, 0));

//注意,這裡的position如果沒有設定好的話,是不會顯示暫停按鈕的,而且這裡的position的設定比較特殊,設定的位置是以螢幕左下四分之一和另外看不見的四分之三為乙個設定區域,等到新增到menu中去的時候,會自動適應螢幕,變成原來左下四分之一移動到了螢幕右上四分之一,整體往螢幕左上移動了四分之一螢幕大小的距離,所以有的時候看不見按鈕是因為沒有設定好position的關係

pausebutton->setposition(vec2(size.width / 2 - pausebutton->getcontentsize().width, size.height / 2 - pausebutton->getcontentsize().height)); //位於右上角

auto menu = menu::create(pausebutton, nullptr);

addchild(menu, 10, pause_menu);

2.寫可變換menuitem的響應事件

void gamescene::pausebuttoncallback(ref* psender)

//unschedule(schedule_selector(gamescene::refreshanenemy));

unscheduleupdate();

((scene*)this->getparent())->getphysicsworld()->setautostep(false);

}else

//schedule(schedule_selector(gamescene::refreshanenemy), refresh_delay[m_level]);

scheduleupdate();

((scene*)this->getparent())->getphysicsworld()->setautostep(true);}}

關於cocos2dx中tableView的一些理解

先看 h檔案中 ifndef helloworld scene h define helloworld scene h include cocos2d.h include cocos ext.h using ns cc using ns cc ext class helloworld public ...

關於Cocos2d x中根據分數增加遊戲難度的方法

1.gamescene.h中宣告一些分數邊界值 1 level提公升所需的分數 2enum levelup score 3 2.在移動的baby物件類的.cpp檔案的update方法中寫,每一幀都會執行update方法 1 讓生成的baby例項物件不斷地往左邊移動,超出螢幕就消失,好像有了這個就不用...

cocos2dx 專案中增加libcurl庫

1 win32中visual studio下libcurl庫配置。cocos2d x 3.x引擎其實已經帶有為win32下訪問libcurl庫,cocos2d x 3.x中libcurl庫檔案所在位置是d cocos2d x 3.x external curl prebuilt win32 目錄中,...