Terminus
projectile.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <util/timer.h>
5 
6 namespace terminus
7 {
8 
18 {
19 public:
20  Projectile(World & world);
21  virtual ~Projectile();
22 
23  virtual void localUpdate() override;
24 
25  virtual void onCollisionWith(AbstractPhysicsObject* other) override;
26 
27 protected:
28  float damage() const;
29  int maxAgeInMilliseconds() const;
30 
31  virtual short myCollisionType() const override;
32  virtual short possibleCollisionTypes() const override;
33 
34 protected:
36 };
37 
38 }
float damage() const
Definition: projectile.cpp:46
int maxAgeInMilliseconds() const
Definition: projectile.cpp:82
virtual void onCollisionWith(AbstractPhysicsObject *other) override
Gets called on collision with another AbstractPhysicsObject.
Definition: projectile.cpp:51
The AbstractPhysicsObject class represents a graphical scene element with a physics-based aspect...
Definition: abstractphysicsobject.h:21
Projectile(World &world)
Definition: projectile.cpp:16
A dynamic physics object is a physics object that is mostly passive. It will be affected by forces an...
Definition: dynamicphysicsobject.h:12
unsigned int TimerID
Definition: timer.h:21
virtual short possibleCollisionTypes() const override
The groups of objects that this object will collide with.
Definition: projectile.cpp:92
The World class represents a running game instance and contains all graphical (3D) elements of the sc...
Definition: world.h:46
virtual void localUpdate() override
override this method to update this objects state
Definition: projectile.cpp:36
virtual ~Projectile()
Definition: projectile.cpp:29
Timer::TimerID m_lifeTimer
Definition: projectile.h:35
The Projectile class simulates and renders a projectile. It also handles collisions with Wagons...
Definition: projectile.h:17
Definition: eventhandler.cpp:18
virtual short myCollisionType() const override
The collision group that this object is member of.
Definition: projectile.cpp:87