HLFX.Ru Forum
Показать все 6 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Burst Fire (https://hlfx.ru/forum/showthread.php?threadid=4015)


Отправлено Luxury 20-07-2013 в 11:41:

Burst Fire

Меня интересуют способы реализации стрельбы по несколька пуль. Я пробывал делать скорострельное оружие, а каждые три выстрела увеличивать время следующий атаки на секунду. Но после первого ж выстрела клиент перестает рисовать декали на стенах и проигрывать анимацию.


Отправлено ONeiLL 20-07-2013 в 13:25:

Я выкладывал исходники КСДМ, вот целый кусок кода оттуда:

C++ Source Code:
1
void Cglock18::PrimaryAttack()
2
{
3
  if(! ( m_pPlayer->m_afButtonPressed & IN_ATTACK ))
4
    return;
5
 
6
  if( autofire )
7
  {
8
    Shots = 0;
9
    if (m_iClip > 0)
10
      SendWeaponAnim( GLOCK18_SHOOT1 );
11
    BrustAttack();
12
    m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 0.5;
13
    m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + UTIL_SharedRandomFloat(m_pPlayer->random_seed, 1.085,2.085);
14
  }
15
  else
16
  {
17
    DefaultFire( m_pPlayer, 1, wepspread_s, 21, GLOCK18_SHOOT3, "weapons/glock18-2.wav", m_event, 20 );
18
    m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 0.085;
19
    m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + UTIL_SharedRandomFloat(m_pPlayer->random_seed, 1.085,2.085);
20
  }
21
 
22
  return;
23
}
24
 
25
void Cglock18::BrustAttack( void )
26
{
27
  DefaultFire( m_pPlayer, 1, wepspread_s, 21, -1, "weapons/glock18-2.wav", m_event, 20 );
28
  Shots++;
29
  if( Shots < 3 )
30
  {
31
    SetThink( &Cglock18::BrustAttack );
32
    pev->nextthink = gpGlobals->time + 0.085;
33
  }
34
  else
35
    SetThink( NULL );
36
}

void Cglock18::BrustAttack( void ) - обрати внимание на эту функцию
DefaultFire - я себе запилил функцию, в которой происходит сама стрельба, если надо то уже сам смотри в исходниках КСДМ


Отправлено SteamPlay43 20-07-2013 в 14:48:

ONeiLL Да неплохая вещь можно на пример сделать мп5 как у хгранта!


Отправлено VladislavTepes 20-07-2013 в 15:40:

SteamPlay43, я возможно, открою вам страшную тайну, но сделать это можно, не лазая в дебри кода.

__________________
http://i.imgur.com/6qW275b.png


Отправлено KiQ 20-07-2013 в 15:53:

VladislavTepes алиасы - безвкусица

__________________
-Brain is dead-


Отправлено Luxury 20-07-2013 в 18:31:

Тчинками делал, таже проблема. Надо сейчас попробивать (отключив клиентские пушки). ONeiLL спс, DefaultFire вчера написал)


Временная зона GMT. Текущее время 11:33.
Показать все 6 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024