Как обнаружить стену с помощью Raycast? - PullRequest
0 голосов
/ 28 марта 2019

Как в этом сценарии добавить способ обнаружения стены?

Я делаю ИИ противнику, чтобы перемещаться из стороны в сторону, а когда нет пола, противник переворачивается и уходит на другую сторону. Теперь я хочу добавить способ проверить, есть ли стена, и если это правда, враг переворачивается и возвращается на другую сторону.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Patrol : MonoBehaviour
{
    public float speed;
    //public float distance;
    private bool movingRight = true;
    public Transform groundDetection;   

    void Update()
    {
        transform.Translate(Vector2.right * speed * Time.deltaTime);
        RaycastHit2D groundInfo = Physics2D.Raycast(groundDetection.position, Vector2.down, 2f);       

        if (groundInfo.collider == false)
        {
            if(movingRight == true)
            {
                transform.eulerAngles = new Vector3(0, -180, 0);
                movingRight = false;
            }
            else
            {
                transform.eulerAngles = new Vector3(0, 0, 0);
                movingRight = true;
            }
        }
    }
}
...