我用 Java 编写了一个相当简单的体育游戏,现在我正在努力在 Cocos2d Javascript 中做同样的事情,我真的很陌生。
我在 Java 中所做的并且想要在这里做的是能够在单击按钮时创建一个 Sprite,并将该 sprite 添加到一个 sprite 数组中。棘手的部分是我希望能够在这些精灵中添加和访问特定的属性和功能,以改变它们的位置,检查它们是否有球,给它们一个球等。我想我有子类的东西,而且最对我来说合乎逻辑的是精灵类,但我不确定这是否是子类的正确类或如何有效地这样做。
例如。
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 );
}
});
这似乎是一个不错的想法,但它似乎不起作用......