Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
025
25.11.2001, 11:08
Exec



so also ich hab mal das gemacht ,was retro gesagt hat (so wie ichs verstanden hab) und hier is der source:

void CShotgun::FireBolt()
{
TraceResult tr;

if (m_iClip == 0)
{
PlayEmptySound( );
return;
}

m_pPlayer->m_iWeaponVolume = QUIET_GUN_VOLUME;

m_iClip--;

// make twang sound
EMIT_SOUND_DYN(ENT(m_pPlayer->pev), CHAN_WEAPON, "weapons/railgun.wav", RANDOM_FLOAT(0.95, 1.0), ATTN_NORM, 0, 93 + RANDOM_LONG(0,0xF));

if (m_iClip)
{

EMIT_SOUND_DYN(ENT(m_pPlayer->pev), CHAN_ITEM, "weapons/xbow_reload1.wav", RANDOM_FLOAT(0.95, 1.0), ATTN_NORM, 0, 93 + RANDOM_LONG(0,0xF));
SendWeaponAnim( SHOTGUN_FIRE );
}
else if (m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] == 0)
{
SendWeaponAnim( SHOTGUN_FIRE );
}

// player "shoot" animation
m_pPlayer->SetAnimation( PLAYER_ATTACK1 );

Vector anglesAim = m_pPlayer->pev->v_angle + m_pPlayer->pev->punchangle;
UTIL_MakeVectors( anglesAim );

Vector vecSrc = pev->origin + gpGlobals->v_up * 16 + gpGlobals->v_forward * 20 + gpGlobals->v_right * 4;

anglesAim.x = 2;
anglesAim.y = 10;
anglesAim.z = 15;

//Vector vecSrc = m_pPlayer->GetGunPosition( ) - gpGlobals->v_up * 2;
Vector vecDir = gpGlobals->v_forward;

//CBaseEntity *pBolt = CBaseEntity::Create( "shotgun_bolt", vecSrc, /* anglesAim */ , m_pPlayer->edict() );
CShotgunBolt *pBolt = CShotgunBolt::BoltCreate();
pBolt->pev->origin = vecSrc;
pBolt->pev->angles = anglesAim;
pBolt->pev->owner = m_pPlayer->edict();

if (m_pPlayer->pev->waterlevel == 3)
{
pBolt->pev->velocity = vecDir * BOLT_WATER_VELOCITY;
pBolt->pev->speed = BOLT_WATER_VELOCITY;
}
else
{
pBolt->pev->velocity = vecDir * BOLT_AIR_VELOCITY;
pBolt->pev->speed = BOLT_AIR_VELOCITY;
}
pBolt->pev->avelocity.z = 10;

if (!m_iClip && m_pPlayer->m_rgAmmo[m_iPrimaryAmmoType] <= 0)
// HEV suit - indicate out of ammo condition
m_pPlayer->SetSuitUpdate("!HEV_AMO0", FALSE, 0);

m_flNextPrimaryAttack = gpGlobals->time + 1.55; //0.75

m_flNextSecondaryAttack = gpGlobals->time + 1.55; //0.75
if (m_iClip != 0)
m_flTimeWeaponIdle = gpGlobals->time + 5.0;
else
m_flTimeWeaponIdle = 0.75;

m_pPlayer->pev->punchangle.y -= 0; // x 2
}

so is das jetzt richtig??, weil da tut sich nämlich gar nix ...

--

"selbermachen rockt am meisten :D" - -LeJean-


Dieser Beitrag wurde am 25.11.2001 um 12:20 von da_EXE bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche