Fixed Enderman, monster aggro in creative (#1051)

Fixed endermans by making a invulnerable check
This commit is contained in:
Us3ful"-Dev authored and GitHub committed 2026-03-09 22:05:56 -05:00
1 parent 5f777a7f45
commit c90a6bf5ab
2 files changed
+14 -2

No files matched your search

+6 -1
View File
@@ -410,9 +410,14 @@ bool EnderMan::hurt(DamageSource *source, float damage)
if ( dynamic_cast<EntityDamageSource *>(source) != nullptr && source->getEntity()->instanceof(eTYPE_PLAYER)) if ( dynamic_cast<EntityDamageSource *>(source) != nullptr && source->getEntity()->instanceof(eTYPE_PLAYER))
{ {
aggroedByPlayer = true; if (!dynamic_pointer_cast<Player>(source->getEntity())->abilities.invulnerable)
{
aggroedByPlayer = true;
}
else setCreepy(false);
} }
if (dynamic_cast<IndirectEntityDamageSource *>(source) != nullptr) if (dynamic_cast<IndirectEntityDamageSource *>(source) != nullptr)
{ {
aggroedByPlayer = false; aggroedByPlayer = false;
+8 -1
View File
@@ -60,7 +60,14 @@ bool Monster::hurt(DamageSource *source, float dmg)
if (sourceEntity != shared_from_this()) if (sourceEntity != shared_from_this())
{ {
attackTarget = sourceEntity; if (sourceEntity->instanceof(eTYPE_PLAYER))
{
if (!dynamic_pointer_cast<Player>(sourceEntity)->abilities.invulnerable)
{
attackTarget = sourceEntity;
}
}
else attackTarget = sourceEntity;
} }
return true; return true;
} }