29 #ifndef __GAME_PROJECTILE_H__
30 #define __GAME_PROJECTILE_H__
55 virtual void Launch(
const idVec3 &start,
const idVec3 &dir,
const idVec3 &pushVelocity,
const float timeSinceFire = 0.0
f,
const float launchPower = 1.0
f,
const float dmgPower = 1.0
f );
60 void CatchProjectile(
idEntity* o,
const char* reflectName );
61 int GetProjectileState(
void );
63 void Event_LaunchProjectile(
const idVec3 &start,
const idVec3 &dir,
const idVec3 &pushVelocity );
64 void Event_SetGravity(
float gravity );
67 virtual void Think(
void );
117 int originalTimeGroup;
154 virtual void Think(
void );
155 virtual void Launch(
const idVec3 &
start,
const idVec3 &dir,
const idVec3 &pushVelocity,
const float timeSinceFire = 0.0
f,
const float launchPower = 1.0
f,
const float dmgPower = 1.0
f );
187 virtual void Think(
void );
188 virtual void Launch(
const idVec3 &
start,
const idVec3 &dir,
const idVec3 &pushVelocity,
const float timeSinceFire = 0.0
f,
const float power = 1.0
f,
const float dmgPower = 1.0
f );
226 virtual void Think(
void );
227 virtual void Launch(
const idVec3 &
start,
const idVec3 &dir,
const idVec3 &pushVelocity,
const float timeSinceFire = 0.0
f,
const float launchPower = 1.0
f,
const float dmgPower = 1.0
f );
void AddDefaultDamageEffect(const trace_t &collision, const idVec3 &velocity)
static void DefaultDamageEffect(idEntity *soundEnt, const idDict &projectileDef, const trace_t &collision, const idVec3 &velocity)
virtual void ReadFromSnapshot(const idBitMsgDelta &msg)
virtual void WriteToSnapshot(idBitMsgDelta &msg) const
void Event_Touch(idEntity *other, trace_t *trace)
static bool ClientPredictionCollide(idEntity *soundEnt, const idDict &projectileDef, const trace_t &collision, const idVec3 &velocity, bool addDamageEffect)
virtual void Launch(const idVec3 &start, const idVec3 &dir, const idVec3 &pushVelocity, const float timeSinceFire=0.0f, const float launchPower=1.0f, const float dmgPower=1.0f)
CLASS_PROTOTYPE(idBFGProjectile)
virtual bool ClientReceiveEvent(int event, int time, const idBitMsg &msg)
CLASS_PROTOTYPE(idGuidedProjectile)
renderEntity_t secondModel
const idDeclParticle * smokeFly
idPhysics_RigidBody physicsObj
idEntityPtr< idEntity > owner
renderLight_t renderLight
virtual void GetSeekPos(idVec3 &out)
idEntityPtr< idEntity > owner
virtual void Explode(const trace_t &collision, idEntity *ignore)
void Killed(idEntity *inflictor, idEntity *attacker, int damage, const idVec3 &dir, int location)
virtual void GetSeekPos(idVec3 &out)
const idEventDef EV_Explode
void KillTarget(const idVec3 &dir)
CLASS_PROTOTYPE(idProjectile)
void Create(idEntity *owner, const idVec3 &start, const idVec3 &dir)
struct idProjectile::projectileFlags_s projectileFlags
idEntityPtr< idEntity > target
idForce_Constant thruster
void Restore(idRestoreGame *savefile)
virtual void Launch(const idVec3 &start, const idVec3 &dir, const idVec3 &pushVelocity, const float timeSinceFire=0.0f, const float power=1.0f, const float dmgPower=1.0f)
qhandle_t secondModelDefHandle
const idDeclParticle * smokeFly
idEntityPtr< idEntity > enemy
CLASS_PROTOTYPE(idDebris)
void Restore(idRestoreGame *savefile)
void Save(idSaveGame *savefile) const
~idGuidedProjectile(void)
idPhysics_RigidBody physicsObj
virtual void ClientPredictionThink(void)
void Event_GetProjectileState(void)
void Restore(idRestoreGame *savefile)
void Event_RadiusDamage(idEntity *ignore)
void Save(idSaveGame *savefile) const
virtual bool Collide(const trace_t &collision, const idVec3 &velocity)
renderEntity_t renderEntity
virtual void Launch(const idVec3 &start, const idVec3 &dir, const idVec3 &pushVelocity, const float timeSinceFire=0.0f, const float launchPower=1.0f, const float dmgPower=1.0f)
virtual bool Collide(const trace_t &collision, const idVec3 &velocity)
idList< beamTarget_t > beamTargets
static idVec3 GetGravity(const idDict *projectile)
void Create(idEntity *owner, const idVec3 &start, const idMat3 &axis)
void Save(idSaveGame *savefile) const
static idVec3 GetVelocity(const idDict *projectile)
virtual void Launch(const idVec3 &start, const idVec3 &dir, const idVec3 &pushVelocity, const float timeSinceFire=0.0f, const float launchPower=1.0f, const float dmgPower=1.0f)
const idSoundShader * sndBounce
virtual void Explode(const trace_t &collision, idEntity *ignore)
void Restore(idRestoreGame *savefile)
CLASS_PROTOTYPE(idSoulCubeMissile)
virtual void Killed(idEntity *inflictor, idEntity *attacker, int damage, const idVec3 &dir, int location)
void Save(idSaveGame *savefile) const
const idDeclParticle * smokeKill
virtual void FreeLightDef(void)
void Save(idSaveGame *savefile) const
void Restore(idRestoreGame *savefile)
idEntity * GetOwner(void) const