2012-06-14 13:06:06 +00:00
|
|
|
|
|
|
|
|
|
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
|
|
|
|
|
|
2012-09-23 20:53:08 +00:00
|
|
|
|
#include "Skeleton.h"
|
2012-06-14 13:06:06 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-12-21 11:04:08 +00:00
|
|
|
|
cSkeleton::cSkeleton(void)
|
2012-06-14 13:06:06 +00:00
|
|
|
|
{
|
|
|
|
|
m_MobType = 51;
|
|
|
|
|
GetMonsterConfig("Skeleton");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool cSkeleton::IsA( const char* a_EntityType )
|
|
|
|
|
{
|
2012-12-21 11:04:08 +00:00
|
|
|
|
return ((strcmp(a_EntityType, "cSkeleton") == 0) || super::IsA(a_EntityType));
|
2012-06-14 13:06:06 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void cSkeleton::Tick(float a_Dt)
|
|
|
|
|
{
|
|
|
|
|
cMonster::Tick(a_Dt);
|
|
|
|
|
|
2012-11-01 21:38:20 +00:00
|
|
|
|
// TODO Outsource
|
|
|
|
|
// TODO should do SkyLight check, mobs in the dark don<6F>t burn
|
|
|
|
|
if ((GetWorld()->GetTimeOfDay() < (12000 + 1000)) && (GetMetaData() != BURNING))
|
|
|
|
|
{
|
2012-06-14 13:06:06 +00:00
|
|
|
|
SetMetaData(BURNING); // BURN, BABY, BURN! >:D
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2012-12-21 11:04:08 +00:00
|
|
|
|
void cSkeleton::GetDrops(cItems & a_Drops, cPawn * a_Killer)
|
2012-06-14 13:06:06 +00:00
|
|
|
|
{
|
2012-12-21 11:04:08 +00:00
|
|
|
|
AddRandomDropItem(a_Drops, 0, 2, E_ITEM_ARROW);
|
|
|
|
|
AddRandomDropItem(a_Drops, 0, 2, E_ITEM_BONE);
|
2012-06-14 13:06:06 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|