2

我有一个正在开发的 html5 游戏。它使用 Crafty 游戏引擎,并为使用主干、jquery 和需要 js 的游戏引擎使用样板。我为游戏编写了一个新的主干接口,但它不响应任何事件处理程序。有什么我做错了吗。这是我的代码:

Info = BaseEntity.extend({
defaults: {
        'text_begin' : "<span id='info_begin' style='text-shadow:2px 2px #000;cursor:pointer; '>bEGIN gAME</span>",
    },
    initialize: function(){
     var model = this;


     var entity = Crafty.e("2D, HTML, DOM, Text, Mouse")

     entity
            .attr({x: 20, y: 50, z: 1, w: 200})
            .text(model.get('text_begin'))
            .textColor('#FF0000')
            .textFont({'size' : '30px', 'family': 'Arial', 'weight': 'bold'})
            .setName('Begin Info')
.bind("Click", function(){console.log('hi tere')})




     model.set({'entity' : entity });
    }
});
4

1 回答 1

2

是的,您误解了如何为该游戏引擎的样板设置主干。接口基本上是“只读的”。阅读工艺样板上的 wiki。如果你想创建新的交互式狡猾实体,你需要创建新实体,而不是接口。

因此,例如,您将转到场景文件并声明一个新实体:

sc['info'] = new Info();

您还需要确保 AMD 正在调用您的新实体文件。然后基本上你拥有的那个文件可以移动到实体文件夹,你应该得到你的交互性。

于 2013-02-18T16:12:18.870 回答