Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 07.04.2013, 13:51   #1
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Звук бега и шага. Проблема C#

вот есть есть скрипт на бег, в котором мне надо воспроизвести звук бега с интервалом воспроизведения звука в 0.5f, то есть между повторным воспроизведением должна быть небольшая пауза.
Не получается, IEnumirator неправильно работал:
using UnityEngine;
using System.Collections;

public class Run : MonoBehaviour {
	
	public float SpeedOgran = 10f;
	public float startogran = 10f;
	public float maxwait = 20f;
	public int speed = 4;
	private CharacterController controller;
	private CharacterMotor motor;
	private bool activeres = false;
	
	public AudioClip runsound;
	
	void Start()
	{
		controller = GetComponent<CharacterController>();
		motor = GetComponent<CharacterMotor>();
	}

	void Update()
	{
		if(Input.GetKey(KeyCode.LeftShift) && activeres == false)
		{
		    if(controller.isGrounded && controller.velocity.magnitude > 1)
		    {
		        if(SpeedOgran > 0)
		        {
		            SpeedOgran -= Time.deltaTime;
		            motor.movement.maxForwardSpeed = speed;
					audio.clip = runsound;
					audio.Play();
					yield return new WaitForSeconds(0.5f);
		        }
		        if(SpeedOgran <= 0 && activeres == false)
		        	{
		        		activeres = true;
		            	motor.movement.maxForwardSpeed = 2;
						audio.Stop();
		        	}
		    }
	
		}
		if(Input.GetKeyUp(KeyCode.LeftShift))
		{
			motor.movement.maxForwardSpeed = 2;
		}
		if(activeres == true) SpeedOgran += Time.deltaTime;
		if(SpeedOgran > maxwait){ SpeedOgran = startogran; activeres = false; }
	}
	
}
(Offline)
 
Ответить с цитированием
Старый 07.04.2013, 21:40   #2
Andvrok
Бывалый
 
Регистрация: 26.07.2009
Сообщений: 785
Написано 362 полезных сообщений
(для 995 пользователей)
Ответ: Зву бега и шага. Проблема C#

Скорее всего, я не прав, но нельзя ли просто добавить в звуковой файл полсекунды тишины?
(Offline)
 
Ответить с цитированием
Старый 07.04.2013, 23:02   #3
Arton
Быдлокодер
 
Аватар для Arton
 
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,019
Написано 2,312 полезных сообщений
(для 5,349 пользователей)
Ответ: Зву бега и шага. Проблема C#

Сообщение от Andvrok Посмотреть сообщение
Скорее всего, я не прав, но нельзя ли просто добавить в звуковой файл полсекунды тишины?
Ты неправ.
(Offline)
 
Ответить с цитированием
Старый 08.04.2013, 01:03   #4
seaman
Знающий
 
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений
(для 180 пользователей)
Ответ: Звук бега и шага. Проблема C#

Ну насколько я знаю - Update не корутина. Не используйте в ней yield, а вызывайте из нее корутину - StartCoroutine. Причем по условию, чтобы не плодить корутины каждый кадр. Запустил - установи флаг, чтобы второй раз не запустить.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:50.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com