Каждый хоть раз добавлял в Хл новое оружие но ему не нравилось, что оно или слишком мощно стреляет или слишком слабо.
Новые типы патронов
Каждый хоть раз добавлял в Хл новое оружие но ему не нравилось, что оно или слишком мощно стреляет или слишком слабо.
Author/s of tutorial : Jack-Hang Views : 191 ( +1 ) Uploader : Streit Created : 04/07/2011 8:45:37 PM Source : http://www.hlfx.ru/forum Rating : ( 5 ) Share :
Following translations are available : |
russian |
Каждый хоть раз добавлял в Хл новое оружие но ему ненравилось что оно или слишком мощно стреляет или слишком слабо.Я подумал и решил всё таки написать тутор.
Вообщето ето очень просто.И делать тут практически ничего ненадо.
Первое.Откроем файл с вашим оружием.
Например: python.срр
И найдем там строку
vecDir = m_pPlayer->FireBulletsPlayer( 1, vecSrc, vecAiming, VECTOR_CONE_1DEGREES, 8192, BULLET_PLAYER_357, 0, 0, m_pPlayer->pev, m_pPlayer->random_seed );
Нашли? Так теперь заменим BULLET_PLAYER_357 на своё название патронов.Например: BULLET_PLAYER_358.
Далее.Откроем файл: combat.cpp
И где-то после строки 1576 добавим ето
case BULLET_PLAYER_358:
pEntity->TraceAttack(pevAttacker, gSkillData.plrDmg358, vecDir, &tr, DMG_BULLET);
break;
Как вы заметили там есть строчка gSkillData.plrDmg358.Но к ней мы вернёмся попозже.
Сейчас откройте файл weapons.cpp и идите на строку 179
Теперь откроем файл weapons.h строка 188
BULLET_PLAYER_357, // python
BULLET_PLAYER_358, // наш тип патронов
Так теперь вернёмся к gSkillData.plrDmg358
Откроем файл skill.h
найдём 97 строку и в конце
после
Далее откроем файл game.cpp
к строке 371
И после
//358
cvar_t sk_plr_358_1 = {"sk_plr_358_1","0"};
cvar_t sk_plr_358_2 = {"sk_plr_358_2","0"};
cvar_t sk_plr_358_3 = {"sk_plr_358_3","0"};
Далее спускаемя на строчку 840
И после
//358
CVAR_REGISTER ( &sk_plr_358_1 );
CVAR_REGISTER ( &sk_plr_358_2 );
CVAR_REGISTER ( &sk_plr_358_3 );
Так осталось совсем чуть-чуть.
Откроем gamerules.cpp и пойдем к строчке 270
После
//358
gSkillData.plrDmg358 = GetSkillCvar( "sk_plr_358_");
Открываем Клиентскую часть.
Открываем файл ev_hldm.cpp
Ищем строчку 299
Далее ищем строчку 434 и после
case BULLET_PLAYER_357:
EV_HLDM_PlayTextureSound( idx, &tr, vecSrc, vecEnd, iBulletType );
EV_HLDM_DecalGunshot( &tr, iBulletType );
break;
case BULLET_PLAYER_358:
EV_HLDM_PlayTextureSound( idx, &tr, vecSrc, vecEnd, iBulletType );
EV_HLDM_DecalGunshot( &tr, iBulletType );
break;
Далее открываем ev_hldm.h
Ищем строку 17 и после
BULLET_PLAYER_CROWBAR, // crowbar swipe
BULLET_PLAYER_358, // наш тип патронов
Вот и всё.Можете смело компилить оба проекта.
Только незабудте в ev_hldm.cpp где ваше оружие поменять дефаултный тип патронов на свой.
Например у Револьвера ето строка 798.
И если у вас всё скомпилилось.Идём дальше.В самом Хл открываем файл skill.cfg
и в конце добавляем:
//358 ammo
sk_plr_358_1 "30"
sk_plr_358_2 "25"
sk_plr_358_3 "20"
И запомните что цыфры 30,25,20 могут быть любыми.Они означяют сколько урона нанесёт оружии при каждой сложности игры.
Вот теперь я думаю всё.Кому надо тот поймёт как создавать новые типы патронов, а кто умнее может ещё и декали пропишет новые.
Фуууух ну вот и всё я думаю.
Удачи вам при создании новых типов патронов.
Similar 1. Как адаптировать код к модели - Допустим, вы сделали новую модель для автомата MP5, но порядок и кол-во анимаций не сходятся. 2. учёные не отставали - Как сделать так, чтобы учёные не отставали на каждом препятствии 3. Создание кооперативного прохождения - Данный тутор покажет как сделать в вашем моде кооператив. 4. Неработающие двери :) - Как сделать, чтоб двери не открывались, когда нет света и рядом с ними был индикатор (красн. зел.)
You cannot comment, because you are not logged-in.