as(unit) {
    return {
      isBound: this.isBound.bind(this),
      isEnemy: () => this.enemy !== unit.enemy,
      isUnderEffect: this.isUnderEffect.bind(this),
    };
  }
/**
   * Returns this unit as sensed by the given unit.
   *
   * @param {Unit} unit The unit sensing this unit.
   *
   * @returns {SensedUnit} The sensed unit.
   */
Returns this unit as sensed by the given unit.

@returns {SensedUnit} The sensed unit.
Returns this unit as sensed by the given unit . @returns { SensedUnit } The sensed unit .
as(unit) {
    return {
      isBound: this.isBound.bind(this),
      isEnemy: () => this.enemy !== unit.enemy,
      isUnderEffect: this.isUnderEffect.bind(this),
    };
  }
as ( unit ) { return { isBound : this . isBound . bind ( this ) , isEnemy : ( ) => this . enemy !== unit . enemy , isUnderEffect : this . isUnderEffect . bind ( this ) , } ; }
Returns this unit as sensed by the given unit.
Returns this unit as sensed by the given unit .