AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Cknife:Swing (https://forums.alliedmods.net/showthread.php?t=193406)

darktemplar 08-19-2012 02:08

Cknife:Swing
 
Hi :D

Can anyone please help me convert this code to Pawn code :D . I found this in wpn_knife.cpp (CS-SDK) . Thank you so much :D

PHP Code:


int CKnife
::Stabint fFirst ) {     int fDidHit FALSE;     TraceResult tr;      UTIL_MakeVectorsm_pPlayer->pev->v_angle );      Vector vecSrc m_pPlayer->GetGunPosition();     Vector vecEnd vecSrc gpGlobals->v_forward 48;      UTIL_TraceLinevecSrcvecEnddont_ignore_monstersENTm_pPlayer->pev ), &tr );      if ( tr.flFraction >= 1.0 )     {         UTIL_TraceHullvecSrcvecEnddont_ignore_monstershead_hullENTm_pPlayer->pev ), &tr );          if ( tr.flFraction 1.0 )         {             CBaseEntity *pHit CBaseEntity::Instancetr.pHit );              if ( !pHit || pHit->IsBSPModel() )             {                 FindHullIntersectionvecSrctrVEC_DUCK_HULL_MINVEC_DUCK_HULL_MAXm_pPlayer->edict() );             }              vecEnd tr.vecEndPos;         }     }      if ( tr.flFraction >= 1.0 )     {         if ( fFirst )         {             SendWeaponAnimKNIFE_STAB_MISSUseDecrement() );              m_flNextSecondaryAttack UTIL_WeaponTimeBase() + 1.0;             m_flNextPrimaryAttack   UTIL_WeaponTimeBase() + 1.0;              if ( RANDOM_LONG0) )                 EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_WEAPON"weapons/knife_slash1.wav"VOL_NORMATTN_NORM094 );             else                 EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_WEAPON"weapons/knife_slash2.wav"VOL_NORMATTN_NORM094 );              m_pPlayer->SetAnimationPLAYER_ATTACK1 );         }     }     else     {         fDidHit TRUE;         SendWeaponAnimKNIFE_STABUseDecrement() );          m_flNextSecondaryAttack UTIL_WeaponTimeBase() + 1.1;         m_flNextPrimaryAttack   UTIL_WeaponTimeBase() + 1.1;          float fVol     1.0;         BOOL bHitWorld TRUE;          CBaseEntity *pEntity CBaseEntity::Instancetr.pHit );         m_pPlayer->SetAnimationPLAYER_ATTACK1 );          float damage 65.0;          if ( pEntity && pEntity->IsPlayer() )         {             Vector2D vec2LOS;             Vector   vecForward gpGlobals->v_forward;              UTIL_MakeVectorsm_pPlayer->pev->angles );              vec2LOS vecForward.Make2D();             vec2LOS vec2LOS.Normalize();              if ( DotProductvec2LOSgpGlobals->v_forward.Make2D() > 0.8 )             {                 damage *= 3.0;             }         }          UTIL_MakeVectorsm_pPlayer->EyePosition() );         ClearMultiDamage();          pEntity->TraceAttackm_pPlayer->pevdamagegpGlobals->v_forward, &trDMG_BULLET DMG_NEVERGIB );         ApplyMultiDamagem_pPlayer->pevm_pPlayer->pev );          if ( pEntity )         {             if ( pEntity->Classify() != CLASS_NONE && pEntity->Classify() != CLASS_MACHINE )             {                 EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_WEAPON"weapons/knife_stab.wav"VOL_NORMATTN_NORM0PITCH_NORM );                  pPlayer->m_iWeaponVolume KNIFE_BODYHIT_VOLUME;                  if ( !pEntity->IsAlive() )                 {                     return TRUE;                 }                  flVol     0.1;                 bHitWorld FALSE;             }         }          if ( bHitWorld )         {             TEXTURETYPE_PlaySound( &trvecSrcvecSrc + ( vecEnd vecSrc ) * 2BULLET_PLAYER_KNIFE );              switch( RANDOM_LONG0) )             {             case 0:                 EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_ITEM"weapons/knife_hitwall1.wav"VOL_NORMATTN_NORM098 RANDOM_LONG0) );                 break;             case 1:                 EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_ITEM"weapons/knife_hitwall2.wav"VOL_NORMATTN_NORM098 RANDOM_LONG0) );                 break;             }         }          m_trHit tr;          SetThink( &Smack );         pev->nextthink UTIL_WeaponTimeBase() + 0.2;          m_pPlayer->m_iWeaponVolume flVol KNIFE_WALLHIT_VOLUME;     } } 

Its the function called " int CKnife::Stab( int fFirst ) "

http://cs-sdk.googlecode.com/svn/trunk/wpn_knife.cpp

dark_style 08-19-2012 02:59

Re: Cknife:Swing
 
I am not sure what are you looking for but take a look at : https://forums.alliedmods.net/showthread.php?t=189103 .

darktemplar 08-20-2012 21:37

Re: Cknife:Swing
 
:). I've seen that. But I want to make a stock cKnife:Swing because I want to make a knife that 1 second after Ham_Weapon_PrimaryAttack, it execute cKnife:Swing to does alternative damage :)


All times are GMT -4. The time now is 05:45.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.