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

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Написал код ножа (https://hlfx.ru/forum/showthread.php?threadid=3433)


Отправлено ONeiLL 24-05-2012 в 19:22:

Написал код ножа

Да, это опять я.

C++ Source Code:
1
void CKnife::SecondaryAttack()
2
{
3
  m_pPlayer->SetAnimation( PLAYER_ATTACK1 );
4
  SendWeaponAnim( KNIFE_STAB_MISS );
5
  EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_slash1.wav", VOL_NORM, ATTN_NORM, 0, 94 );
6
 
7
  Vector vecSrc( m_pPlayer->GetGunPosition() );
8
  Vector vecEnd( vecSrc + gpGlobals->v_forward * 48 );
9
  TraceResult tr;
10
  UTIL_TraceLine( vecSrc, vecEnd, dont_ignore_monsters, ENT( m_pPlayer->pev ), &tr );
11
  if( tr.flFraction < 1 )
12
  {
13
    CBaseEntity *pEntity = CBaseEntity::Instance(tr.pHit);
14
    if( pEntity )
15
    {
16
      if ( pEntity->Classify() != CLASS_NONE && pEntity->Classify() != CLASS_MACHINE )
17
      {
18
        switch( RANDOM_LONG( 1, 4) )
19
        {
20
        case 1:
21
            EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_hit1.wav", VOL_NORM, ATTN_NORM, 0, 94 );
22
          break;
23
        case 2:
24
            EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_hit2.wav", VOL_NORM, ATTN_NORM, 0, 94 );
25
          break;
26
        case 3:
27
            EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_hit3.wav", VOL_NORM, ATTN_NORM, 0, 94 );
28
          break;
29
        case 4:
30
            EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_hit4.wav", VOL_NORM, ATTN_NORM, 0, 94 );
31
          break;
32
        }
33
        pEntity->TraceAttack(m_pPlayer->pev, 15, gpGlobals->v_forward, &tr, DMG_CLUB );
34
      }
35
      else
36
        EMIT_SOUND_DYN( ENT( m_pPlayer->pev ), CHAN_WEAPON, "weapons/knife_hitwall1.wav", VOL_NORM, ATTN_NORM, 0, 94 );
37
    }
38
  }
39
 
40
  m_flNextPrimaryAttack = UTIL_WeaponTimeBase() + 1.1;
41
  m_flNextSecondaryAttack = UTIL_WeaponTimeBase() + 1.1;
42
  m_flTimeWeaponIdle = UTIL_WeaponTimeBase() + 2.0;
43
}


А теперь подскажите это будет работать? Урон будет проходить? Просто нету с кем потестить.


Отправлено Дядя Миша 24-05-2012 в 20:11:

В кваке так топорик сделан

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ONeiLL 25-05-2012 в 08:41:

Цитата:
Дядя Миша писал:

Я так поянл, что так будет работать?

Добавлено 25-05-2012 в 12:41:

Вроде работает, только ножом не возможно разбить бреакбл( стекло и т.д )


Отправлено Дядя Миша 25-05-2012 в 12:32:

Цитата:
ONeiLL писал:
Вроде работает, только ножом не возможно разбить бреакбл( стекло и т.д )

всё правильно. Стекла лучше бить молотком, а не ножом. Ну ты много в своей жизни стёкол ножом разбил? Ну то-то жы

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ONeiLL 25-05-2012 в 14:58:

И всё же, как проверить, попали мы в функ_бреакбл, или нет?


Отправлено Дядя Миша 25-05-2012 в 15:23:

ONeiLL у брекабла нету своего класса, он наследует класс из CBaseEntity. А там он по дефолту CLASS_NONE.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ONeiLL 25-05-2012 в 16:57:

Та что же это такое??? Посмотрел код лома. Мало что понял
UTIL_TraceHull( vecSrc, vecEnd, dont_ignore_monsters, head_hull, ENT( m_pPlayer->pev ), &tr ); - обьясните, что делает это?


Отправлено Дядя Миша 25-05-2012 в 17:15:

Я тебе вроде давал вчера сцылку на свою статью по устройству физики в Quake.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено ONeiLL 25-05-2012 в 17:30:

Да, я читал, но я чото не понял, что такое хул

Добавлено 25-05-2012 в 21:30:

Ладно, нож зделал


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

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