Заставить объект двигаться в случайном направлении в Unity - PullRequest
0 голосов
/ 31 января 2020

У меня есть EnemyTest игровой объект, который с помощью сценария EnemyDmg создает число урона всякий раз, когда оружие поражает его. Я хотел бы поставить скрипт на сборный номер урона, который заставит его двигаться в случайном направлении в 2-мерном пространстве. Я знаю, что другие люди спрашивали об этом, но дело в том, что я хотел бы иметь возможность перемещать число повреждений, не поворачивая его, чтобы его можно было легко прочитать. Я планирую поместить код для перемещения числа урона в новый сценарий на префаб, содержащийся в методе void Awake().

Это сценарий EnemyDmg:

public class EnemyDmg : MonoBehaviour
{
    GameObject EnemyCanvas;
    public GameObject DmgNmbr;

    void Start()
    {
        EnemyCanvas = this.gameObject.transform.GetChild(0).gameObject;
    }

    void OnCollisionEnter2D(Collision2D Collider)
    {
        if (Collider.gameObject.tag == "Weapon")
        {
            Debug.Log("Enemy Hit!");
            Instantiate(DmgNmbr, EnemyCanvas.transform);
        }
    }
}

Как это то, что происходит, когда оружие поражает противника: Google Drive Video . Я бы хотел, чтобы жёлтое число улетело от врага в произвольном направлении, хотя оно не должно очень далеко. С этой точки зрения, ось X направлена ​​влево и вправо, а ось Y - вверх и вниз.

1 Ответ

0 голосов
/ 31 января 2020

https://answers.unity.com/questions/1446119/moving-a-non-player-object-in-a-random-direction-w.html

В этой ссылке кто-то дал рецепт перемещения объекта в случайном направлении. Однако я не мог понять, что именно вы спрашиваете.

private Vector3 RandomVector(float min, float max) {
     var x = Random.Range(min, max);
     var y = Random.Range(min, max);
     var z = Random.Range(min, max);
     return new Vector3(x, y, z);
 }

 void Start()
 { 
     var rb = GetComponent<Rigidbody>();
     rb.velocity = RandomVector(0f, 5f);
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...