Показать сообщение отдельно
Старый 22.05.2010, 02:17   #66
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,704
Вы сказали Спасибо: 1,424
Поблагодарили 2,367 раз(а) в 1,320 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

я когда-то так делал

thread void BrakeLoop1()
{
if(!brake_state)
{
brake_state=true;
Sleep(World.PlaySound(MyAsset1, "sound/brake_start.wav", brake_sound, 10.0f, 100.0f, me, "a.bog0")-0.2);

while(brake_state_set)
{
Sleep(World.PlaySound(MyAsset1, "sound/brake_loop.wav", brake_sound, 10.0f, 100.0f, me, "a.bog0")-0.2);
}
if(TC<1.0) //звук отпуска
Sleep(World.PlaySound(MyAsset1, "sound/brake_otpusk.wav",brake_sound, 10.0f, 100.0f, me, "a.bog0"));
else//звук остановки
Sleep(World.PlaySound(MyAsset1, "sound/brake_stop.wav",brake_sound, 10.0f, 100.0f, me, "a.bog0"));

brake_state=false;
}
}




и в цикл того потока добавлялось


speed=Math.Fabs(GetVelocity()); //скорость нужна по модулю

TC=GetBrakeCylinderPressure()*981-1;


if(speed<0.8)
brake_sound=0.4;
else
if(speed<2)
brake_sound=0.8;
else
brake_sound=1;

if(TC>1.1)
{
brake_state_set=true;
BrakeLoop1();
}
if(TC<1.0 or speed<0.6)
brake_state_set=false;

Последний раз редактировалось TRam_; 22.05.2010 в 02:27.
TRam_ вне форума   Ответить с цитированием
Старый 01.01.2007, 12:00  
Яndex
Спонсор
 
 
Регистрация: 01.01.2007
Сообщения: 500


Реклама показывается изредка по случайному принципу
По умолчанию РЕКЛАМА