Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
Projectile Class Referenceabstract

#include <projectile.h>

Inheritance diagram for Projectile:
[legend]
Collaboration diagram for Projectile:
[legend]

Public Member Functions

virtual const SoundProperties & hitSound () const =0
 
WorldObject * creator ()
 
void setCreator (WorldObject *creator)
 
float lifetime () const
 
void setLifetime (float lifetime)
 
virtual void update (float deltaSec) override
 
virtual void onCollision () override
 
virtual void onSpawnFail () override
 
- Public Member Functions inherited from WorldObject
 WorldObject (const Transform &transform)
 
virtual WorldObjectType objectType () const
 
SpawnState spawnState () const
 
void setSpawnState (SpawnState spawnState)
 
CollisionFilter & collisionFilter ()
 
void setCollisionFilter (CollisionFilter *collisionFilter)
 
CollisionDetector & collisionDetector ()
 
Physics & physics ()
 
const Physics & physics () const
 
ObjectInfo & objectInfo ()
 
WorldObjectComponents & components ()
 
const WorldObjectComponents & components () const
 
virtual void addVoxel (Voxel *voxel) override
 
virtual void removeVoxel (Voxel *voxel) override
 
Voxel * crucialVoxel ()
 
void setCrucialVoxel (const glm::ivec3 &cell)
 
bool isCrucialVoxelDestroyed ()
 
void updateTransformAndGeode (const glm::vec3 &position, const glm::quat &orientation)
 
Handle< WorldObject > & handle ()
 
float collisionFieldOfDamage () const
 
void setCollisionFieldOfDamage (float collisionFieldOfDamage)
 
virtual bool passiveForCollisionDetection ()
 
- Public Member Functions inherited from VoxelCluster
 VoxelCluster (float scale)
 
VoxelClusterBounds & bounds ()
 
Transform & transform ()
 
const Transform & transform () const
 
void setTransform (const Transform &transform)
 
const glm::vec3 & position () const
 
const glm::quat & orientation () const
 
Voxel * voxel (const glm::ivec3 &position)
 
const Voxel * voxel (const glm::ivec3 &position) const
 
const std::unordered_map
< glm::ivec3, Voxel * > & 
voxelMap () const
 
int voxelCount () const
 
VoxelRenderData * voxelRenderData ()
 
virtual float emissiveness () const
 
- Public Member Functions inherited from Scriptable
int scriptKey () const
 
void setScriptKey (int key)
 
bool isScriptLocal () const
 
void setScriptLocal (bool local)
 

Protected Member Functions

virtual void onLifetimeOver ()
 
virtual void spawnExplosion ()=0
 

Protected Attributes

WorldObject * m_creator
 
float m_lifetime
 
- Protected Attributes inherited from WorldObject
std::unique_ptr< CollisionFilter > m_collisionFilter
 
std::unique_ptr
< CollisionDetector > 
m_collisionDetector
 
std::unique_ptr< Physics > m_physics
 
std::unique_ptr< ObjectInfo > m_objectInfo
 
std::unique_ptr
< WorldObjectComponents > 
m_components
 
Handle< WorldObject > m_handle
 
Voxel * m_crucialVoxel
 
bool m_crucialVoxelDestroyed
 
float m_collisionFieldOfDamage
 
SpawnState m_spawnState
 
- Protected Attributes inherited from VoxelCluster
std::unordered_map< glm::ivec3,
Voxel * > 
m_voxels
 
std::unique_ptr< VoxelRenderData > m_voxelRenderData
 
std::unique_ptr
< VoxelClusterBounds > 
m_bounds
 
Transform m_transform
 
- Protected Attributes inherited from Scriptable
int m_key
 
bool m_local
 

Additional Inherited Members

- Static Public Attributes inherited from Scriptable
static const int INVALID_KEY = -1
 

Detailed Description

Base class for everything shot by a weapon, characterised by

  • doesn't collide with creator
  • destroyed after lifetime is over

The documentation for this class was generated from the following files: