Registration - or - Enter
Point Of ViewPoint Of View

Модификация о нелегкой жизни вортигонта...

2/05/2003
BrainBreadBrainBread

Кооперативный мод о борьбе с зомби...

2/10/2005

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


  • Description
  • Link and installation

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

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


Author/s of lesson : DIMaN[BBc]
Views : 532 ( +1 )
Downloads : 0
Uploaded by : Streit
Created : 04/07/2011 5:58:11 PM
Source : http://www.confession.ucoz.ru
Rating :
 ( 0 ) 
Share :


Available following translations : | russian |

Наверняка каждый, кто поиграл в 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 );

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



Similar1. Создание нового оружия - В этом туторе не будет объяснено КАК сделать новое оружие, ибо для каждого оружия нужен свой код. Здесь просто будет приведена информация о тех нюансах без которых ваше оружие не будет работать
2. Разбираемся в коде пушки МР5 - По просьбам трудящихся коментирую код МР5
3. weapon_flamethrower - Играя в Халф-Лайф, вы не задумывались над тем, что в нем чего-то не хватает? Чего-то очень близкого, родного, горячего...
4. Создание нового ствола - Создание нового ствола с новыми патронами
5. Динамическое освещение - этой статье будет описан способ добавления динамических вспышек света, которые можно использовать для еффекта молнии
6. Наследование классов в С++ - В этом туторе я попытаюсь кратко рассказать про наследование классов в С++
7. Создание сценариев - Для создания сценариев (aka скриптов) в Half-Life существуют две энтити: scripted_sequence и scripted_sentence. Первая отвечает за движения, выполняемые монстром/персонажем, будь то ходьба, бег, нажатие кнопки, тряска автомата с газировкой или почёсывание подбородка. Вторая служит для того, чтобы персонаж произнес какую-то фразу. При этом его голова повернётся в сторону слушателя, и рот будет открываться в соответствии с амплитудой звука.
Ссылки на объект
Полная ссылка на текущем языке :
Короткая ссылка :
Ссылка на превью-картинку :
Ссылка на картинку в полном размере :
Ссылка для вашего форума или сайта
BB код ссылка:
BB код ссылка с картинкой :
BB код картинки :
HTML код ссылка:
HTML код ссылка с картинкой :
HTML код картинки :
You cannot comment, because you are not registered.
    IMI Jericho 941 (Baby Desert Eagle)
    The SpecialistsIMI Jericho 941 (Baby Desert Eagle)
    Modified TetraGrammaton Berettas of Cleric John Preston
    The SpecialistsModified TetraGrammaton Berettas of Cleric John Preston
    AMT Long Side Hardballers (HITMAN)
    The SpecialistsAMT Long Side Hardballers (HITMAN)
    CZ-52
    The SpecialistsCZ-52