Стрельба происходит каждый кадр

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Стрельба происходит каждый кадр

Сообщение Legend2856 18 фев 2019, 18:59

Стрельба происходит каждый кадр, а не каждые 0.1 секунду. Что делать? Этот же код работал в другом проекте нормально
(c#)
Синтаксис:
Используется csharp
    public float waitTime = 0.1f;
    private float wait;

    public void Shoot()
    {
        if (wait <= 0)
        {
            Instantiate(bullet, shotPoint.position, shotPoint.rotation);
            source.enabled = true;
            source.PlayOneShot(shootClip);
        }
    }

    void Update()
    {
        if (Input.GetMouseButton(0))
        {
            Shoot();
        }

        if (wait > 0)
        {
            wait -= Time.deltaTime;
        }
    }
Legend2856
UNITрон
 
Сообщения: 156
Зарегистрирован: 10 июл 2018, 21:32

Re: Стрельба происходит каждый кадр

Сообщение seaman 18 фев 2019, 19:24

Этот же код работал в другом проекте нормально

Неправда.
PS: пишите пока в "Почемучке"..
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Стрельба происходит каждый кадр

Сообщение Legend2856 18 фев 2019, 19:47

seaman писал(а):
Этот же код работал в другом проекте нормально

Неправда.

Почему?
Legend2856
UNITрон
 
Сообщения: 156
Зарегистрирован: 10 июл 2018, 21:32

Re: Стрельба происходит каждый кадр

Сообщение seaman 18 фев 2019, 20:04

Потому что wait изначально равен 0
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Стрельба происходит каждый кадр

Сообщение Friend123 18 фев 2019, 20:15

seaman писал(а):Потому что wait изначально равен 0

И изначально =0 и всё остальное время тоже =0 ))) Надо просто в момент выстрела в методе Shoot сделать wait = waitTime
Аватара пользователя
Friend123
Старожил
 
Сообщения: 701
Зарегистрирован: 26 фев 2012, 22:12
Откуда: Тверь
  • ICQ

Re: Стрельба происходит каждый кадр

Сообщение VirMP4 19 фев 2019, 10:48

Ты даже не используешь WaitingTime..
Можешь сделать так
m_WaitingTime = 0.1f
M_Wait += Time.deltatime
If (m_WaitingTime <= m_Wait ){
M_Wait = 0
Shoot()
}
Сорян за отсудствие точек с запятой, в клаве телефона их нет
VirMP4
UNец
 
Сообщения: 17
Зарегистрирован: 24 янв 2019, 13:30

Re: Стрельба происходит каждый кадр

Сообщение Saltant 19 фев 2019, 21:09

VirMP4 писал(а):Ты даже не используешь WaitingTime..
Можешь сделать так
m_WaitingTime = 0.1f
M_Wait += Time.deltatime
If (m_WaitingTime <= m_Wait ){
M_Wait = 0
Shoot()
}
Сорян за отсудствие точек с запятой, в клаве телефона их нет

Что за телефон с такой клавой?)) скачай нормальную))
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2234
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21