HLFX.Ru Forum Страницы (2): [1] 2 »
Показать все 18 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Условие для прихрамывания у hgrunt (https://hlfx.ru/forum/showthread.php?threadid=2390)


Отправлено -=DrTressi=- 21-10-2010 в 10:17:

Условие для прихрамывания у hgrunt

Вопрос скорее к коддерам:

ВЫстрелив в hgunta он уже будет не бегать а чуть прихрамывать. Так вот как звучит полное условие скажите пожалуйста. Я имею ввиду например:

[если попал 1или 2 раза, то солдат хромает]

или

[если здоровтье меньше 50%, то солдат хромает]

или

[если здоровье меньше 50 hp, то солдат хромает].





ЗЫ: ПОдскажите пожалуйста, почему зомби дёргаются только при первом попадании? Дальше стреляй скок хош - идут, даже не шолохнутся.

__________________
How interesting, just look at that!
© Scientist


Отправлено XaeroX 21-10-2010 в 10:43:

-=DrTressi=-
Ты поизучай код.. Там же все есть.
Зомби дергаются один раз, наверное, потому, что там есть Remember(bits_MEMORY_FLINCHED). Убери его, и будут дергаться каждый раз (правда, убить его тогда можно вообще без проблем).

__________________

xaerox on Vivino


Отправлено -=DrTressi=- 21-10-2010 в 14:50:

XaeroX Где я там копаться буду! Тем более если кто-то знает - может помочь.

__________________
How interesting, just look at that!
© Scientist


Отправлено qpAHToMAS 21-10-2010 в 15:24:

Это ведь простые if/else условия?

Цитата:
-=DrTressi=- писал:
[если здоровье меньше 50 hp, то солдат хромает].

Логично сделать проверкой на кол-во HP. Ведь хромать можно и после падения с большой высоты .


Отправлено -=DrTressi=- 21-10-2010 в 15:38:

qpAHToMAS А если я ему выставил в спирите 999?

__________________
How interesting, just look at that!
© Scientist


Отправлено qpAHToMAS 21-10-2010 в 16:28:

Цитата:
-=DrTressi=- писал:
qpAHToMAS А если я ему выставил в спирите 999?

Ну если HP, с которым появился солдат будет динамичным, то есть смысл использовать проценты.


Отправлено Дядя Миша 21-10-2010 в 16:55:

-=DrTressi=- if( pev->health <= pev->max_health / 2 )

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено -=DrTressi=- 21-10-2010 в 17:26:

qpAHToMAS Мне нужно как в коде, а не как осмысленно.

Дядя Миша Что? Я не понимаю смысла записи. Объясните пожалуйста для тупых.

__________________
How interesting, just look at that!
© Scientist


Отправлено Дядя Миша 21-10-2010 в 17:43:

-=DrTressi=- ну тыж проверку хотел на половину здоровья - вот она.
Независимо от того сколько ты там выставишь через спирит.
Если надо проверку на четверть здоровья - дели не на два, а на четыре.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено fire64 21-10-2010 в 17:51:

ИМХО лучше уж так

C++ Source Code:
1
bool CNPC::ChekedHealth( int procents )
2
{
3
  if( pev->health <= pev->max_health/100 * procents)
4
  {
5
    return true;
6
  }
7
 
8
  return false;
9
}

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей


Отправлено -=DrTressi=- 21-10-2010 в 18:00:

я не спрашиваю как надо, я спрашиваю КАк есть?

__________________
How interesting, just look at that!
© Scientist


Отправлено Government-Man 21-10-2010 в 18:51:

Пора вводить специальное предупреждение для "кодеров" не знающих C++.


Отправлено Дядя Миша 21-10-2010 в 19:05:

-=DrTressi=- у тебя исходников нету, чтобы посмотреть?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено -=DrTressi=- 22-10-2010 в 00:46:

Дядя Миша Даже если есть - я их не разберу.

Government-Man Ну я вообще не коддер! Потому и пишу сюда.

__________________
How interesting, just look at that!
© Scientist


Отправлено XaeroX 22-10-2010 в 07:57:

-=DrTressi=-
В оригинале идет проверка на фиксированное значение, HGRUNT_LIMP_HEALTH.
Если ты хочешь, чтобы проверка была в процентах, то замени в файле hgrunt.cpp строку:

C++ Source Code:
#define HGRUNT_LIMP_HEALTH				20

на
C++ Source Code:
#define HGRUNT_LIMP_HEALTH				(pev->max_health*0.5)

Тогда он будет хромать, если у него 50% здоровья или меньше.

__________________

xaerox on Vivino


Временная зона GMT. Текущее время 17:29. Страницы (2): [1] 2 »
Показать все 18 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024