【cocos2dx】CCMenuクラスの一歩進んだ使い方2

【cocos2dx】CCMenuクラスの一歩進んだ使い方2
   




cocos2dxでは、CCMenuクラスを利用すれば簡単にボタンが作成できます。
私が今作っているアプリでも使っています。
2回目なのですが、このCCMenuクラスを少し深く勉強してみましょう。
cocos2dx2.2を利用しています。

前回:【cocos2dx】CCMenuクラスの一歩進んだ使い方。 | albatrus.com

メニューのアニメーション

CCSpriteクラスと同じように、CCMenuItemSpriteクラスでのCCActionが利用できます。
これを利用すれば、動いているメニューを実装することができます。


なお、CCMenuItemSpriteクラスに指定するCCSprite型の変数もCCActionが利用できるが、アンカーポイントに違いがあるので動きに注意をしてください。


透明なメニュー

メニューを常に表示させるのではなく、「表示・非表示」をどのように切り替えてますか。
この場合は、setVisible(bool型)を利用すれば簡単に実装ができます。


このsetVisible(bool型)に関しては,CCMenuItemクラス個別に指定もできます。
すべてのメニューを非表示にする時には、CCMenuクラスに、個別に非表示にする際にはCCMenuItemクラスに実装をしましょう。

setOpacity()

表示・非表示」では、setOpacity()も利用することができます。
こちらに関しては、半透明にもできたりします。

ただ、一番の特徴は完全に透明にしてもメニューとして利用できることです。

これを利用すれば、「何もない所を触って何かアクションを起こしたりする」ことが簡単にできます。



メニューの画像を変更する

メニューで利用しているCCSpriteクラスの画像を途中で変更します。
これは、通常のCCSpriteで利用している方法が使えますが、どのSpriteを変えるかを取り出すのがとても苦労します。

下準備として、CCMenu・CCMenuItemSpriteクラスにタグを割り振っておきます。



これを元にしてCCSpriteを取り出し、変更します。



最後に

実装は面倒ですが、CCMenuを使えば、かなり自由にできるようになりますので、ぜひ参考にしてみてください。

上記内容と関係ないのですが、現在ブログが非常に不安定で、一部プラグインが使えずに画面が見難くなっています。
大変申し訳ありません。


Cocos2d‐x開発のレシピ―iOS/Android対応Cocos2d‐x開発のレシピ―iOS/Android対応
松浦 晃洋,齊藤 建二,古木 映治

秀和システム
売り上げランキング : 41015

Amazonで詳しく見る


Related Posts Plugin for WordPress, Blogger...