Не работает урон от пули
Народ помогите,я делаю урон от пули но при соприкосновение с обьектом с тэгом Vraginа ничего не происходит,как буддто этого обьекта и нет.Что делать??Помогите
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Ammo : MonoBehaviour
{
public float speed;
public float destroyTime;
public int valueDown;
bool isAmmo = false;
// Start is called before the first frame update
void Start()
{
//Invoke("DestroyAmmo", destroyTime);
}
// Update is called once per frame
void Update()
{
transform.Translate(Vector2.left * speed * Time.deltaTime);
}
void OnTriggerStay2D(Collider2D collider)
{
if (collider.tag == "Vragina")
{
Debug.Log("Da ura");
collider.GetComponent<Creatureshealth>().health -= valueDown;
isAmmo = true;
if (isAmmo == true)
{
Destroy(gameObject);
}
}
}
//void DestroyAmmo()
//{
// Destroy(gameObject);
//}
}
Ответы (1 шт):
Автор решения: Yaroslav
→ Ссылка
Ammoэто амуниция, а пуля этоBulletПочему
OnTriggerStay, а неOnTriggerEnter?События физики
Stay/Enter/Exitне произойдёт с двумя неподвижными объектами. ИзменениеTransformэто не движение а по сути телепортация, движение этоRigidbody.В 99.9% случаях в играх стрельба это
HitScan, а трейсинг пуль просто визуал. Вычисление столкновений малого объекта на высоких скоростях слишком затратны.