框架状态组件,用于附加/分离组件

时间:2018-11-19 14:55:24

标签: three.js aframe

我正在尝试根据某些条件将组件附加/分离到实体。

例如,我希望能够跟踪两个条件-

  1. 玩家点击了播放按钮,然后
  2. 倒数时间还不为零

在将组件附加到实体之前。

我看了Kevin的以下内容-https://github.com/ngokevin/kframe/tree/master/components/state/

上有一个基于布尔值附加/分离组件的示例。这是他的文档中的摘录

  

有一个bind-toggle组件,它将附加和分离一个   组件完全基于布尔值。

<a-entity bind-toggle__raycastable="isRaycastable"></a-entity>

但是,在将raycastable组件附加到实体之前,尚不清楚该布尔值的设置位置。

我正在寻找一种解决方案,可以按如下所示编写实体

<a-entity bind-toggle__move="condition1 && condition2"></a-entity>

满足条件1(单击播放按钮)和条件2(倒数时间不为零)时,组件“移动”将附加到实体。我需要知道在哪里设置condition1和condition2的值。

如果可以的话,请提供一个有效的示例。

如果可以简化理解,我可以附加一个Codepen。

1 个答案:

答案 0 :(得分:1)

在各自的组件中有两个事件:buttonclickedcountdownzero发射到场景中。

然后处于状态:

buttonclicked: function (state) {
  state.buttonClicked = true;
},

countdownzero: function (state) {
  state.countdownFinished = true;
}

然后可以执行bind-toggle__move="buttonClicked && countdownFinished。让我知道是否要澄清!