Update entity sizes
This commit is contained in:
parent
1394fc8eb5
commit
6e80f7544d
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cArrowEntity::cArrowEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cArrowEntity::cArrowEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkArrow, a_Creator, a_Pos, a_Speed, 0.5, 0.5),
|
Super(pkArrow, a_Creator, a_Pos, a_Speed, 0.5f, 0.5f),
|
||||||
m_PickupState(psNoPickup),
|
m_PickupState(psNoPickup),
|
||||||
m_DamageCoeff(2),
|
m_DamageCoeff(2),
|
||||||
m_IsCritical(false),
|
m_IsCritical(false),
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cBoat::cBoat(Vector3d a_Pos, eMaterial a_Material) :
|
cBoat::cBoat(Vector3d a_Pos, eMaterial a_Material) :
|
||||||
Super(etBoat, a_Pos, 0.98, 0.7),
|
Super(etBoat, a_Pos, 1.375f, 0.5625f),
|
||||||
m_LastDamage(0), m_ForwardDirection(0),
|
m_LastDamage(0), m_ForwardDirection(0),
|
||||||
m_DamageTaken(0.0f), m_Material(a_Material),
|
m_DamageTaken(0.0f), m_Material(a_Material),
|
||||||
m_RightPaddleUsed(false), m_LeftPaddleUsed(false)
|
m_RightPaddleUsed(false), m_LeftPaddleUsed(false)
|
||||||
|
@ -20,7 +20,7 @@ cEnderCrystal::cEnderCrystal(Vector3d a_Pos, bool a_ShowBottom) :
|
|||||||
|
|
||||||
|
|
||||||
cEnderCrystal::cEnderCrystal(Vector3d a_Pos, Vector3i a_BeamTarget, bool a_DisplayBeam, bool a_ShowBottom) :
|
cEnderCrystal::cEnderCrystal(Vector3d a_Pos, Vector3i a_BeamTarget, bool a_DisplayBeam, bool a_ShowBottom) :
|
||||||
Super(etEnderCrystal, a_Pos, 1.0, 1.0),
|
Super(etEnderCrystal, a_Pos, 2.0f, 2.0f),
|
||||||
m_BeamTarget(a_BeamTarget),
|
m_BeamTarget(a_BeamTarget),
|
||||||
m_DisplayBeam(a_DisplayBeam),
|
m_DisplayBeam(a_DisplayBeam),
|
||||||
m_ShowBottom(a_ShowBottom)
|
m_ShowBottom(a_ShowBottom)
|
||||||
@ -92,7 +92,7 @@ void cEnderCrystal::KilledBy(TakeDamageInfo & a_TDI)
|
|||||||
// Destroy first so the Explodinator doesn't find us (when iterating through entities):
|
// Destroy first so the Explodinator doesn't find us (when iterating through entities):
|
||||||
Destroy();
|
Destroy();
|
||||||
|
|
||||||
m_World->DoExplosionAt(6.0, GetPosX(), GetPosY() + (GetHeight() / 2.0), GetPosZ(), true, esEnderCrystal, this);
|
m_World->DoExplosionAt(6.0, GetPosX(), GetPosY() + GetHeight() / 2, GetPosZ(), true, esEnderCrystal, this);
|
||||||
|
|
||||||
const auto Position = GetPosition().Floor();
|
const auto Position = GetPosition().Floor();
|
||||||
if (cChunkDef::IsValidHeight(Position.y))
|
if (cChunkDef::IsValidHeight(Position.y))
|
||||||
|
@ -33,7 +33,7 @@ static UInt32 GetNextUniqueID(void)
|
|||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// cEntity:
|
// cEntity:
|
||||||
|
|
||||||
cEntity::cEntity(eEntityType a_EntityType, Vector3d a_Pos, double a_Width, double a_Height):
|
cEntity::cEntity(eEntityType a_EntityType, Vector3d a_Pos, float a_Width, float a_Height):
|
||||||
m_UniqueID(GetNextUniqueID()),
|
m_UniqueID(GetNextUniqueID()),
|
||||||
m_Health(1),
|
m_Health(1),
|
||||||
m_MaxHealth(1),
|
m_MaxHealth(1),
|
||||||
@ -59,8 +59,6 @@ cEntity::cEntity(eEntityType a_EntityType, Vector3d a_Pos, double a_Width, doubl
|
|||||||
m_IsInLava(false),
|
m_IsInLava(false),
|
||||||
m_IsInWater(false),
|
m_IsInWater(false),
|
||||||
m_IsHeadInWater(false),
|
m_IsHeadInWater(false),
|
||||||
m_Width(a_Width),
|
|
||||||
m_Height(a_Height),
|
|
||||||
m_AirLevel(MAX_AIR_LEVEL),
|
m_AirLevel(MAX_AIR_LEVEL),
|
||||||
m_AirTickTimer(DROWNING_TICKS),
|
m_AirTickTimer(DROWNING_TICKS),
|
||||||
m_TicksAlive(0),
|
m_TicksAlive(0),
|
||||||
@ -71,6 +69,8 @@ cEntity::cEntity(eEntityType a_EntityType, Vector3d a_Pos, double a_Width, doubl
|
|||||||
m_Position(a_Pos),
|
m_Position(a_Pos),
|
||||||
m_WaterSpeed(0, 0, 0),
|
m_WaterSpeed(0, 0, 0),
|
||||||
m_Mass (0.001), // Default 1g
|
m_Mass (0.001), // Default 1g
|
||||||
|
m_Width(a_Width),
|
||||||
|
m_Height(a_Height),
|
||||||
m_InvulnerableTicks(0)
|
m_InvulnerableTicks(0)
|
||||||
{
|
{
|
||||||
m_WorldChangeInfo.m_NewWorld = nullptr;
|
m_WorldChangeInfo.m_NewWorld = nullptr;
|
||||||
@ -1098,7 +1098,7 @@ void cEntity::HandlePhysics(std::chrono::milliseconds a_Dt, cChunk & a_Chunk)
|
|||||||
NextPos = HitCoords;
|
NextPos = HitCoords;
|
||||||
|
|
||||||
// Avoid movement in the direction of the blockface that has been hit and correct for collision box:
|
// Avoid movement in the direction of the blockface that has been hit and correct for collision box:
|
||||||
double HalfWidth = GetWidth() / 2.0;
|
const auto HalfWidth = GetWidth() / 2;
|
||||||
switch (HitBlockFace)
|
switch (HitBlockFace)
|
||||||
{
|
{
|
||||||
case BLOCK_FACE_XM:
|
case BLOCK_FACE_XM:
|
||||||
@ -1714,6 +1714,16 @@ void cEntity::SetIsTicking(bool a_IsTicking)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void cEntity::SetSize(const float a_Width, const float a_Height)
|
||||||
|
{
|
||||||
|
m_Width = a_Width;
|
||||||
|
m_Height = a_Height;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void cEntity::HandleAir(void)
|
void cEntity::HandleAir(void)
|
||||||
{
|
{
|
||||||
// Ref.: https://minecraft.gamepedia.com/Chunk_format
|
// Ref.: https://minecraft.gamepedia.com/Chunk_format
|
||||||
|
@ -169,7 +169,7 @@ public:
|
|||||||
static const UInt32 INVALID_ID = 0; // Exported to Lua in ManualBindings.cpp, ToLua doesn't parse initialized constants.
|
static const UInt32 INVALID_ID = 0; // Exported to Lua in ManualBindings.cpp, ToLua doesn't parse initialized constants.
|
||||||
|
|
||||||
|
|
||||||
cEntity(eEntityType a_EntityType, Vector3d a_Pos, double a_Width, double a_Height);
|
cEntity(eEntityType a_EntityType, Vector3d a_Pos, float a_Width, float a_Height);
|
||||||
virtual ~cEntity() = default;
|
virtual ~cEntity() = default;
|
||||||
|
|
||||||
/** Spawns the entity in the world; returns true if spawned, false if not (plugin disallowed).
|
/** Spawns the entity in the world; returns true if spawned, false if not (plugin disallowed).
|
||||||
@ -225,7 +225,7 @@ public:
|
|||||||
cWorld * GetWorld(void) const { return m_World; }
|
cWorld * GetWorld(void) const { return m_World; }
|
||||||
|
|
||||||
double GetHeadYaw (void) const { return m_HeadYaw; } // In degrees
|
double GetHeadYaw (void) const { return m_HeadYaw; } // In degrees
|
||||||
double GetHeight (void) const { return m_Height; }
|
float GetHeight (void) const { return m_Height; }
|
||||||
double GetMass (void) const { return m_Mass; }
|
double GetMass (void) const { return m_Mass; }
|
||||||
double GetPosX (void) const { return m_Position.x; }
|
double GetPosX (void) const { return m_Position.x; }
|
||||||
double GetPosY (void) const { return m_Position.y; }
|
double GetPosY (void) const { return m_Position.y; }
|
||||||
@ -237,7 +237,7 @@ public:
|
|||||||
double GetSpeedX (void) const { return m_Speed.x; }
|
double GetSpeedX (void) const { return m_Speed.x; }
|
||||||
double GetSpeedY (void) const { return m_Speed.y; }
|
double GetSpeedY (void) const { return m_Speed.y; }
|
||||||
double GetSpeedZ (void) const { return m_Speed.z; }
|
double GetSpeedZ (void) const { return m_Speed.z; }
|
||||||
double GetWidth (void) const { return m_Width; }
|
float GetWidth (void) const { return m_Width; }
|
||||||
|
|
||||||
int GetChunkX(void) const { return FloorC(m_Position.x / cChunkDef::Width); }
|
int GetChunkX(void) const { return FloorC(m_Position.x / cChunkDef::Width); }
|
||||||
int GetChunkZ(void) const { return FloorC(m_Position.z / cChunkDef::Width); }
|
int GetChunkZ(void) const { return FloorC(m_Position.z / cChunkDef::Width); }
|
||||||
@ -579,6 +579,9 @@ public:
|
|||||||
/** Set the entity's status to either ticking or not ticking. */
|
/** Set the entity's status to either ticking or not ticking. */
|
||||||
void SetIsTicking(bool a_IsTicking);
|
void SetIsTicking(bool a_IsTicking);
|
||||||
|
|
||||||
|
/** Update an entity's size, for example, on body stance changes. */
|
||||||
|
void SetSize(float a_Width, float a_Height);
|
||||||
|
|
||||||
/** Adds a mob to the leashed list of mobs. */
|
/** Adds a mob to the leashed list of mobs. */
|
||||||
void AddLeashedMob(cMonster * a_Monster);
|
void AddLeashedMob(cMonster * a_Monster);
|
||||||
|
|
||||||
@ -686,12 +689,6 @@ protected:
|
|||||||
/** If the entity's head is in a water block */
|
/** If the entity's head is in a water block */
|
||||||
bool m_IsHeadInWater;
|
bool m_IsHeadInWater;
|
||||||
|
|
||||||
/** Width of the entity, in the XZ plane. Since entities are represented as cylinders, this is more of a diameter. */
|
|
||||||
double m_Width;
|
|
||||||
|
|
||||||
/** Height of the entity (Y axis). */
|
|
||||||
double m_Height;
|
|
||||||
|
|
||||||
/** Air level of a mobile */
|
/** Air level of a mobile */
|
||||||
int m_AirLevel;
|
int m_AirLevel;
|
||||||
int m_AirTickTimer;
|
int m_AirTickTimer;
|
||||||
@ -748,6 +745,12 @@ private:
|
|||||||
/** Measured in Kilograms (Kg) */
|
/** Measured in Kilograms (Kg) */
|
||||||
double m_Mass;
|
double m_Mass;
|
||||||
|
|
||||||
|
/** Width of the entity, in the XZ plane. Since entities are represented as cylinders, this is more of a diameter. */
|
||||||
|
float m_Width;
|
||||||
|
|
||||||
|
/** Height of the entity (Y axis). */
|
||||||
|
float m_Height;
|
||||||
|
|
||||||
/** If a player hit a entity, the entity receive a invulnerable of 10 ticks.
|
/** If a player hit a entity, the entity receive a invulnerable of 10 ticks.
|
||||||
While this ticks, a player can't hit this entity. */
|
While this ticks, a player can't hit this entity. */
|
||||||
int m_InvulnerableTicks;
|
int m_InvulnerableTicks;
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cExpBottleEntity::cExpBottleEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed) :
|
cExpBottleEntity::cExpBottleEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed) :
|
||||||
Super(pkExpBottle, a_Creator, a_Pos, 0.25, 0.25)
|
Super(pkExpBottle, a_Creator, a_Pos, 0.25f, 0.25f)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cExpOrb::cExpOrb(Vector3d a_Pos, int a_Reward):
|
cExpOrb::cExpOrb(Vector3d a_Pos, int a_Reward):
|
||||||
Super(etExpOrb, a_Pos, 0.98, 0.98), // TODO: Check size
|
Super(etExpOrb, a_Pos, 0.5f, 0.5f),
|
||||||
m_Reward(a_Reward),
|
m_Reward(a_Reward),
|
||||||
m_Timer(0)
|
m_Timer(0)
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cFallingBlock::cFallingBlock(Vector3d a_Position, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta):
|
cFallingBlock::cFallingBlock(Vector3d a_Position, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta):
|
||||||
Super(etFallingBlock, a_Position, 0.98, 0.98),
|
Super(etFallingBlock, a_Position, 0.98f, 0.98f),
|
||||||
m_BlockType(a_BlockType),
|
m_BlockType(a_BlockType),
|
||||||
m_BlockMeta(a_BlockMeta)
|
m_BlockMeta(a_BlockMeta)
|
||||||
{
|
{
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cFireChargeEntity::cFireChargeEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cFireChargeEntity::cFireChargeEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkFireCharge, a_Creator, a_Pos, 0.3125, 0.3125)
|
Super(pkFireCharge, a_Creator, a_Pos, 0.3125f, 0.3125f)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
SetGravity(0);
|
SetGravity(0);
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cFireworkEntity::cFireworkEntity(cEntity * a_Creator, Vector3d a_Pos, const cItem & a_Item) :
|
cFireworkEntity::cFireworkEntity(cEntity * a_Creator, Vector3d a_Pos, const cItem & a_Item) :
|
||||||
Super(pkFirework, a_Creator, a_Pos, 0.25, 0.25),
|
Super(pkFirework, a_Creator, a_Pos, 0.25f, 0.25f),
|
||||||
m_TicksToExplosion(a_Item.m_FireworkItem.m_FlightTimeInTicks),
|
m_TicksToExplosion(a_Item.m_FireworkItem.m_FlightTimeInTicks),
|
||||||
m_FireworkItem(a_Item)
|
m_FireworkItem(a_Item)
|
||||||
{
|
{
|
||||||
|
@ -75,7 +75,7 @@ protected:
|
|||||||
|
|
||||||
|
|
||||||
cFloater::cFloater(Vector3d a_Pos, Vector3d a_Speed, UInt32 a_PlayerID, int a_CountDownTime) :
|
cFloater::cFloater(Vector3d a_Pos, Vector3d a_Speed, UInt32 a_PlayerID, int a_CountDownTime) :
|
||||||
Super(etFloater, a_Pos, 0.2, 0.2),
|
Super(etFloater, a_Pos, 0.25f, 0.25f),
|
||||||
m_BitePos(a_Pos),
|
m_BitePos(a_Pos),
|
||||||
m_CanPickupItem(false),
|
m_CanPickupItem(false),
|
||||||
m_PickupCountDown(0),
|
m_PickupCountDown(0),
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cHangingEntity::cHangingEntity(eEntityType a_EntityType, eBlockFace a_Facing, Vector3d a_Pos) :
|
cHangingEntity::cHangingEntity(eEntityType a_EntityType, eBlockFace a_Facing, Vector3d a_Pos) :
|
||||||
Super(a_EntityType, a_Pos, 0.8, 0.8),
|
Super(a_EntityType, a_Pos, 0.5f, 0.5f),
|
||||||
m_Facing(cHangingEntity::BlockFaceToProtocolFace(a_Facing))
|
m_Facing(cHangingEntity::BlockFaceToProtocolFace(a_Facing))
|
||||||
{
|
{
|
||||||
SetMaxHealth(1);
|
SetMaxHealth(1);
|
||||||
|
@ -95,7 +95,7 @@ protected:
|
|||||||
// cMinecart:
|
// cMinecart:
|
||||||
|
|
||||||
cMinecart::cMinecart(ePayload a_Payload, Vector3d a_Pos):
|
cMinecart::cMinecart(ePayload a_Payload, Vector3d a_Pos):
|
||||||
Super(etMinecart, a_Pos, 0.98, 0.7),
|
Super(etMinecart, a_Pos, 0.98f, 0.7f),
|
||||||
m_Payload(a_Payload),
|
m_Payload(a_Payload),
|
||||||
m_LastDamage(0),
|
m_LastDamage(0),
|
||||||
m_DetectorRailPosition(0, 0, 0),
|
m_DetectorRailPosition(0, 0, 0),
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPawn::cPawn(eEntityType a_EntityType, double a_Width, double a_Height) :
|
cPawn::cPawn(eEntityType a_EntityType, float a_Width, float a_Height) :
|
||||||
Super(a_EntityType, Vector3d(), a_Width, a_Height),
|
Super(a_EntityType, Vector3d(), a_Width, a_Height),
|
||||||
m_EntityEffects(tEffectMap()),
|
m_EntityEffects(tEffectMap()),
|
||||||
m_LastGroundHeight(0),
|
m_LastGroundHeight(0),
|
||||||
|
@ -22,7 +22,7 @@ public:
|
|||||||
|
|
||||||
CLASS_PROTODEF(cPawn)
|
CLASS_PROTODEF(cPawn)
|
||||||
|
|
||||||
cPawn(eEntityType a_EntityType, double a_Width, double a_Height);
|
cPawn(eEntityType a_EntityType, float a_Width, float a_Height);
|
||||||
|
|
||||||
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
||||||
virtual void KilledBy(TakeDamageInfo & a_TDI) override;
|
virtual void KilledBy(TakeDamageInfo & a_TDI) override;
|
||||||
|
@ -94,7 +94,7 @@ protected:
|
|||||||
// cPickup:
|
// cPickup:
|
||||||
|
|
||||||
cPickup::cPickup(Vector3d a_Pos, const cItem & a_Item, bool IsPlayerCreated, Vector3f a_Speed, int a_LifetimeTicks, bool a_CanCombine):
|
cPickup::cPickup(Vector3d a_Pos, const cItem & a_Item, bool IsPlayerCreated, Vector3f a_Speed, int a_LifetimeTicks, bool a_CanCombine):
|
||||||
Super(etPickup, a_Pos, 0.2, 0.2),
|
Super(etPickup, a_Pos, 0.25f, 0.25f),
|
||||||
m_Timer(0),
|
m_Timer(0),
|
||||||
m_Item(a_Item),
|
m_Item(a_Item),
|
||||||
m_bCollected(false),
|
m_bCollected(false),
|
||||||
|
@ -104,7 +104,7 @@ cPlayer::BodyStanceGliding::BodyStanceGliding(cPlayer & a_Player) :
|
|||||||
|
|
||||||
|
|
||||||
cPlayer::cPlayer(const std::shared_ptr<cClientHandle> & a_Client) :
|
cPlayer::cPlayer(const std::shared_ptr<cClientHandle> & a_Client) :
|
||||||
Super(etPlayer, 0.6, 1.8),
|
Super(etPlayer, 0.6f, 1.8f),
|
||||||
m_BodyStance(BodyStanceStanding(*this)),
|
m_BodyStance(BodyStanceStanding(*this)),
|
||||||
m_FoodLevel(MAX_FOOD_LEVEL),
|
m_FoodLevel(MAX_FOOD_LEVEL),
|
||||||
m_FoodSaturationLevel(5.0),
|
m_FoodSaturationLevel(5.0),
|
||||||
@ -2821,16 +2821,6 @@ void cPlayer::AddKnownItem(const cItem & a_Item)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
void cPlayer::SetSize(const float a_Width, const float a_Height)
|
|
||||||
{
|
|
||||||
m_Width = a_Width;
|
|
||||||
m_Height = a_Height;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void cPlayer::AddKnownRecipe(UInt32 a_RecipeId)
|
void cPlayer::AddKnownRecipe(UInt32 a_RecipeId)
|
||||||
{
|
{
|
||||||
auto Response = m_KnownRecipes.insert(a_RecipeId);
|
auto Response = m_KnownRecipes.insert(a_RecipeId);
|
||||||
|
@ -592,9 +592,6 @@ public:
|
|||||||
If the item is already known, does nothing. */
|
If the item is already known, does nothing. */
|
||||||
void AddKnownItem(const cItem & a_Item);
|
void AddKnownItem(const cItem & a_Item);
|
||||||
|
|
||||||
/** Update a player's size, for example, on body stance changes. */
|
|
||||||
void SetSize(float a_Width, float a_Height);
|
|
||||||
|
|
||||||
// cEntity overrides:
|
// cEntity overrides:
|
||||||
virtual void AttachTo(cEntity * a_AttachTo) override;
|
virtual void AttachTo(cEntity * a_AttachTo) override;
|
||||||
virtual void Detach(void) override;
|
virtual void Detach(void) override;
|
||||||
|
@ -219,7 +219,7 @@ protected:
|
|||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// cProjectileEntity:
|
// cProjectileEntity:
|
||||||
|
|
||||||
cProjectileEntity::cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, double a_Width, double a_Height):
|
cProjectileEntity::cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, float a_Width, float a_Height):
|
||||||
Super(etProjectile, a_Pos, a_Width, a_Height),
|
Super(etProjectile, a_Pos, a_Width, a_Height),
|
||||||
m_ProjectileKind(a_Kind),
|
m_ProjectileKind(a_Kind),
|
||||||
m_CreatorData(
|
m_CreatorData(
|
||||||
@ -237,7 +237,7 @@ cProjectileEntity::cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cProjectileEntity::cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed, double a_Width, double a_Height):
|
cProjectileEntity::cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed, float a_Width, float a_Height):
|
||||||
cProjectileEntity(a_Kind, a_Creator, a_Pos, a_Width, a_Height)
|
cProjectileEntity(a_Kind, a_Creator, a_Pos, a_Width, a_Height)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
|
@ -48,8 +48,8 @@ public:
|
|||||||
|
|
||||||
CLASS_PROTODEF(cProjectileEntity)
|
CLASS_PROTODEF(cProjectileEntity)
|
||||||
|
|
||||||
cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, double a_Width, double a_Height);
|
cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, float a_Width, float a_Height);
|
||||||
cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed, double a_Width, double a_Height);
|
cProjectileEntity(eKind a_Kind, cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed, float a_Width, float a_Height);
|
||||||
|
|
||||||
/** Creates a new instance of the specified projectile entity.
|
/** Creates a new instance of the specified projectile entity.
|
||||||
a_Item is the item from which the projectile originated (such as firework or arrow). */
|
a_Item is the item from which the projectile originated (such as firework or arrow). */
|
||||||
|
@ -17,7 +17,7 @@ cSplashPotionEntity::cSplashPotionEntity(
|
|||||||
Vector3d a_Speed,
|
Vector3d a_Speed,
|
||||||
const cItem & a_Item
|
const cItem & a_Item
|
||||||
):
|
):
|
||||||
Super(pkSplashPotion, a_Creator, a_Pos, 0.25, 0.25),
|
Super(pkSplashPotion, a_Creator, a_Pos, 0.25f, 0.25f),
|
||||||
m_Item(a_Item),
|
m_Item(a_Item),
|
||||||
m_DestroyTimer(-1)
|
m_DestroyTimer(-1)
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cTNTEntity::cTNTEntity(Vector3d a_Pos, unsigned a_FuseTicks) :
|
cTNTEntity::cTNTEntity(Vector3d a_Pos, unsigned a_FuseTicks) :
|
||||||
Super(etTNT, a_Pos, 0.98, 0.98),
|
Super(etTNT, a_Pos, 0.98f, 0.98f),
|
||||||
m_FuseTicks(a_FuseTicks)
|
m_FuseTicks(a_FuseTicks)
|
||||||
{
|
{
|
||||||
SetGravity(-16.0f);
|
SetGravity(-16.0f);
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cThrownEggEntity::cThrownEggEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cThrownEggEntity::cThrownEggEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkEgg, a_Creator, a_Pos, 0.25, 0.25),
|
Super(pkEgg, a_Creator, a_Pos, 0.25f, 0.25f),
|
||||||
m_DestroyTimer(-1)
|
m_DestroyTimer(-1)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cThrownEnderPearlEntity::cThrownEnderPearlEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cThrownEnderPearlEntity::cThrownEnderPearlEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkEnderPearl, a_Creator, a_Pos, 0.25, 0.25),
|
Super(pkEnderPearl, a_Creator, a_Pos, 0.25f, 0.25f),
|
||||||
m_DestroyTimer(-1)
|
m_DestroyTimer(-1)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cThrownSnowballEntity::cThrownSnowballEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cThrownSnowballEntity::cThrownSnowballEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkSnowball, a_Creator, a_Pos, 0.25, 0.25),
|
Super(pkSnowball, a_Creator, a_Pos, 0.25f, 0.25f),
|
||||||
m_DestroyTimer(-1)
|
m_DestroyTimer(-1)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cWitherSkullEntity::cWitherSkullEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
cWitherSkullEntity::cWitherSkullEntity(cEntity * a_Creator, Vector3d a_Pos, Vector3d a_Speed):
|
||||||
Super(pkWitherSkull, a_Creator, a_Pos, 0.25, 0.25)
|
Super(pkWitherSkull, a_Creator, a_Pos, 0.3125f, 0.3125f)
|
||||||
{
|
{
|
||||||
SetSpeed(a_Speed);
|
SetSpeed(a_Speed);
|
||||||
SetGravity(0);
|
SetGravity(0);
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cAggressiveMonster::cAggressiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, double a_Width, double a_Height) :
|
cAggressiveMonster::cAggressiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, float a_Width, float a_Height) :
|
||||||
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
||||||
{
|
{
|
||||||
m_EMPersonality = AGGRESSIVE;
|
m_EMPersonality = AGGRESSIVE;
|
||||||
|
@ -20,8 +20,8 @@ public:
|
|||||||
const AString & a_SoundHurt,
|
const AString & a_SoundHurt,
|
||||||
const AString & a_SoundDeath,
|
const AString & a_SoundDeath,
|
||||||
const AString & a_SoundAmbient,
|
const AString & a_SoundAmbient,
|
||||||
double a_Width,
|
float a_Width,
|
||||||
double a_Height
|
float a_Height
|
||||||
);
|
);
|
||||||
|
|
||||||
virtual void Tick (std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
virtual void Tick (std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cBat::cBat(void) :
|
cBat::cBat(void) :
|
||||||
Super("Bat", mtBat, "entity.bat.hurt", "entity.bat.death", "entity.bat.ambient", 0.5, 0.9)
|
Super("Bat", mtBat, "entity.bat.hurt", "entity.bat.death", "entity.bat.ambient", 0.5f, 0.9f)
|
||||||
{
|
{
|
||||||
SetGravity(-2.0f);
|
SetGravity(-2.0f);
|
||||||
SetAirDrag(0.05f);
|
SetAirDrag(0.05f);
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cBlaze::cBlaze(void) :
|
cBlaze::cBlaze(void) :
|
||||||
Super("Blaze", mtBlaze, "entity.blaze.hurt", "entity.blaze.death", "entity.blaze.ambient", 0.6, 1.8),
|
Super("Blaze", mtBlaze, "entity.blaze.hurt", "entity.blaze.death", "entity.blaze.ambient", 0.6f, 1.8f),
|
||||||
m_IsCharging(false),
|
m_IsCharging(false),
|
||||||
m_ChargeTimer(0)
|
m_ChargeTimer(0)
|
||||||
{
|
{
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cCaveSpider::cCaveSpider(void) :
|
cCaveSpider::cCaveSpider(void) :
|
||||||
Super("CaveSpider", mtCaveSpider, "entity.spider.hurt", "entity.spider.death", "entity.spider.ambient", 0.7, 0.5)
|
Super("CaveSpider", mtCaveSpider, "entity.spider.hurt", "entity.spider.death", "entity.spider.ambient", 0.7f, 0.5f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cChicken::cChicken(void) :
|
cChicken::cChicken(void) :
|
||||||
Super("Chicken", mtChicken, "entity.chicken.hurt", "entity.chicken.death", "entity.chicken.ambient", 0.4, 0.7),
|
Super("Chicken", mtChicken, "entity.chicken.hurt", "entity.chicken.death", "entity.chicken.ambient", 0.4f, 0.7f),
|
||||||
m_EggDropTimer(0)
|
m_EggDropTimer(0)
|
||||||
{
|
{
|
||||||
SetGravity(-2.0f);
|
SetGravity(-2.0f);
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cCow::cCow(void) :
|
cCow::cCow(void) :
|
||||||
Super("Cow", mtCow, "entity.cow.hurt", "entity.cow.death", "entity.cow.ambient", 0.9, 1.3)
|
Super("Cow", mtCow, "entity.cow.hurt", "entity.cow.death", "entity.cow.ambient", 0.9f, 1.4f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cCreeper::cCreeper(void) :
|
cCreeper::cCreeper(void) :
|
||||||
Super("Creeper", mtCreeper, "entity.creeper.hurt", "entity.creeper.death", "entity.creeper.ambient", 0.6, 1.8),
|
Super("Creeper", mtCreeper, "entity.creeper.hurt", "entity.creeper.death", "entity.creeper.ambient", 0.6f, 1.7f),
|
||||||
m_bIsBlowing(false),
|
m_bIsBlowing(false),
|
||||||
m_bIsCharged(false),
|
m_bIsCharged(false),
|
||||||
m_BurnedWithFlintAndSteel(false),
|
m_BurnedWithFlintAndSteel(false),
|
||||||
|
@ -10,8 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cEnderDragon::cEnderDragon(void) :
|
cEnderDragon::cEnderDragon(void) :
|
||||||
// TODO: Vanilla source says this, but is it right? Dragons fly, they don't stand
|
Super("EnderDragon", mtEnderDragon, "entity.enderdragon.hurt", "entity.enderdragon.death", "entity.enderdragon.ambient", 16, 8)
|
||||||
Super("EnderDragon", mtEnderDragon, "entity.enderdragon.hurt", "entity.enderdragon.death", "entity.enderdragon.ambient", 16.0, 8.0)
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ protected:
|
|||||||
|
|
||||||
|
|
||||||
cEnderman::cEnderman(void) :
|
cEnderman::cEnderman(void) :
|
||||||
Super("Enderman", mtEnderman, "entity.endermen.hurt", "entity.endermen.death", "entity.endermen.ambient", 0.5, 2.9),
|
Super("Enderman", mtEnderman, "entity.endermen.hurt", "entity.endermen.death", "entity.endermen.ambient", 0.6f, 2.9f),
|
||||||
m_bIsScreaming(false),
|
m_bIsScreaming(false),
|
||||||
m_CarriedBlock(E_BLOCK_AIR),
|
m_CarriedBlock(E_BLOCK_AIR),
|
||||||
m_CarriedMeta(0)
|
m_CarriedMeta(0)
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cGiant::cGiant(void) :
|
cGiant::cGiant(void) :
|
||||||
Super("Giant", mtGiant, "entity.zombie.hurt", "entity.zombie.death", "entity.zombie.ambient", 3.6, 10.8)
|
Super("Giant", mtGiant, "entity.zombie.hurt", "entity.zombie.death", "entity.zombie.ambient", 3.6f, 12)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cGuardian::cGuardian(void) :
|
cGuardian::cGuardian(void) :
|
||||||
Super("Guardian", mtGuardian, "entity.guardian.hurt", "entity.guardian.death", "entity.guardian.ambient", 0.875, 0.8)
|
Super("Guardian", mtGuardian, "entity.guardian.hurt", "entity.guardian.death", "entity.guardian.ambient", 0.85f, 0.85f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cHorse::cHorse(int Type, int Color, int Style, int TameTimes) :
|
cHorse::cHorse(int Type, int Color, int Style, int TameTimes) :
|
||||||
Super("Horse", mtHorse, "entity.horse.hurt", "entity.horse.death", "entity.horse.ambient", 1.4, 1.6),
|
Super("Horse", mtHorse, "entity.horse.hurt", "entity.horse.death", "entity.horse.ambient", 1.4f, 1.6f),
|
||||||
cEntityWindowOwner(this),
|
cEntityWindowOwner(this),
|
||||||
m_bHasChest(false),
|
m_bHasChest(false),
|
||||||
m_bIsEating(false),
|
m_bIsEating(false),
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cIronGolem::cIronGolem(void) :
|
cIronGolem::cIronGolem(void) :
|
||||||
Super("IronGolem", mtIronGolem, "entity.irongolem.hurt", "entity.irongolem.death", "entity.irongolem.ambient", 1.4, 2.9)
|
Super("IronGolem", mtIronGolem, "entity.irongolem.hurt", "entity.irongolem.death", "entity.irongolem.ambient", 1.4f, 2.7f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,7 +7,15 @@
|
|||||||
|
|
||||||
|
|
||||||
cMagmaCube::cMagmaCube(int a_Size) :
|
cMagmaCube::cMagmaCube(int a_Size) :
|
||||||
Super("MagmaCube", mtMagmaCube, Printf("entity.%smagmacube.hurt", GetSizeName(a_Size).c_str()), Printf("entity.%smagmacube.death", GetSizeName(a_Size).c_str()), "", 0.6 * a_Size, 0.6 * a_Size),
|
Super(
|
||||||
|
"MagmaCube",
|
||||||
|
mtMagmaCube,
|
||||||
|
Printf("entity.%smagmacube.hurt", GetSizeName(a_Size).c_str()),
|
||||||
|
Printf("entity.%smagmacube.death", GetSizeName(a_Size).c_str()),
|
||||||
|
"",
|
||||||
|
0.51f * a_Size,
|
||||||
|
0.51f * a_Size
|
||||||
|
),
|
||||||
m_Size(a_Size)
|
m_Size(a_Size)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ static const struct
|
|||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// cMonster:
|
// cMonster:
|
||||||
|
|
||||||
cMonster::cMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, double a_Width, double a_Height)
|
cMonster::cMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, float a_Width, float a_Height)
|
||||||
: Super(etMonster, a_Width, a_Height)
|
: Super(etMonster, a_Width, a_Height)
|
||||||
, m_EMState(IDLE)
|
, m_EMState(IDLE)
|
||||||
, m_EMPersonality(AGGRESSIVE)
|
, m_EMPersonality(AGGRESSIVE)
|
||||||
|
@ -45,7 +45,7 @@ public:
|
|||||||
a_MobType is the type of the mob (also used in the protocol ( http://wiki.vg/Entities#Mobs 2012_12_22))
|
a_MobType is the type of the mob (also used in the protocol ( http://wiki.vg/Entities#Mobs 2012_12_22))
|
||||||
a_SoundHurt and a_SoundDeath are assigned into m_SoundHurt and m_SoundDeath, respectively
|
a_SoundHurt and a_SoundDeath are assigned into m_SoundHurt and m_SoundDeath, respectively
|
||||||
*/
|
*/
|
||||||
cMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, double a_Width, double a_Height);
|
cMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, float a_Width, float a_Height);
|
||||||
|
|
||||||
CLASS_PROTODEF(cMonster)
|
CLASS_PROTODEF(cMonster)
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cMooshroom::cMooshroom(void) :
|
cMooshroom::cMooshroom(void) :
|
||||||
Super("Mooshroom", mtMooshroom, "entity.cow.hurt", "entity.cow.death", "entity.cow.ambient", 0.9, 1.3)
|
Super("Mooshroom", mtMooshroom, "entity.cow.hurt", "entity.cow.death", "entity.cow.ambient", 0.9f, 1.4f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
cOcelot::cOcelot(void) :
|
cOcelot::cOcelot(void) :
|
||||||
Super("Ocelot", mtOcelot, "entity.cat.hurt", "entity.cat.death", "entity.cat.ambient", 0.6, 0.8),
|
Super("Ocelot", mtOcelot, "entity.cat.hurt", "entity.cat.death", "entity.cat.ambient", 0.6f, 0.7f),
|
||||||
m_IsSitting(false),
|
m_IsSitting(false),
|
||||||
m_IsTame(false),
|
m_IsTame(false),
|
||||||
m_IsBegging(false),
|
m_IsBegging(false),
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPassiveAggressiveMonster::cPassiveAggressiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, double a_Width, double a_Height) :
|
cPassiveAggressiveMonster::cPassiveAggressiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, float a_Width, float a_Height) :
|
||||||
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
||||||
{
|
{
|
||||||
m_EMPersonality = PASSIVE;
|
m_EMPersonality = PASSIVE;
|
||||||
|
@ -20,8 +20,8 @@ public:
|
|||||||
const AString & a_SoundHurt,
|
const AString & a_SoundHurt,
|
||||||
const AString & a_SoundDeath,
|
const AString & a_SoundDeath,
|
||||||
const AString & a_SoundAmbient,
|
const AString & a_SoundAmbient,
|
||||||
double a_Width,
|
float a_Width,
|
||||||
double a_Height
|
float a_Height
|
||||||
);
|
);
|
||||||
|
|
||||||
virtual bool DoTakeDamage(TakeDamageInfo & a_TDI) override;
|
virtual bool DoTakeDamage(TakeDamageInfo & a_TDI) override;
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPassiveMonster::cPassiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, double a_Width, double a_Height) :
|
cPassiveMonster::cPassiveMonster(const AString & a_ConfigName, eMonsterType a_MobType, const AString & a_SoundHurt, const AString & a_SoundDeath, const AString & a_SoundAmbient, float a_Width, float a_Height) :
|
||||||
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
Super(a_ConfigName, a_MobType, a_SoundHurt, a_SoundDeath, a_SoundAmbient, a_Width, a_Height)
|
||||||
{
|
{
|
||||||
m_EMPersonality = PASSIVE;
|
m_EMPersonality = PASSIVE;
|
||||||
|
@ -21,8 +21,8 @@ public:
|
|||||||
const AString & a_SoundHurt,
|
const AString & a_SoundHurt,
|
||||||
const AString & a_SoundDeath,
|
const AString & a_SoundDeath,
|
||||||
const AString & a_SoundAmbient,
|
const AString & a_SoundAmbient,
|
||||||
double a_Width,
|
float a_Width,
|
||||||
double a_Height
|
float a_Height
|
||||||
);
|
);
|
||||||
|
|
||||||
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
virtual void Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk) override;
|
||||||
|
@ -8,13 +8,12 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPathFinder::cPathFinder(double a_MobWidth, double a_MobHeight) :
|
cPathFinder::cPathFinder(float a_MobWidth, float a_MobHeight) :
|
||||||
m_Path(),
|
m_Width(a_MobWidth),
|
||||||
|
m_Height(a_MobHeight),
|
||||||
m_GiveUpCounter(0),
|
m_GiveUpCounter(0),
|
||||||
m_NotFoundCooldown(0)
|
m_NotFoundCooldown(0)
|
||||||
{
|
{
|
||||||
m_Width = a_MobWidth;
|
|
||||||
m_Height = a_MobHeight;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ public:
|
|||||||
@param a_MobWidth The mob width.
|
@param a_MobWidth The mob width.
|
||||||
@param a_MobHeight The mob height.
|
@param a_MobHeight The mob height.
|
||||||
*/
|
*/
|
||||||
cPathFinder(double a_MobWidth, double a_MobHeight);
|
cPathFinder(float a_MobWidth, float a_MobHeight);
|
||||||
|
|
||||||
/** Updates the PathFinder's internal state and returns a waypoint.
|
/** Updates the PathFinder's internal state and returns a waypoint.
|
||||||
A waypoint is a coordinate which the mob can safely move to from its current position in a straight line.
|
A waypoint is a coordinate which the mob can safely move to from its current position in a straight line.
|
||||||
@ -41,10 +41,10 @@ public:
|
|||||||
private:
|
private:
|
||||||
|
|
||||||
/** The width of the Mob which owns this PathFinder. */
|
/** The width of the Mob which owns this PathFinder. */
|
||||||
double m_Width;
|
float m_Width;
|
||||||
|
|
||||||
/** The height of the Mob which owns this PathFinder. */
|
/** The height of the Mob which owns this PathFinder. */
|
||||||
double m_Height;
|
float m_Height;
|
||||||
|
|
||||||
/** The current cPath instance we have. This is discarded and recreated when a path recalculation is needed. */
|
/** The current cPath instance we have. This is discarded and recreated when a path recalculation is needed. */
|
||||||
std::unique_ptr<cPath> m_Path;
|
std::unique_ptr<cPath> m_Path;
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cPig::cPig(void) :
|
cPig::cPig(void) :
|
||||||
Super("Pig", mtPig, "entity.pig.hurt", "entity.pig.death", "entity.pig.ambient", 0.9, 0.9),
|
Super("Pig", mtPig, "entity.pig.hurt", "entity.pig.death", "entity.pig.ambient", 0.9f, 0.9f),
|
||||||
m_bIsSaddled(false)
|
m_bIsSaddled(false)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,7 @@ cRabbit::cRabbit(void) :
|
|||||||
|
|
||||||
|
|
||||||
cRabbit::cRabbit(eRabbitType Type, int MoreCarrotTicks) :
|
cRabbit::cRabbit(eRabbitType Type, int MoreCarrotTicks) :
|
||||||
Super("Rabbit", mtRabbit, "entity.rabbit.hurt", "entity.rabbit.death", "entity.rabbit.ambient", 0.82, 0.68),
|
Super("Rabbit", mtRabbit, "entity.rabbit.hurt", "entity.rabbit.death", "entity.rabbit.ambient", 0.4f, 0.5f),
|
||||||
m_Type(Type),
|
m_Type(Type),
|
||||||
m_MoreCarrotTicks(MoreCarrotTicks)
|
m_MoreCarrotTicks(MoreCarrotTicks)
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cSheep::cSheep(int a_Color) :
|
cSheep::cSheep(int a_Color) :
|
||||||
Super("Sheep", mtSheep, "entity.sheep.hurt", "entity.sheep.death", "entity.sheep.ambient", 0.6, 1.3),
|
Super("Sheep", mtSheep, "entity.sheep.hurt", "entity.sheep.death", "entity.sheep.ambient", 0.9f, 1.3f),
|
||||||
m_IsSheared(false),
|
m_IsSheared(false),
|
||||||
m_WoolColor(a_Color),
|
m_WoolColor(a_Color),
|
||||||
m_TimeToStopEating(-1)
|
m_TimeToStopEating(-1)
|
||||||
|
@ -12,6 +12,15 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
cSilverfish::cSilverfish() :
|
||||||
|
Super("Silverfish", mtSilverfish, "entity.silverfish.hurt", "entity.silverfish.death", "entity.silverfish.ambient", 0.4f, 0.3f)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool cSilverfish::DoTakeDamage(TakeDamageInfo &a_TDI)
|
bool cSilverfish::DoTakeDamage(TakeDamageInfo &a_TDI)
|
||||||
{
|
{
|
||||||
// Call on our brethren to attack!
|
// Call on our brethren to attack!
|
||||||
|
@ -14,10 +14,7 @@ class cSilverfish:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
cSilverfish():
|
cSilverfish();
|
||||||
Super("Silverfish", mtSilverfish, "entity.silverfish.hurt", "entity.silverfish.death", "entity.silverfish.ambient", 0.3, 0.4)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
CLASS_PROTODEF(cSilverfish)
|
CLASS_PROTODEF(cSilverfish)
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cSkeleton::cSkeleton(void) :
|
cSkeleton::cSkeleton(void) :
|
||||||
Super("Skeleton", mtSkeleton, "entity.skeleton.hurt", "entity.skeleton.death", "entity.skeleton.ambient", 0.6, 1.8)
|
Super("Skeleton", mtSkeleton, "entity.skeleton.hurt", "entity.skeleton.death", "entity.skeleton.ambient", 0.6f, 1.99f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@ cSlime::cSlime(int a_Size) :
|
|||||||
Printf("entity.%sslime.hurt", GetSizeName(a_Size).c_str()),
|
Printf("entity.%sslime.hurt", GetSizeName(a_Size).c_str()),
|
||||||
Printf("entity.%sslime.death", GetSizeName(a_Size).c_str()),
|
Printf("entity.%sslime.death", GetSizeName(a_Size).c_str()),
|
||||||
"",
|
"",
|
||||||
0.6 * a_Size,
|
0.51f * a_Size,
|
||||||
0.6 * a_Size
|
0.51f * a_Size
|
||||||
),
|
),
|
||||||
m_Size(a_Size)
|
m_Size(a_Size)
|
||||||
{
|
{
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cSnowGolem::cSnowGolem(void) :
|
cSnowGolem::cSnowGolem(void) :
|
||||||
Super("SnowGolem", mtSnowGolem, "entity.snowman.hurt", "entity.snowman.death", "entity.snowman.ambient", 0.4, 1.8)
|
Super("SnowGolem", mtSnowGolem, "entity.snowman.hurt", "entity.snowman.death", "entity.snowman.ambient", 0.7f, 1.9f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cSpider::cSpider(void) :
|
cSpider::cSpider(void) :
|
||||||
Super("Spider", mtSpider, "entity.spider.hurt", "entity.spider.death", "entity.spider.ambient", 1.4, 0.9)
|
Super("Spider", mtSpider, "entity.spider.hurt", "entity.spider.death", "entity.spider.ambient", 1.4f, 0.9f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cSquid::cSquid(void) :
|
cSquid::cSquid(void) :
|
||||||
Super("Squid", mtSquid, "entity.squid.hurt", "entity.squid.death", "entity.squid.ambient", 0.95, 0.95)
|
Super("Squid", mtSquid, "entity.squid.hurt", "entity.squid.death", "entity.squid.ambient", 0.8f, 0.8f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cVillager::cVillager(eVillagerType VillagerType) :
|
cVillager::cVillager(eVillagerType VillagerType) :
|
||||||
Super("Villager", mtVillager, "entity.villager.hurt", "entity.villager.death", "entity.villager.ambient", 0.6, 1.8),
|
Super("Villager", mtVillager, "entity.villager.hurt", "entity.villager.death", "entity.villager.ambient", 0.6f, 1.95f),
|
||||||
m_ActionCountDown(-1),
|
m_ActionCountDown(-1),
|
||||||
m_Type(VillagerType),
|
m_Type(VillagerType),
|
||||||
m_VillagerAction(false)
|
m_VillagerAction(false)
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cWitch::cWitch(void) :
|
cWitch::cWitch(void) :
|
||||||
Super("Witch", mtWitch, "entity.witch.hurt", "entity.witch.death", "entity.witch.ambient", 0.6, 1.8)
|
Super("Witch", mtWitch, "entity.witch.hurt", "entity.witch.death", "entity.witch.ambient", 0.6f, 1.95f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cWither::cWither(void) :
|
cWither::cWither(void) :
|
||||||
Super("Wither", mtWither, "entity.wither.hurt", "entity.wither.death", "entity.wither.ambient", 0.9, 4.0),
|
Super("Wither", mtWither, "entity.wither.hurt", "entity.wither.death", "entity.wither.ambient", 0.9f, 3.5f),
|
||||||
m_WitherInvulnerableTicks(220)
|
m_WitherInvulnerableTicks(220)
|
||||||
{
|
{
|
||||||
SetMaxHealth(300);
|
SetMaxHealth(300);
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cWitherSkeleton::cWitherSkeleton(void) :
|
cWitherSkeleton::cWitherSkeleton(void) :
|
||||||
Super("WitherSkeleton", mtWitherSkeleton, "entity.wither_skeleton.hurt", "entity.wither_skeleton.death", "entity.wither_skeleton.ambient", 0.7, 2.4)
|
Super("WitherSkeleton", mtWitherSkeleton, "entity.wither_skeleton.hurt", "entity.wither_skeleton.death", "entity.wither_skeleton.ambient", 0.7f, 2.4f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cWolf::cWolf(void) :
|
cWolf::cWolf(void) :
|
||||||
Super("Wolf", mtWolf, "entity.wolf.hurt", "entity.wolf.death", "entity.wolf.ambient", 0.6, 0.8),
|
Super("Wolf", mtWolf, "entity.wolf.hurt", "entity.wolf.death", "entity.wolf.ambient", 0.6f, 0.85f),
|
||||||
m_IsSitting(false),
|
m_IsSitting(false),
|
||||||
m_IsTame(false),
|
m_IsTame(false),
|
||||||
m_IsBegging(false),
|
m_IsBegging(false),
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cZombie::cZombie() :
|
cZombie::cZombie() :
|
||||||
Super("Zombie", mtZombie, "entity.zombie.hurt", "entity.zombie.death", "entity.zombie.ambient", 0.6, 1.8)
|
Super("Zombie", mtZombie, "entity.zombie.hurt", "entity.zombie.death", "entity.zombie.ambient", 0.6f, 1.95f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cZombiePigman::cZombiePigman(void) :
|
cZombiePigman::cZombiePigman(void) :
|
||||||
Super("ZombiePigman", mtZombiePigman, "entity.zombie_pig.hurt", "entity.zombie_pig.death", "entity.zombie_pig.ambient", 0.6, 1.8)
|
Super("ZombiePigman", mtZombiePigman, "entity.zombie_pig.hurt", "entity.zombie_pig.death", "entity.zombie_pig.ambient", 0.6f, 1.95f)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
|
|
||||||
cZombieVillager::cZombieVillager(cVillager::eVillagerType a_Profession) :
|
cZombieVillager::cZombieVillager(cVillager::eVillagerType a_Profession) :
|
||||||
Super("ZombieVillager", mtZombieVillager, "entity.zombie_villager.hurt", "entity.zombie_villager.death", "entity.ambient", 0.6, 1.8),
|
Super("ZombieVillager", mtZombieVillager, "entity.zombie_villager.hurt", "entity.zombie_villager.death", "entity.ambient", 0.6f, 1.95f),
|
||||||
m_ConversionTime(-1),
|
m_ConversionTime(-1),
|
||||||
m_Profession(a_Profession)
|
m_Profession(a_Profession)
|
||||||
{
|
{
|
||||||
|
@ -446,7 +446,7 @@ void cEnderCrystal::KilledBy(struct TakeDamageInfo & a_TakeDamageInfo)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cEntity::cEntity(enum cEntity::eEntityType a_EntityType, class Vector3<double> a_Pos, double a_Height, double a_Width)
|
cEntity::cEntity(enum cEntity::eEntityType a_EntityType, class Vector3<double> a_Pos, float a_Height, float a_Width)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -790,7 +790,7 @@ void cEntity::ResetPosition(class Vector3<double> a_Pos)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPawn::cPawn(enum cEntity::eEntityType,double a_Width, double a_Height) :
|
cPawn::cPawn(enum cEntity::eEntityType, float a_Width, float a_Height) :
|
||||||
cEntity(etMonster, Vector3d(), a_Height, a_Width)
|
cEntity(etMonster, Vector3d(), a_Height, a_Width)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@ -862,7 +862,7 @@ void cPawn::Tick(std::chrono::milliseconds a_Dt, cChunk & a_Chunk)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cMonster::cMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, double a_Width, double a_Height) :
|
cMonster::cMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, float a_Width, float a_Height) :
|
||||||
cPawn(etMonster, a_Width, a_Height),
|
cPawn(etMonster, a_Width, a_Height),
|
||||||
m_PathFinder(a_Width, a_Height)
|
m_PathFinder(a_Width, a_Height)
|
||||||
{
|
{
|
||||||
@ -870,7 +870,7 @@ cMonster::cMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, c
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cPathFinder::cPathFinder(double a_Width, double a_Height)
|
cPathFinder::cPathFinder(float a_Width, float a_Height)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -1002,7 +1002,7 @@ void cMonster::InStateEscaping(std::chrono::milliseconds a_Dt ,class cChunk & a_
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cAggressiveMonster::cAggressiveMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, double a_Width, double a_Height) :
|
cAggressiveMonster::cAggressiveMonster(const AString & a_StringA, enum eMonsterType a_MonsterType, const AString & a_StringB, const AString & a_StringC, const AString & a_StringD, float a_Width, float a_Height) :
|
||||||
cMonster(a_StringA, a_MonsterType, a_StringB, a_StringC, a_StringD, a_Width, a_Height)
|
cMonster(a_StringA, a_MonsterType, a_StringB, a_StringC, a_StringD, a_Width, a_Height)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user