Задать вопрос
@Ad1yar

Анимация работает 1 раз почему?

когда идет перезарядка анимация идет только один раз, но скорее всего потому-что я отключил галку "Loop Time", но можно каким-то другим методом

Код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;

public class Shoot : MonoBehaviour
{
    public GameObject bullet;
    public Transform bulletSpawn;
    public Camera cam;
    public TMP_Text ammoText;
    public Animator anim;
    public float bulletSpeed;
    public float spread;

    public static int allAmmo = 120;
    public static int currentAmmo = 30;
    private float time;
    private bool shoot = true;
    private float nonShootTime;

    void Start()
    {

    }

    void Update()
    {
        CheckGun();

        if (Input.GetKeyDown(KeyCode.R))
        {
            anim.SetBool("reload", true);
            shoot = false;
        }

        if (((nonShootTime += Time.deltaTime) > 7f) && shoot == false)
        {
            Reload();
            shoot = true;
        }

        if ((time += Time.deltaTime) > 0.15f)
        {
            if (Input.GetMouseButton(0) && shoot)
            {
                time = 0f;
                currentAmmo -= 1;
                Debug.Log("патронов в обойме:" + currentAmmo.ToString());
                Shot();
            }
        }

        Debug.Log("патронов в боезапасе:" + allAmmo.ToString());

        ammoText.text = currentAmmo + "/" + allAmmo;
    }

// Дальше вам ненадо)


я могу плохо понять вас я "средний" GameDev, так что не ругайтесь)
  • Вопрос задан
  • 120 просмотров
Подписаться 1 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 1
Mimai
@Mimai
Разработчик игр, веб-разработчик.
Нажми на анимацию и в инспекторе поставь галочку на Loop.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы