1
0
Fork 0
cuberite-2a/src/Entities/ThrownEggEntity.h

53 lines
937 B
C++

// ThrownEggEntity.h
// Declares the cThrownEggEntity class representing a regular thrown egg
#pragma once
#include "ProjectileEntity.h"
// tolua_begin
class cThrownEggEntity :
public cProjectileEntity
{
// tolua_end
using Super = cProjectileEntity;
public: // tolua_export
CLASS_PROTODEF(cThrownEggEntity)
cThrownEggEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed);
protected:
// cProjectileEntity overrides:
virtual void OnHitSolidBlock(Vector3d a_HitPos, eBlockFace a_HitFace) override;
virtual void OnHitEntity(cEntity & a_EntityHit, Vector3d a_HitPos) override;
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
// Randomly decides whether to spawn a chicken where the egg lands.
void TrySpawnChicken(Vector3d a_HitPos);
private:
/** Time in ticks to wait for the hit animation to begin before destroying */
int m_DestroyTimer;
} ; // tolua_export