Этот гайд рассчитан на таких же нубов как и я, блуждая по просторам интернета я увидел сайт где говорили о том, что можно портировать оружие из хл2 бета в хл2 (так например с винтовкой)
Вот ссылка:
LINKТам всё подробно написано кроме одного, как добавить коробочку с патронами? Ответ тут:
Открываем item_ammo.cpp в sp/src/game/server/hl2 и пишем где-то после //
========================================================================
// >> LargeBoxSRounds
// ========================================================================
class CItem_LargeBoxSRounds : public CItem
{
public:
DECLARE_CLASS( CItem_LargeBoxSRounds, CItem );
void Spawn( void )
{
Precache( );
SetModel( "models/items/boxsrounds.mdl" );
BaseClass::Spawn( );
}
void Precache( void )
{
PrecacheModel ("models/items/boxsrounds.mdl");
}
bool MyTouch( CBasePlayer *pPlayer )
{
if (ITEM_GiveAmmo( pPlayer, SIZE_AMMO_PISTOL_LARGE, "Pistol"))
{
if ( g_pGameRules->ItemShouldRespawn( this ) == GR_ITEM_RESPAWN_NO )
{
UTIL_Remove(this);
}
return true;
}
return false;
}
};
LINK_ENTITY_TO_CLASS(item_large_box_srounds, CItem_LargeBoxSRounds);
LINK_ENTITY_TO_CLASS(item_ammo_pistol_large, CItem_LargeBoxSRounds);Делаем два пробела и на втором вставляем:
#define SIZE_AMMO_SNIPER_ROUND 5 // сколько патронов будет давать оружие
class CItem_SniperRound : public CItem
{
public:
DECLARE_CLASS(CItem_SniperRound, CItem);
void Spawn(void)
{
Precache();
// выберите подходящую модель: можно свою или из инета, можно из HL2
SetModel("models/items/boxsniperrounds.mdl");
BaseClass::Spawn();
}
void Precache(void)
{
PrecacheModel("models/items/boxsniperrounds.mdl");
}
bool MyTouch(CBasePlayer* pPlayer)
{
if (ITEM_GiveAmmo(pPlayer, SIZE_AMMO_SNIPER_ROUND, "SniperRound"))
{
if (g_pGameRules->ItemShouldRespawn(this) == GR_ITEM_RESPAWN_NO)
{
UTIL_Remove(this);
}
return true;
}
return false;
}
};
LINK_ENTITY_TO_CLASS(item_box_sniper_round, CItem_SniperRound);
LINK_ENTITY_TO_CLASS(item_ammo_sniper_round, CItem_SniperRound);Готово, (модель патронов к снайперской винтовке есть в самой хл2)
Однако, урон у неё маленький и с первого раза никого не убьёшь, фиксим зайдя в: yourmod/cfg, там находим файл skill.cfg (СОВЕТУЮ РЕДАЧИТЬ В NOTEPAD++), с уроном от оружия, статами нпсишек и т.д.. Находим там:
//sk_plr_dmg_gauss "25"
//sk_plr_max_dmg_gauss "30"
И после этого, снизу пишем:
sk_plr_dmg_sniper_round "200"
sk_npc_dmg_sniper_round "500"
sk_max_sniper_round "30"
(Я нубище в программировании и это мой первый тутор, поправьте если я где-то ошибся)