Улучшаем Crossbow. В этом туторе я расскажу, как сделать, чтобы crossbow стрелял огненными стрелами и зажигал врага.. Очень простой тутор. И так начнём.
Синий цвет: Код Valve
Красный цвет: Мой код
Зелёный цвет: Комментарии
Откроем
Game_sdk.sln. Далее следуем в
hl->Source Files->HL2 DLL->weapon_crossbow.cpp
Находим строчку:
code:#include "beam_shared.h"
Под ней пишем:
code:#include "weapon_flaregun.h"
Далее даём поиск по
code:virtual void PrimaryAttack( void );
и под ней пишем:
code:virtual float GetFireRate( void ) { return 1; };
int CapabilitiesGet( void ) { return bits_CAP_WEAPON_RANGE_ATTACK1; }
Всё что нужно для напалма мы написали…
Теперь переходим в:
code:void CWeaponCrossbow::PrimaryAttack( void )
и сразу после
{ напишите:
code:CBasePlayer *pOwner = ToBasePlayer( GetOwner() );
Находим строку:
code:FireBolt();
Делаем, как показано ниже:
code:FireBolt();
CFlare *pFlare = CFlare::Create( pOwner->Weapon_ShootPosition(), pOwner->EyeAngles(), pOwner, FLARE_DURATION );
Vector forward;
pOwner->EyeVectors( &forward );
pFlare->SetAbsVelocity( forward * 5000 );
if ( pFlare == NULL )
return;
}
Далее под этим ещё одну строчку
code:FireBolt();
, делаем с ней тоже самое.
Всё, давим F5 и наслаждаемся… Если что-то не пашет, пишите мне на mailto:fedjarik@gcnet.ru
© [SP]Phoenix aka Fena