Java でかなり単純なスポーツ ゲームを作成しましたが、今は Cocos2d Javascript で同じことをしようと奮闘しています。
私が Java で行ったことで、ここでやりたいことは、ボタンのクリックでスプライトを作成し、そのスプライトをスプライトの配列に追加できるようにすることです。トリッキーな部分は、位置を変更したり、ボールを持っているかどうかを確認したり、ボールを与えたりするために、それらのスプライトに特定のプロパティと関数を追加してアクセスできるようにしたいことです。私にとって論理的なのはスプライトクラスですが、これがサブクラス化するのに適切なクラスであるかどうか、または効果的にサブクラス化する方法がわかりません。
例えば。
var player = Player.create(somepicturefile);
this._players.push(player);
this._players[1].hasBall = true;
私がJavaでできたことは、これらのクラスを使用してチームのフォームファイルを保存およびロードし、移動していないプレーヤーのみを移動したり、ボールを渡したりすることでしたが、うまくいけば、スプライトを画面に表示するだけでボーナスになります: )
私がこれまでに持っていたものの切り詰められたバージョン...
var MakePlan = cc.LayerColor.extend({
_players:[],
_playernumber: 0,
ctor:function() {
// Rest of file...
this._super();
cc.associateWithNative( this, cc.LayerColor );
},
onEnter:function () {
this._super();
this.addPlayer();
},
addPlayer:function() {
var player = Player.create(s_player);
this.addChild(player);
this._players.push(player);
this._playernumber++;
}
});
MakePlan.create = function () {
var sg = new MakePlan();
if (sg && sg.init(cc.c4b(255, 255, 255, 255))) {
return sg;
}
return null;
};
MakePlan.scene = function () {
var scene = cc.Scene.create();
var layer1 = MakePlan.create();
scene.addChild(layer1,0);
return scene;
};
と
var Player = cc.Sprite.extend ({
_hasMoved: false,
_hasBall: false,
ctor:function() {
// Rest of file...
this._super();
cc.associateWithNative( this, cc.Sprite );
}
});
まともなアイデアのように思えますが、うまくいかないようです...