2014-10-21 19:25:52 +00:00
|
|
|
|
|
|
|
// ThrownSnowballEntity.h
|
|
|
|
|
|
|
|
// Declares the cThrownSnowballEntity representing a snowball that has been thrown
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-04-27 00:24:44 +00:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "ProjectileEntity.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-04-27 00:58:06 +00:00
|
|
|
// tolua_begin
|
|
|
|
|
2014-04-27 00:24:44 +00:00
|
|
|
class cThrownSnowballEntity :
|
2014-04-28 00:03:06 +00:00
|
|
|
public cProjectileEntity
|
2014-04-27 00:24:44 +00:00
|
|
|
{
|
2019-09-29 12:59:24 +00:00
|
|
|
// tolua_end
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2020-04-13 16:38:06 +00:00
|
|
|
using Super = cProjectileEntity;
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2019-09-29 12:59:24 +00:00
|
|
|
public: // tolua_export
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2014-07-22 22:36:13 +00:00
|
|
|
CLASS_PROTODEF(cThrownSnowballEntity)
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2019-09-29 12:59:24 +00:00
|
|
|
cThrownSnowballEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed);
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2014-04-27 00:24:44 +00:00
|
|
|
protected:
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2014-04-27 00:24:44 +00:00
|
|
|
// cProjectileEntity overrides:
|
2017-09-07 08:25:34 +00:00
|
|
|
virtual void OnHitSolidBlock(Vector3d a_HitPos, eBlockFace a_HitFace) override;
|
|
|
|
virtual void OnHitEntity(cEntity & a_EntityHit, Vector3d a_HitPos) override;
|
2015-01-11 21:12:26 +00:00
|
|
|
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
2014-06-22 19:44:01 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
/** Time in ticks to wait for the hit animation to begin before destroying */
|
|
|
|
int m_DestroyTimer;
|
2016-02-05 21:45:45 +00:00
|
|
|
|
2014-07-17 20:15:34 +00:00
|
|
|
} ; // tolua_export
|
2014-10-21 19:25:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|