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

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

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

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

The Citizen Part IIThe Citizen Part II

Шутер от первого лица...

23/12/2010
Статистика ( по комментариям ), шт.

как сделать так чтобы анимации на оружии(допустим) сохранялись, например все помнят КС вот там был Usp


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

Сохранение анимаций

как сделать так чтобы анимации на оружии(допустим) сохранялись, например все помнят КС вот там был Usp


Автор / ы урока : Jack-Hang
Просмотров : 1374 ( +3 )
Прислал / (а) : Streit
Дата создания : 07.04.2011 21:19:43
Источник : http://www.hang-over.ucoz.ru
Рейтинг :
 ( 0 ) 
Поделиться :


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

И так я расскажу о самом простом, как сделать так чтобы анимации на оружии(допустим) сохранялись, например все помнят КС вот там был Usp, я покажу только пример его создания. Для начала создадим переменную которая будет за всё это отвечать. Откроем weapons.h : И после строки :

Code:

int m_fInReload;

Добавте :

Code:

int m_iAnimLevel; // Save Animation or anything else

Откроем файл weapons.cpp : И после строки :

Code:

DEFINE_FIELD( CBasePlayerWeapon, m_iDefaultAmmo, FIELD_INTEGER ),

Добавим :

Code:

DEFINE_FIELD( CBasePlayerWeapon, m_iAnimLevel, FIELD_INTEGER ),

Так теперь я расскажу как этим пользоваться, в коде оружия например если создаю тот же Усп из КС во вторичной атаке я напишу примерно так :

Code:

void CUSP::SecondaryAttack( void )
{
   if(m_iAnimLevel == 0)
   {
     SendWeaponAnim( USP_ADD_SILENCER )
     m_iAnimLevel = 1;
   }
   else if(m_iAnimLevel == 1)
   {
     SendWeaponAnim( USP_DEL_SILENCER )
     m_iAnimLevel = 0;
   }

   m_flNextSecondaryAttack = 0.5;
   m_flNextPrimaryAttack = 0.5;
}

Незабудте в функции Спавн прописать

Code:

m_iAnimLevel = 0;

В стрельбе например пишем вот так :

Code:

void CUSP::PrimaryAttack( void )
{
   if(m_iAnimLevel == 0)
   {
     Shoot();
   }
   if(m_iAnimLevel == 1)
   {
     ShootSilensed();
   }
}

Shoot(); и ShootSilensed(); это обычная атака, надеюсь дальше всё понятно. Также делаем с Deploy, Reload, Idle, Holster(mb)

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



Похожие1. Исходный код ножа - weapon_knife (Нож) с двумя режимами атаки: Slash и Stab.
2. Как адаптировать код к модели - Допустим, вы сделали новую модель для автомата MP5, но порядок и кол-во анимаций не сходятся.
3. Добавление новых классов для монстр - Мы будем добавлять новый класс Блэк Опс из Оппосинг Форс
4. Trigger_PlayerFreeez - Trigger_PlayerFreeez (остановка игрока)
5. Удалённый контроль зарядника - Всегда хотелось, чтобы зарядник в хл был управляемым.
6. Замедление игрока - Довольно забавно наблюдать, как игрок одинаково быстро бегает как с монтировкой в руках, так и с тяжелой базукой, хотя логичнее, что держа в руках сей девайс, он будет бегать медленнее
7. Переключение оружия a la HL2 - Мне не нравится, как переключается оружие в ХЛ. Может, кому-то и интересно тыкать по менюшкам худа, но мне больше нравится реализация переключения в Unreal RTN, Quake Mission Packs и HL2
8. Наследование классов в С++ - В этом туторе я попытаюсь кратко рассказать про наследование классов в С++
Вы не можете комментировать, т.к. вы не зарегистрированы.
    Dark and Darker (Раздача в EpicGamesStore)
    Dark and Darker (Раздача в EpicGamesStore)
    Wizard of Legend (Раздача в EpicGamesStore)
    Wizard of Legend (Раздача в EpicGamesStore)
    Astrea: Six Sided Oracles (Раздача в EpicGamesStore)
    Astrea: Six Sided Oracles (Раздача в EpicGamesStore)
    Чикен из чикен гана
    Half-LifeЧикен из чикен гана