Четверг, 25.04.2024, 06:52
Приветствую Вас 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

Наш опрос
Оцените мой сайт
Всего ответов: 632

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

[Hl2]Новые типы классических зомби
Приветствую народ,сегодня я хочу рассказать как сделать новый тип(ы) классических зомби.Т.е разные вариации внешнего вида(как ситезены),согласитесь ведь коряво смотрится одна и та же моделька на всех зомби.В общем приступим.
Открываем наш солюшн и на сервере находим npc_zombie.cpp
Там находим " class CZombie : public CAI_BlendingHost<CNPC_BaseZombie> "
Крутим ниже до " private: " и там нам нужно добавить
Code
int m_iSkin;

Дальше следуем к " BEGIN_DATADESC( CZombie ) "
И после " DEFINE_FIELD( m_flDoorBashYaw, FIELD_FLOAT ), "
Вставим
Code
DEFINE_KEYFIELD( m_iSkin, FIELD_INTEGER, "skin" ),

Теперь же ищем CZombie::SetZombieModel ( void )
И меняем на
Code
void CZombie::SetZombieModel( void )
{
  Hull_t lastHull = GetHullType();

  if ( m_fIsTorso )
  {
  SetModel( "models/zombie/classic_torso.mdl" );
  SetHullType( HULL_TINY );
  }

  if ( !m_fIsTorso && m_iSkin == 1)
  {
  SetModel( "models/zombie/classic.mdl" );
  SetHullType (HULL_HUMAN);
  }
  else if( !m_fIsTorso && m_iSkin == 2)
  {
  SetModel( "models/zombie/zclassic_01.mdl" );
  SetHullType (HULL_HUMAN);
  }
  else if( !m_fIsTorso && m_iSkin == 3)
  {
  SetModel( "models/zombie/zclassic_03.mdl" );
  SetHullType (HULL_HUMAN);
  }

  SetBodygroup( ZOMBIE_BODYGROUP_HEADCRAB, !m_fIsHeadless );

  SetHullSizeNormal( true );
  SetDefaultEyeOffset();
  SetActivity( ACT_IDLE );

  // hull changed size, notify vphysics
  // UNDONE: Solve this generally, systematically so other
  // NPCs can change size
  if ( lastHull != GetHullType() )
  {
  if ( VPhysicsGetObject() )
  {
  SetupVPhysicsHull();
  }
  }
}

Соответственно меняем модельки на наши.
Ну а теперь,нужно записать их в void CZombie::Precache( void )
Code
PrecacheModel( "models/zombie/classic.mdl" );
  PrecacheModel( "models/zombie/zclassic_01.mdl" );
  PrecacheModel( "models/zombie/zclassic_03.mdl" );
  PrecacheModel( "models/zombie/classic_torso.mdl" );
  PrecacheModel( "models/zombie/classic_legs.mdl" );


Ну с этим разобрались.Насчёт кодинга тут всё.
Далее скидываем модели в папку с модом,и чтоб у нас в Хамере можно было менять модельку каждому зомби,нам нужно слегка изминить fgd файл.
Следуем в папку с сдк C:\Steam\steamapps\USERNAME\sourcesdk\bin\ep1\bin\ там у нас лежит файл halflife2.fgd открываем и заменяем строчку

На вот так =)

Code
skin(choices) : "Version" : 3 =
  [
  1 : "Version 1"
  2 : "Version 2"
  3 : "Version 3"
  ]

Всё,сохраняем. Теперь в хамере можно в настройках зомба изменять его модель.
Источник http://warezoportal.3dn.ru
Категория: Туториалы по программированию (HL2) | Добавил: Dark_Alex (11.07.2011)
Просмотров: 2682 | Рейтинг: 5.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