Регистрация - или - Войти

Восстановить пароль
×

Для восстановления пароля необходимо ввести логин или почту, которую Вы вводили при регистрации. После это, на Ваш почтовый ящик будет отпрвлено письмо с кодом.

Логин или почта :

InductionInduction

Предисловие ко всему...

23/05/2009
Black GuardBlack Guard

Тяжкий день офицера...

23/05/2013
Статистика ( по source моделям ), шт.

Наверняка каждый, кто поиграл в Half-Life2 хотел, чтобы хедкрабы спрыгивали с зомбяков и в первом Half-Life


  • Описание
  • КАК УСТАНОВИТЬ

Спрыгивающий Headcrab

Наверняка каждый, кто поиграл в Half-Life2 хотел, чтобы хедкрабы спрыгивали с зомбяков и в первом Half-Life


Автор / ы урока : DIMaN[BBc]
Просмотров : 1739 ( +1 )
Скачиваний : 0
Прислал / (а) : Streit
Дата создания : 07.04.2011 20:58:11
Источник : http://www.confession.ucoz.ru...
Рейтинг :
 ( 0 ) 
Поделиться :


Имеются следующие переводы : | русский |

Наверняка каждый, кто поиграл в Half-Life2 хотел, чтобы хедкрабы спрыгивали с зомбяков и в первом Half-Life. Этот тутор призван изменить эту несправедливость. Теперь и в ваших модах Хедкрабы будут свободно спрыгивать с тела носителя. Для этого нада MS VC++, и минимальное знание синтаксиса языка и структуры исходников HL. Если все это присутствует, начнем.

Собственно все изменения будут происходить только в файле zombie.cpp. Откроем его. В самом начале после:

Code:

//=========================================================
// Monster's Anim Events Go Here
//=========================================================
#define ZOMBIE_AE_ATTACK_RIGHT 0x01
#define ZOMBIE_AE_ATTACK_LEFT 0x02
#define ZOMBIE_AE_ATTACK_BOTH 0x03

Напишем:

Code:

#define ZOMBIE_AE_CRAB1 0x04
#define ZOMBIE_AE_CRAB2 0x05
#define ZOMBIE_AE_CRAB3 0x06

Это мы объявили специальные эвенты движка. После объявим еще один эвент, его будет использовать функция spawn, чтобы хедкраб мог спрыгивать с зомбика:

Code:

#define ZOMBIE_CRAB "monster_headcrab"

Далее в районе 56 строки, сразу после int IgnoreConditions ( void ) объявим процедуру:

Code:

void SpawnCrab( void );

Далее в районе 396 строки, после функции Precache вставляем:

Code:

//=========================================================
// Spawn Headcrab - headcrab jumps from zombie
//=========================================================
void CZombie :: SpawnCrab( void )
{
   CBaseEntity *pCrab = CBaseEntity::Create( ZOMBIE_CRAB, pev->origin, pev->angles, edict() );

   pCrab->pev->spawnflags |= SF_MONSTER_FALL_TO_GROUND;
}

Эта функция нужна, чтобы хедкраб спрыгивал. Далее в функции HandleAnimEvents добавим (297 строка):

Code:

// headcrab jumps from zombie
case ZOMBIE_AE_CRAB1:
{
   ALERT( at_console, "Crab1 spawned!\n" );
   pev->body = 1; // set the head to a skull
   SpawnCrab(); // spawn a headcrab
}
break;

case ZOMBIE_AE_CRAB2:
{
   ALERT( at_console, "Crab2 spawned!\n" );
   pev->body = 1; // set the head to a skull
   SpawnCrab(); // spawn a headcrab
}
break;

case ZOMBIE_AE_CRAB3:
{
   ALERT( at_console, "Crab3 spawned!\n" );
   pev->body = 1; // set the head to a skull
   SpawnCrab(); // spawn a headcrab
}
break;

И последний штрих. В функции Precache, это 387 строка, вставим следующее:

Code:

UTIL_PrecacheOther( ZOMBIE_CRAB );

Теперь компилируем и наслаждаемся. Хедкраб спрыгивает, после смерти носителя.



Похожие1. Добавление ножа из Op4 - Добавление ножа из Op4
2. Исходный код снайперки - weapon_sniperrifle с оптическим прицелом
3. Новый монстр - В общем-то это самый лёгкий тутор который можно придумать.
4. Динамическое освещение - этой статье будет описан способ добавления динамических вспышек света, которые можно использовать для еффекта молнии
5. Замедление игрока - Довольно забавно наблюдать, как игрок одинаково быстро бегает как с монтировкой в руках, так и с тяжелой базукой, хотя логичнее, что держа в руках сей девайс, он будет бегать медленнее
6. Переключение оружия a la HL2 - Мне не нравится, как переключается оружие в ХЛ. Может, кому-то и интересно тыкать по менюшкам худа, но мне больше нравится реализация переключения в Unreal RTN, Quake Mission Packs и HL2
7. Создание кооперативного прохождения - Данный тутор покажет как сделать в вашем моде кооператив.
8. Добавление эффектов блеска для энтити (entity) - Данная статья - перевод урока от OsirisGodoftheDead с ModDB...
9. Как сделать старый 640 худ из 2560/1280 нового худа - сидел, думал как вернуть старые времена, додумал
Вы не можете комментировать, т.к. вы не зарегистрированы.
    В премодерации
    Team FortressВ премодерации
    В премодерации
    Team FortressВ премодерации
    Электробус
    Half-LifeЭлектробус
    Pekkaniska
    Half-LifePekkaniska