Registration - or - Enter
Half-Life FX: Lost in Black MesaHalf-Life FX: Lost in Black Mesa

Мод на движке HLFX...

25/12/2009
Gutter RunnersGutter Runners

Многопользовательский мод, где предстоит играть одну и команд: большие крысы и люди....

16/01/2007

Фикс: func_healthcharger и func_recharger


  • Description
  • Link and installation

Фикс: func_healthcharger

Фикс: func_healthcharger и func_recharger


Author/s of lesson : Maxwel
Views : 793 ( +1 )
Uploaded by : Streit
Created : 04/07/2011 6:07:39 PM
Source : http://www.hlfx.ru/forum
Rating :
 ( 0 ) 
Share :


Available following translations : | russian |

Итак… Когда сравнить HL1 и HL2 то замечается различие в зарядниках здоровья и костюм… Правильно! В HL2 зарядники прекращают свою работу, когда игрок будет заряжен полностью… В HL1 они не останавливаются… точнее они не заряжают, но звук зарядки проигрывается… Как-то неправильно получается… Это можно исправить очень простым способом. Вся робота будет вестись на серверной части.

Для func_recharger: Открываем h_battery.cpp, там ищем класс CRecharge, заходим в процедуру CRecharge::Use, ищем вот этот текст:

Code:

if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<<WEAPON_SUIT))))
{
   if (m_flSoundTime <= gpGlobals->time)
   {
     m_flSoundTime = gpGlobals->time + 0.62;
     EMIT_SOUND(ENT(pev), CHAN_ITEM, "items/suitchargeno1.wav", 0.85, ATTN_NORM );
   }
   return;
}

тут нам стоит доработать условие, при котором проигрывается звук отказа, чтобы оно приходило в истину ещё и когда игрок полностью заряжен. Условие заряжености игрока формулируется так:

Code:

pActivator->pev->armorvalue == 100

то есть, у нас должно получится вот что:

Code:

if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<<WEAPON_SUIT))) || (pActivator->pev->armorvalue == 100) )
{
   if (m_flSoundTime <= gpGlobals->time)
   {
     m_flSoundTime = gpGlobals->time + 0.62;
     EMIT_SOUND(ENT(pev), CHAN_ITEM, "items/suitchargeno1.wav", 0.85, ATTN_NORM );
   }
   return;
}

Итак зарядник костюма пофиксили.

Для func_healthcharger: Делается аналогично до зарядника костюма. Файл: healthkit.cpp Класс: CWallHealth Процедура: CWallHealth::Use Ищем текст:

Code:

if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<<WEAPON_SUIT))))
{
   if (m_flSoundTime <= gpGlobals->time)
   {
     m_flSoundTime = gpGlobals->time + 0.62;
     EMIT_SOUND(ENT(pev), CHAN_ITEM, "items/medshotno1.wav", 1.0, ATTN_NORM );
   }
   return;
}

Добавляем ещё одно условие:

Code:

pActivator->pev->health == 100

(обратите внимание, тут используем не задефайненное значение, а точное 100) Получим:

Code:

if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<<WEAPON_SUIT))) || (pActivator->pev->health == 100))
{
   if (m_flSoundTime <= gpGlobals->time)
   {
     m_flSoundTime = gpGlobals->time + 0.62;
     EMIT_SOUND(ENT(pev), CHAN_ITEM, "items/medshotno1.wav", 1.0, ATTN_NORM );
   }
   return;
}

Теперь и зарядник здоровья тоже пофиксили.

Казалось бы, что мелочь какую-то фиксили, но всё же надо было, чтобы всё правильно выглядело для игрока



Similar1. Смена моделей персонажей - Смена моделей персонажей прямо в Хамере
2. Мазлфлэш на брашах - Мазлфлэш на брашах
3. субтитры из паранойи - субтитры из паранойи.
4. Как перекрасить пули в ХЛ - Здесь я вам расскажу, как можно перекрасить пули в Half-Life1 и приведу свой пример
You cannot comment, because you are not registered.
    UT3 Evangelion Model Pack v1.1 Final
    Unreal Tournament 3UT3 Evangelion Model Pack v1.1 Final
    OldSkool Amp'd
    Unreal Tournament 99OldSkool Amp'd
    Csejte Castle HerdCoop Map Pack V3
    Unreal Tournament 99Csejte Castle HerdCoop Map Pack V3
    Unreal Tournament 3 Original Soundtrack
    Unreal Tournament 3 Original Soundtrack