• TOP
  • >
  • その他
  • >
  • メニューを作成する

メニューを作成する

今回は、ゲーム上で利用のできるメニューを作成する方法を紹介します。
cocos2dxでは、メニューを作成する専用のクラスがあり、これを利用すれば、簡単に作成ができます。

画像からメニューを作成する

まずは、画像を利用したメニューの作成方法を紹介します。
画像は、「画面に表示する画像」「メニューを押した時に出てくる画像」の2つを用意します。

【ver3.x】
Ver3.xでは、MenuItemImageクラスを利用します。
//ボタンを押した時にメソッドを呼び出す
auto mItem1 = MenuItemImage::create("menu-image1.png","menu-image1-hover.png",CC_CALLBACK_0(HogeLayer::menuAction, this));

//ボタンを押した時にラムダ式を呼び出す
auto mItem2 = MenuItemImage::create("menu-image1.png","menu-image1-hover.png",[](Ref*sender){
    
       //ここが呼び出されます。
    });

mItem1->setPosition(Point(winSize.width/2-200,winSize.height/2));
mItem2->setPosition(Point(winSize.width/2+200,winSize.height/2));

//メニューを作成
auto _menu2 = Menu::create(mItem1,mItem2,NULL);
_menu2->setPosition(Point::ZERO);
this->addChild(_menu2);



【ver2.x】
CCMenuItemImageクラスを利用して、メニューを作成します。
  • 引数1:画面を表示する画像
  • 引数2:メニューを押した時の画像
  • 引数3:this
  • 引数4:メニューを押した際に呼び出されるメソッド、menu_selectorのカッコの中にメソッドを指定します。

CCMenuItemImage *image1=CCMenuItemImage::create("menu-image1.png", "menu-image1-hover.png", this, menu_selector(HogeLayer::menuAction));
CCMenuItemImage *image2=CCMenuItemImage::create("menu-image2.png", "menu-image2-hover.png", this, menu_selector(HogeLayer::menuAction2));

//利用するメニューアイテムを指定します。最後にNULLを入れてください。
CCMenu*menu = CCMenu::create(image1,image2,NULL);
//メニューを縦向きに並べます。
menu->alignItemsVertically();
this->addChild(menu);
Cocos2d xmenu



テキストからメニューを作成する

画像だけではなく、テキストでもメニューを作成できます。
//Ver3.x
auto labelBtnLabel = LabelTTF::create("ラベルボタン", "Arial", 48);
auto labelItem1 = MenuItemLabel::create(labelBtnLabel, CC_CALLBACK_0(TestLayer::menuAction, this));

//後は同じ
auto menu = Menu::create(labelItem1,NULL);



//Ver2.x
 CCMenuItemLabel *labelItem1 = CCMenuItemFont::create("メニュー(テキスト)", this, menu_selector(TestLayer::menuaction));
 CCMenuItemLabel *labelItem2 = CCMenuItemFont::create("メニュー2(テキスト)", this, menu_selector(TestLayer::menuaction2));

//後は同じ
CCMenu*menu = CCMenu::create(labelItem1,labelItem2,NULL);

Cocos2d xmenu2

            

経営育成ゲーム「わたしの動物園」をリリースしました!

cocos2dxを使って作成したアプリを作成しました。
無料で遊べますので、ぜひゲーム作りの参考にしてみて下さい!

【Sponsored Link】

更新履歴