BaseActor

withinメソッド

他のオブジェクトとの距離が一定以内かを判定します.

書式1

within(obj,d)

このオブジェクトとobjとの距離がd以下であればtrue,そうでなければfalseを返します.

例 - 書式1

// $playerというオブジェクトとの距離が10以下なら,$playerを消す
if (within($player,10)) {
   $player.die();
}

書式2

within(Class,d)

このオブジェクトがClassで指定されるクラスのオブジェクトのうちどれかとの距離がd以下であれば,そのうちどれか1つのオブジェクトを返します.そうでなければundefinedを返します

例 - 書式2

    //Enemyオブジェクトのうちどれかと距離が10以下か?
    e=within(Enemy,10);
    if(e){//eがundefined以外だったら
        die();//自身を消す
    }
    //Itemオブジェクトのうちどれかと距離が10以下か?
    it=within(Item,10);
    if(it){//itがundefined以外だったら
        it.die();//ぶつかったItemオブジェクトを消す
    }

参考

.