[cocos2d-html5] multiplexlayerでlayer切替
cc.multiplexlayerで切替してみました。
var LayerMenu = cc.Layer.extend({
isMouseDown:false,
helloImg:null,
helloLabel:null,
circle:null,
sprite:null,
init:function (layer_number) {
var selfPointer = this;
this._super();
var size = cc.Director.getInstance().getWinSize();
var item = cc.MenuItemFont.create("C["+layer_number+"]", function(){
var next_number = layer_number + 1;
if( next_number >= this._parent._layers.length ){
next_number = 0;
}
this._parent.switchTo(next_number);
},this );
item.color=cc.Red;
item.setAnchorPoint(cc.p(0.5, 0.5));
var menu = cc.Menu.create(item);
menu.setPosition(cc.PointZero());
this.addChild(menu, 1);
item.setPosition(cc.p(size.width - 50, 50));
}
});
自分の番号によってswitchToを替えます。
シーンにレイヤーを設定
var SoldierScene = cc.Scene.extend({
onEnter:function () {
this._super();
var layer_menu_0 = new LayerMenu();
layer_menu_0.init(0);
var layer_menu_1 = new LayerMenu();
layer_menu_1.init(1);
var layers = cc.LayerMultiplex.create(layer_menu_0,layer_menu_1);
this.addChild(layers);
//layers.switchTo(1);
}
});
LayerMultiplexにmenu0,1を入れて作ります。
上手く動きました。
簡単なwebゲームを作っていて複雑な事はしないので、何も使わずに処理出来るのですが
次にcocos2d-xでアプリを作ろうと考えているので、cocos2d-html5でバトルシーンを作ってみようと使ってみました。
基本構造は、c++と同じなのでjavascriptでも何でも問題無さそうなので良いかなと思い。
初心者ですがよろしくお願いします。
html5だけでは、探してもサンプルが少ないので、c++のコードを検索して、それを真似して、jsのコードを見ながら適当に作ってみています。