📄 gameweapons.h
字号:
{
public:
CSoulPipe() : CWeapon(WEAP_SOUL_PIPE) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CSoulHook : public CWeapon
{
public:
CSoulHook() : CWeapon(WEAP_SOUL_HOOK) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CBehemothClaw : public CWeapon
{
public:
CBehemothClaw() : CWeapon(WEAP_BEHEMOTH_CLAW) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CEnergyBlast : public CWeapon
{
public:
CEnergyBlast() : CWeapon(WEAP_ZEALOT_ENERGYBLAST) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CShockwave : public CWeapon
{
public:
CShockwave() : CWeapon(WEAP_ZEALOT_SHOCKWAVE) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CFireball : public CWeapon
{
public:
CFireball() : CWeapon(WEAP_DRUDGE_FIREBALL) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CNightmareBite : public CWeapon
{
public:
CNightmareBite() : CWeapon(WEAP_NIGHTMARE_BITE) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CHandSqueeze : public CWeapon
{
public:
CHandSqueeze() : CWeapon(WEAP_HAND_SQUEEZE) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CThiefSuck : public CWeapon
{
public:
CThiefSuck() : CWeapon(WEAP_THIEF_SUCK) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CBoneleechSuck : public CWeapon
{
public:
CBoneleechSuck() : CWeapon(WEAP_BONELEECH_SUCK) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
//*****************************************************************************//
class CBehemothShockwave : public CWeapon
{
public:
CBehemothShockwave() : CWeapon(WEAP_BEHEMOTH_SHOCKWAVE) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CDrudgeLightning : public CWeapon
{
public:
CDrudgeLightning() : CWeapon(WEAP_DRUDGE_LIGHTNING) { m_nDamageType = DAMAGE_TYPE_NORMAL; }
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CGroundStrike : public CWeapon
{
public:
CGroundStrike() : CWeapon(WEAP_ZEALOT_GROUNDFIRE) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CDeathShroudZap : public CWeapon
{
public:
CDeathShroudZap();
DDWORD Fire();
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CZealotHeal : public CWeapon
{
public:
CZealotHeal();
DDWORD Fire();
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CZealotShield : public CWeapon
{
public:
CZealotShield();
DDWORD Fire();
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CNagaEyes : public CWeapon
{
public:
CNagaEyes() : CWeapon(WEAP_NAGA_EYEBEAM)
{
m_nFlags = 0;
m_fChromeValue = 0.0f;
}
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
private:
};
//*****************************************************************************//
class CNagaSpike : public CWeapon
{
public:
CNagaSpike() : CWeapon(WEAP_NAGA_SPIKE) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CNagaDebris : public CWeapon
{
public:
CNagaDebris() : CWeapon(WEAP_NAGA_DEBRIS) { m_nDamageType = DAMAGE_TYPE_EXPLODE; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CGideonShield : public CWeapon
{
public:
CGideonShield();
DDWORD Fire();
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CGideonWind : public CWeapon
{
public:
CGideonWind();
DDWORD Fire();
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CVomit : public CWeapon
{
public:
CVomit() : CWeapon(WEAP_GIDEON_VOMIT) { m_nDamageType = DAMAGE_TYPE_FIRE; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CGooSpit : public CWeapon
{
public:
CGooSpit() : CWeapon(WEAP_GIDEON_VOMIT) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DDWORD Fire();
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CGideonSpear : public CWeapon
{
public:
CGideonSpear() : CWeapon(WEAP_GIDEON_SPEAR) { m_nDamageType = DAMAGE_TYPE_NORMAL; };
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CAncientOneBeam : public CWeapon
{
public:
CAncientOneBeam() : CWeapon(WEAP_ANCIENTONE_BEAM)
{
m_nFlags = 0;
m_fChromeValue = 0.0f;
}
DBOOL FireVector(DVector *vFire, DFLOAT dist, DBOOL bTracer);
};
//*****************************************************************************//
class CAncientOneTentacle : public CWeapon
{
public:
CAncientOneTentacle() : CWeapon(WEAP_ANCIENTONE_TENTACLE) { m_nDamageType = DAMAGE_TYPE_MELEE; }
DDWORD Fire();
};
#ifndef _DEMO // Greg 10/28 - disable bombs for demo
//*****************************************************************************//
// INVENTORY WEAPONS
//*****************************************************************************//
#define BOMBS_MAX_HOLD_TIME 1.25f
#define BOMBS_MAX_DIST_TIME 0.75f
#define BOMBS_MIN_VELOCITY 250.0f
#define BOMBS_VEL_INCREASE 1500.0f
//*****************************************************************************//
class CWeapProximityBomb : public CWeapon
{
public:
CWeapProximityBomb() : CWeapon(WEAP_PROXIMITYBOMB) {}
void SetSpecialData(DDWORD dwSpecial, DFLOAT fSpecial)
{ m_fProjVelocity = fSpecial; }
protected:
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CWeapRemoteBomb : public CWeapon
{
public:
CWeapRemoteBomb() : CWeapon(WEAP_REMOTEBOMB) {}
void SetSpecialData(DDWORD dwSpecial, DFLOAT fSpecial)
{ m_fProjVelocity = fSpecial; }
protected:
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
class CWeapTimeBomb : public CWeapon
{
public:
CWeapTimeBomb() : CWeapon(WEAP_TIMEBOMB) {}
void SetSpecialData(DDWORD dwSpecial, DFLOAT fSpecial)
{ m_fProjVelocity = fSpecial; }
protected:
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
};
//*****************************************************************************//
#endif // Greg 10/28 - disable bombs for demo
//*****************************************************************************//
class CSkull : public CWeapon
{
public:
CSkull() : CWeapon(WEAP_SKULL) {}
void UpdateFiringState(DVector *firedPos, DRotation *rotP, DBOOL bFiring, DBOOL bAltFiring);
private:
};
//*****************************************************************************//
#ifdef _ADD_ON
class CGremlinRock : public CWeapon
{
public:
CGremlinRock() : CWeapon(WEAP_GREMLIN_ROCK) {}
protected:
CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
private:
};
//*****************************************************************************//
class CNightmareFireballs : public CWeapon
{
public:
CNightmareFireballs() : CWeapon(WEAP_NIGHTMARE_FIREBALLS) {}
protected:
// CProjectile* FireProjectile(DVector *vFire, DFLOAT dist, DBOOL bAltFire);
private:
};
#endif
#endif // __GAMEWEAPONS_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -