resolveReferences
是 Yuka.js 中 InterposeBehavior
类中的一个方法。该方法用于解析实体的引用并添加到对应的数组中。
该方法不需要任何参数。
该方法没有返回值。
import { InterposeBehavior } from 'yuka';
class MyInterposeBehavior extends InterposeBehavior {
update( entity, delta ) {
// ...
}
resolveReferences() {
const entities = this.world.entities;
// 遍历所有需要链接的实体
this.interposes.forEach( interpose => {
const hunter = entities.find( e => e.name === interpose.hunterName );
const prey = entities.find( e => e.name === interpose.preyName );
if ( hunter && prey ) {
// 给猎人和猎物分别添加引用
interpose.hunter = hunter;
interpose.prey = prey;
}
} );
}
}
resolveReferences
方法会根据现有的实体名称来查找到对应的实体,并将其添加到对应的数组中。如果找不到一个实体,对应的数组就会保持为空。
该方法主要作为 update
方法的前置条件,正确的引用关系是实现行为逻辑的关键,如果引用关系出错,将会导致 update
方法的错误结果。