Проблема с системой стрельбы по зомби в UnityC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Проблема с системой стрельбы по зомби в Unity

Сообщение Anonymous »

У меня есть игра про зомби в Unity. В этой игре я убиваю зомби, стреляя в точку, в которую нажимаю мышью на экране, но иногда, даже если луч рейкаста попадает в зомби, на зомби это не влияет, и когда я им управляю, я получаю значения тега и имени. объекта позади зомби. Как я могу решить эту проблему? Я использую следующую строку кода. Выбор EnabledLayer соответствует слоям зомби-коллайдера, в этой части проблем нет.

Код: Выделить всё

public void FireEvent()
{
if (!fireAuth)
return;

if (GameManager_PTH.Instance.IsGameStart)
{
Vector3 getMousePos = Input.mousePosition;
if (MermiBar.mermiIndex > 0)
{
currentDelay = TriggerDelay;
Ray ray = RaycastCamera.ScreenPointToRay(getMousePos);
if (Physics.Raycast(ray, out RaycastHit hit, MaxDistance, EnabledLayer))
{
Debug.LogError("What did I hit: " + hit.collider.gameObject.name);
if (hit.collider.gameObject.CompareTag(HittableTag))
{
Zombie_PTH zombie =       hit.collider.gameObject.GetComponentInParent();
string name = hit.collider.gameObject.name.Trim();

if (name.Contains("HeadCollider"))
zombie.HitYedim(HitType.Kafa, getMousePos);
else if (name.Contains("BodyCollider"))
zombie.HitYedim(HitType.Govde, getMousePos);
else if (name.Contains("ArmCollider"))
zombie.HitYedim(HitType.Govde, getMousePos);
else if (name.Contains("LegCollider"))
zombie.HitYedim(HitType.Govde, getMousePos);

Instantiate(BloodParticle, hit.point, Quaternion.identity);
}
}

StopAllCoroutines();
StartCoroutine(SightPosition());
MermiBar.Shot();

Debug.DrawRay(ray.origin, ray.direction * MaxDistance, Color.green, 0.25f);
SoundSFX_PTH.Instance.PlaySound(SoundSFX_PTH.ClipModel.GUN, 0, 1, false);
}
else
{
//RELOAD SOUND
SoundSFX_PTH.Instance.PlaySound(SoundSFX_PTH.ClipModel.SOUND_EFFECT, 3, 1, false);
}
}
}
Выбор EnabledLayer соответствует слоям зомби-коллайдера, в этой части проблем нет.

Подробнее здесь: https://stackoverflow.com/questions/784 ... em-problem
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как завершить метод стрельбы по проблеме с ОДУ?
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • История команд на основе стрельбы при вводе консоли (Java)
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Выходная передача (и ошибочно (и ошибочная) имеет медленную скорость стрельбы и создает большой буфер
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Как остановить событие ключа вкладок от стрельбы при открытии модала
    Anonymous » » в форуме Html
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Как остановить событие ключа вкладок от стрельбы при открытии модала
    Anonymous » » в форуме CSS
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»