Четверг, 02.05.2024, 20:26
Приветствую Вас Guest | RSS
Главная страница | Статьи | Регистрация | Вход
Меню сайта

Случайный рисунок

Категории каталога
Туториалы по маппингу (HL2) [68]
Туториалы по маппингу для Half-Life
Туториалы по текстурированию (HL2) [10]
Туторы по текстурированию для Half-Life
Туториалы по моделированию (HL2) [9]
Туторы по моделированию для Half-Life
Туториалы по программированию (HL2) [53]
Туторы по прагроммированию для Half-life
Другие туториалы (HL1 и HL2) [4]
Туторы которые не вошли в другие категории
Half-Life 2 Beta [1]
Статьи о npc и weapon в бете Half-Life 2, а так же мануалы и FAQ.
Туториалы по маппингу (HL1) [14]
Туторы по маппингу для Half-Life 1
Туториалы по текстурированию (HL1) [1]
Туторы по текстурированию для Half-Life 1
Туториалы по моделированию (HL1) [1]
Туторы по моделированию для Half-Life 1
Туториалы по программированию (HL1) [30]
Туторы по программированию для Half-Life 1

Наш опрос
Приводить ли сайт в чувство?
Всего ответов: 736

Начало » Статьи » Туториалы по программированию (HL1)

Фикс: func_healthcharger и func_recharger

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

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

C++ Source Code:
if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<{
    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;
}

тут нам стоит доработать условие, при котором проигрывается звук отказа, чтобы оно приходило в истину ещё и когда игрок полностью заряжен. Условие заряжености игрока формулируется так:
C++ Source Code:
pActivator->pev->armorvalue == MAX_NORMAL_BATTERY

то есть, у нас должно получится вот что:
C++ Source Code:
if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<pev->armorvalue == MAX_NORMAL_BATTERY) )
{
    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
Ищем текст:

C++ Source Code:
if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<{
    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;
}

Добавляем ещё одно условие:
C++ Source Code:
pActivator->pev->health == 100

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

C++ Source Code:
if ((m_iJuice <= 0) || (!(pActivator->pev->weapons & (1<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;
}

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

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



Источник: http://www.hlfx.ru/forum/showthread.php?s=08077d3c0f5c95eb3c499ca8c7341ced&threadid=602
Категория: Туториалы по программированию (HL1) | Добавил: DetLeR (16.08.2007) | Автор: Maxwel
Просмотров: 822 | Рейтинг: 0.0 |

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Кто в Онлайн

Друзья сайта

Баннеры

  Сайт CrazyArts   Black   Сообщество сайтов о Half-Life   Самый   Только   Все   hl2 top 100     Rambler's Top100  

игры
игры

  Каталог сайтов Планета Топ 100 - Planet Top 100       ТОП ЛУЧШИХ ИГРОВЫХ САЙТОВ           Detroit Team Site :: Моды от Detroit Team, видео, новости.   Naruto-kun[Звезда Наруто]  


The idea of dising: Homie7