Unity: AddExplosionForce работает только иногда - PullRequest
2 голосов
/ 11 марта 2020

Итак, у меня есть сфера для игрока, и всякий раз, когда игрок поврежден каким-либо предметом, он должен выбивать мяч в противоположном направлении, поэтому я использую AddExplosionForce для выполнения эффекта, но иногда он отбрасывает игрока назад, а иногда это ничего не делает. Есть ли что-то, что я могу сделать, чтобы исправить свой код (ниже) или альтернативу этому эффекту? Спасибо!

    private void OnTriggerEnter(Collider other){
    if(other.tag == "Pickup")
    {
        if(other.GetComponent<pickupScript>().ReturnSize() >= score)
        {
            score--;
            //explodeforce in oposite direction
            GetComponent<Rigidbody>().AddExplosionForce(500.0f, other.transform.position, .501f, .5f, ForceMode.Impulse);
            //add effects
        }
     }
...