summaryrefslogtreecommitdiffstats
path: root/src/Entities/ProjectileEntity.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Entities/ProjectileEntity.h')
-rw-r--r--src/Entities/ProjectileEntity.h59
1 files changed, 58 insertions, 1 deletions
diff --git a/src/Entities/ProjectileEntity.h b/src/Entities/ProjectileEntity.h
index 28dd76935..959e81ae5 100644
--- a/src/Entities/ProjectileEntity.h
+++ b/src/Entities/ProjectileEntity.h
@@ -34,6 +34,7 @@ public:
pkEnderPearl = 65,
pkExpBottle = 75,
pkSplashPotion = 73,
+ pkFirework = 76,
pkWitherSkull = 66,
pkFishingFloat = 90,
} ;
@@ -83,7 +84,7 @@ protected:
/// True if the projectile has hit the ground and is stuck there
bool m_IsInGround;
-
+
// cEntity overrides:
virtual void Tick(float a_Dt, cChunk & a_Chunk) override;
virtual void HandlePhysics(float a_Dt, cChunk & a_Chunk) override;
@@ -159,6 +160,9 @@ protected:
/// Timer for pickup collection animation or five minute timeout
float m_Timer;
+ /// Timer for client arrow position confirmation via TeleportEntity
+ float m_HitGroundTimer;
+
/// If true, the arrow is in the process of being collected - don't go to anyone else
bool m_bIsCollected;
@@ -260,6 +264,59 @@ protected:
+class cExpBottleEntity :
+ public cProjectileEntity
+{
+ typedef cProjectileEntity super;
+
+public:
+
+ // tolua_end
+
+ CLASS_PROTODEF(cExpBottleEntity);
+
+ cExpBottleEntity(cEntity * a_Creator, double a_X, double a_Y, double a_Z, const Vector3d & a_Speed);
+
+protected:
+
+ // cProjectileEntity overrides:
+ virtual void OnHitSolidBlock(const Vector3d & a_HitPos, char a_HitFace) override;
+
+ // tolua_begin
+
+};
+
+
+
+
+
+class cFireworkEntity :
+ public cProjectileEntity
+{
+ typedef cProjectileEntity super;
+
+public:
+
+ // tolua_end
+
+ CLASS_PROTODEF(cFireworkEntity);
+
+ cFireworkEntity(cEntity * a_Creator, double a_X, double a_Y, double a_Z);
+
+protected:
+
+ // cProjectileEntity overrides:
+ virtual void OnHitSolidBlock(const Vector3d & a_HitPos, char a_HitFace) override;
+ virtual void HandlePhysics(float a_Dt, cChunk & a_Chunk) override;
+
+ // tolua_begin
+
+};
+
+
+
+
+
class cGhastFireballEntity :
public cProjectileEntity
{