我有三个组件:Ground、Block和Player。我希望玩家在接触Ground和Block实体时不要跌倒。我尝试过this.gravity("Ground, Block");和this.gravity("Ground", "Block");,但前者禁用了两个组件的重力,后者启用了第一个参数的重力。
发布于 2018-05-04 07:30:54
使用添加到任何需要此功能的组件。因此,您可以调用this.gravity("Platform"),然后为任何可以依赖的组件请求它:
Crafty.c("Ground", {
required: "Platform",
init: function(){
// etc
},
});您甚至不需要为“平台”提供特定的定义,因为在这种情况下,它只是用作标记组件。
这种方法的一个优点是,当我们创建玩家可以站立的新类型的东西时,我们不必扩展player对象中的列表--我们只需向它们添加“平台”组件。
https://stackoverflow.com/questions/50156387
复制相似问题