文字列の配列で部分文字列を検索しようとしています。私は次のコードを使用しています(Unity3で):
var obstacles = ["Border", "Boundary", "BoundaryFlame"];
var frontAvailable = true;
var leftAvailable = true;
var rightAvailable = true;
var hitFront: RaycastHit;
if (Physics.Raycast(transform.position, transform.position + transform.forward, hitFront, 1.5)) {
Debug.Log("I hit this in front: ");
Debug.Log(hitFront.collider.gameObject.name);
for (var i = 0; i < obstacles.length; i++)
{
if (obstacles[i].IndexOf(hitFront.collider.gameObject.name) > -1)
{
Debug.Log("Hit in front!");
frontAvailable = false;
}
}
}
問題は、Debug.Logにが表示されることBoundary(Clone)
です。Boundary
配列に含めましたobstacles
。以下のコードfrontAvailable
をfalseに設定するべきではありませんか?それとも私はここで間違いを犯しましたか?