mirror of
https://github.com/jmarshall23/DoomRTX.git
synced 2026-08-17 19:23:51 +02:00
35 lines
1.0 KiB
C++
35 lines
1.0 KiB
C++
#ifndef __HH_PROJECTILE_FREEZER_H
|
|
#define __HH_PROJECTILE_FREEZER_H
|
|
|
|
class hhProjectileFreezer : public hhProjectile {
|
|
CLASS_PROTOTYPE( hhProjectileFreezer );
|
|
|
|
public:
|
|
void Spawn();
|
|
|
|
virtual void Launch( const idVec3 &start, const idMat3 &axis, const idVec3 &pushVelocity, const float timeSinceFire = 0.0f, const float launchPower = 1.0f, const float dmgPower = 1.0f );
|
|
|
|
void Save( idSaveGame *savefile ) const;
|
|
void Restore( idRestoreGame *savefile );
|
|
|
|
virtual bool Collide( const trace_t& collision, const idVec3& velocity );
|
|
virtual int ProcessCollision( const trace_t* collision, const idVec3& velocity );
|
|
|
|
protected:
|
|
virtual void Ticker();
|
|
|
|
protected:
|
|
void Event_Touch( idEntity *other, trace_t *trace );
|
|
void Event_Collision_Bounce( const trace_t* collision, const idVec3 &velocity );
|
|
|
|
void ApplyDamageEffect( idEntity* hitEnt, const trace_t* collision, const idVec3& velocity, const char* damageDefName );
|
|
|
|
protected:
|
|
int decelStart;
|
|
int decelEnd;
|
|
|
|
idVec3 cachedVelocity;
|
|
bool collided;
|
|
};
|
|
|
|
#endif |