Опытные пользователи подскажите, возможно ли реализовать регенерацию жизней игрока в hl sdk 3.2 либо есть тутор по созданию такой функции. Заранее спасибо.
Дядя Миша писал: Сам выдумал - сам спросил. Еще и в последней строчке сделал фатальную ошибку.
Звездочку забыл, да. А так, гляди: http://www.c-cpp.ru/books/ispolzova...ey-na-strukturu
Как будто мы два раза помещаем в указатель адрес структуры, просто разными способами. Да и непонятно опятьже, зачем нужно отдельно имя структуры, а отдельно ещё какая-то ссылающаяся на неё переменная.
Кстати, у меня ни с того ни с сего вдруг ХЛ отказывается грузить скомпиленную клиентку. Что может не так быть?
Eternal12 конечно можно. Вот небольшая тема по этому поводу, может быть поймёшь суть, если немного знаком с кодингом, или умеешь внимательно читать код Valve. Даю посказку где ещё можно подглядеть: ищи по pev->airtime в файле player.cpp. Там есть регенерация после выныривания из воды, когда игрок немного задохнулся.
Вот тут тутор для Сорса из Alien Swarm SDK. Скорее всего без всяких правок заработает в HL2, и с небольшими правками в HL1.
Добавлено 03-09-2017 в 21:31:
Цитата:
Crystallize писал: Кстати, у меня ни с того ни с сего вдруг ХЛ отказывается грузить скомпиленную клиентку. Что может не так быть?
Откати последние изменения в сорцах этой клиентки. Скорее всего порча или утечка памяти. Ну или пробуй дебажить.
Ku2zoff писал: Eternal12 конечно можно. Вот небольшая тема по этому поводу, может быть поймёшь суть, если немного знаком с кодингом, или умеешь внимательно читать код Valve. Даю посказку где ещё можно подглядеть: ищи по pev->airtime в файле player.cpp. Там есть регенерация после выныривания из воды, когда игрок немного задохнулся.
Вот тут тутор для Сорса из Alien Swarm SDK. Скорее всего без всяких правок заработает в HL2, и с небольшими правками в HL1.
Добавлено 03-09-2017 в 21:31:
Откати последние изменения в сорцах этой клиентки. Скорее всего порча или утечка памяти. Ну или пробуй дебажить.
О точно попробую докапаться до сути через перебирания кода востановления после выныривания. Спасибо за подсказку.
Eternal12 писал: попробую докапаться до сути через перебирания кода востановления после выныривания
Только учти, что механизм не совсем такой, как надо именно для регенерации. "Отдыхиваться" игрок начинает сразу после того, как игрок вынырнул. А нам надо, чтобы через n секунд он начал регенерировать. Заведи в классе игрока float, который будет становиться после каждого получения игроком урона равен gpGlobals->time + 10.0, например. А потом условие:
C++ Source Code:
if (m_flLastDamageTime < gpGlobals->time && pev->health < pev->max_health)
Ну и в этом условии прибавляй здоровье с определённым интервалом на определённое количество пунктов. Разместить это дело можно там же, где и реген после воды.
Добавлено 04-09-2017 в 01:31:
Вот ссылка на код из Alien Swarm SDK, я почему-то забыл её прикрепить в предыдущем сообщении.
Подскажите пож, как правильно сделать выключаемые текслайты для спирита? Для халфы трюк с функ_валл и лампочкой у меня получился. А в спирите лампочка не нужна, лайтстиль задаётся прям в коде функ_валла. Но чота не работает нифига. Использую джек и вхлт, что в комплекте с ним.
Может быть есть карта-пример именно для спирита? Для халфы я аж целых две нашёл, но это немного не то.
Добавлено 13-09-2017 в 19:25:
Цитата:
Crystallize писал: глобальная переменная
Цитата:
Crystallize писал: joy_yawthreshold->value
Глобальная переменная инициализируется раньше, чем регистрируется квар. Вот тебе и вылет. Попробуй вне тела функции определить её как float purerange = 0.0; чтобы на момент загрузки дллки движком у неё было значение. А уже истинное значение задавай в теле какой-нибудь функции.
__________________
Sometimes you have to get knocked down lower than you've even been to stand up taller than you everwere.
You so sad. No, i just die everyday...
I can't do anything around here without everybody getting up in my shit...
The aim of life is self-development.
Всех приветствую. Интересует как реализовать воскрешение монстров через определённое время. Не добавления новых точек спавна монстров а вот именно воскрешение .
Eternal12 ты можешь спавнить их монстермейкером. Если нужно именно воскрешение, как у зонбе в кваке, тогда придётся кодить. И не забывай про кускование. Разорванного на мясо довольно трудно воскресить.
Ku2zoff писал: Eternal12 ты можешь спавнить их монстермейкером. Если нужно именно воскрешение, как у зонбе в кваке, тогда придётся кодить. И не забывай про кускование. Разорванного на мясо довольно трудно воскресить.
Про монстермейкера погуглил и уже проверил на тест карте , то что нужно. Спасибо за помощь.
Luciferchik писал: Доброго времени суток форумчанам, возникла такая проблема с кодом смены рук в движке тринити не совсем понятно именно вот этот момент из кода
Там, короче, при зеркаленьи модели сначала меняем тип куллинга, потом трансформируем матрицы, а потом восстанавливаем тип куллинга. Вроде так. Я когда-то экспериментальным путём подбирал в какие места в коде это запихать. И оно даже работало.