我有三个组件,Ground
,Block
和Player
。我希望玩家在与Ground
和Block
实体联系时停止摔倒。我尝试了this.gravity("Ground, Block");
和this.gravity("Ground", "Block");
,但前者禁用了两个组件的重力,而后者则为第一个参数启用了重力。
答案 0 :(得分:0)
使用添加到任何需要此功能的任何组件。因此,您可以调用this.gravity("Platform")
,然后将其用于任何可以保留的组件:
Crafty.c("Ground", {
required: "Platform",
init: function(){
// etc
},
});
您甚至不需要为平台"提供特定的定义,因为在这种情况下它只是用作标记组件。
这种方法的一个优点是,当我们创建玩家可以站立的新类型的东西时,我们不必在玩家对象中扩展列表 - 我们只需添加"平台&# 34;也是他们的组成部分。