Stat overall size ( ALL )
Фикс: func_healthcharger и func_recharger
Фикс: func_healthcharger
Фикс: func_healthcharger и func_recharger
Following translations are available : |
russian |
Итак… Когда сравнить HL1 и HL2 то замечается различие в зарядниках здоровья и костюм… Правильно! В HL2 зарядники прекращают свою работу, когда игрок будет заряжен полностью… В HL1 они не останавливаются… точнее они не заряжают, но звук зарядки проигрывается… Как-то неправильно получается… Это можно исправить очень простым способом. Вся робота будет вестись на серверной части.
Для func_recharger:
Открываем h_battery.cpp, там ищем класс CRecharge, заходим в процедуру CRecharge::Use, ищем вот этот текст:
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;
}
тут нам стоит доработать условие, при котором проигрывается звук отказа, чтобы оно приходило в истину ещё и когда игрок полностью заряжен. Условие заряжености игрока формулируется так:
pActivator->pev->armorvalue == 100
то есть, у нас должно получится вот что:
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
Ищем текст:
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;
}
Добавляем ещё одно условие:
pActivator->pev->health == 100
(обратите внимание, тут используем не задефайненное значение, а точное 100)
Получим:
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;
}
Теперь и зарядник здоровья тоже пофиксили.
Казалось бы, что мелочь какую-то фиксили, но всё же надо было, чтобы всё правильно выглядело для игрока
Similar 1. Создание нового оружия - В этом туторе не будет объяснено КАК сделать новое оружие, ибо для каждого оружия нужен свой код. Здесь просто будет приведена информация о тех нюансах без которых ваше оружие не будет работать 2. Создание нового ствола - Создание нового ствола с новыми патронами 3. Исходный код ножа - weapon_knife (Нож) с двумя режимами атаки: Slash и Stab. 4. Как адаптировать код к модели - Допустим, вы сделали новую модель для автомата MP5, но порядок и кол-во анимаций не сходятся. 5. учёные не отставали - Как сделать так, чтобы учёные не отставали на каждом препятствии 6. Больше слотов и позиций для оружия - Больше слотов и позиций для оружия 7. субтитры из паранойи - субтитры из паранойи. 8. Создание КООП,смена карт аля сингл - Сдесь я расскажу как разрешить синглплеерные скрипты в мултиплеере!
You cannot comment, because you are not logged-in.