Merge branch 'azerothcore:master' into Playerbot

This commit is contained in:
bash
2025-10-23 01:57:59 +02:00
committed by GitHub
5 changed files with 11 additions and 8 deletions

View File

@@ -26,4 +26,4 @@ choco install -y --skip-checksums "${INSTALL_ARGS[@]}" cmake.install -y --insta
choco install -y --skip-checksums "${INSTALL_ARGS[@]}" visualstudio2022-workload-nativedesktop choco install -y --skip-checksums "${INSTALL_ARGS[@]}" visualstudio2022-workload-nativedesktop
choco install -y --skip-checksums "${INSTALL_ARGS[@]}" openssl --force --version=3.5.4 choco install -y --skip-checksums "${INSTALL_ARGS[@]}" openssl --force --version=3.5.4
choco install -y --skip-checksums "${INSTALL_ARGS[@]}" boost-msvc-14.3 --force --version=1.87.0 choco install -y --skip-checksums "${INSTALL_ARGS[@]}" boost-msvc-14.3 --force --version=1.87.0
choco install -y --skip-checksums "${INSTALL_ARGS[@]}" mysql --force --version=8.4.4 choco install -y --skip-checksums "${INSTALL_ARGS[@]}" mysql --force --version=8.4.6

View File

@@ -0,0 +1,4 @@
-- DB update 2025_10_19_00 -> 2025_10_21_00
-- Set Unit Flags (Persistence)
UPDATE `creature_template` SET `unit_flags` = `unit_flags` |256|512|33554432 WHERE (`entry` = 29863);

View File

@@ -1776,6 +1776,8 @@ bool WorldObject::CanSeeOrDetect(WorldObject const* obj, bool ignoreStealth, boo
WorldObject const* viewpoint = this; WorldObject const* viewpoint = this;
if (Player const* thisPlayer = ToPlayer()) if (Player const* thisPlayer = ToPlayer())
{ {
viewpoint = thisPlayer->GetSeer();
if (Creature const* creature = obj->ToCreature()) if (Creature const* creature = obj->ToCreature())
{ {
if (TempSummon const* tempSummon = creature->ToTempSummon()) if (TempSummon const* tempSummon = creature->ToTempSummon())
@@ -1815,13 +1817,8 @@ bool WorldObject::CanSeeOrDetect(WorldObject const* obj, bool ignoreStealth, boo
return false; return false;
} }
if (thisPlayer->GetViewpoint())
viewpoint = thisPlayer->GetViewpoint();
if (thisPlayer->GetFarSightDistance() && !thisPlayer->isInFront(obj)) if (thisPlayer->GetFarSightDistance() && !thisPlayer->isInFront(obj))
{
return false; return false;
}
} }
// Xinef: check reversely obj vs viewpoint, object could be a gameObject which overrides _IsWithinDist function to include gameobject size // Xinef: check reversely obj vs viewpoint, object could be a gameObject which overrides _IsWithinDist function to include gameobject size

View File

@@ -2343,6 +2343,7 @@ public:
void SetMover(Unit* target); void SetMover(Unit* target);
void SetSeer(WorldObject* target) { m_seer = target; } void SetSeer(WorldObject* target) { m_seer = target; }
WorldObject* GetSeer() const { return m_seer; }
void SetViewpoint(WorldObject* target, bool apply); void SetViewpoint(WorldObject* target, bool apply);
[[nodiscard]] WorldObject* GetViewpoint() const; [[nodiscard]] WorldObject* GetViewpoint() const;
void StopCastingCharm(Aura* except = nullptr); void StopCastingCharm(Aura* except = nullptr);

View File

@@ -1220,8 +1220,9 @@ public:
if (Vehicle* v = me->GetVehicle()) if (Vehicle* v = me->GetVehicle())
v->RemoveAllPassengers(); v->RemoveAllPassengers();
if (Player* player = killer->GetCharmerOrOwnerPlayerOrPlayerItself()) if (killer)
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_GET_KILLING_BLOWS, 1, 0, me); if (Player* player = killer->GetCharmerOrOwnerPlayerOrPlayerItself())
player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_GET_KILLING_BLOWS, 1, 0, me);
} }
void MoveInLineOfSight(Unit* /*who*/) override {} void MoveInLineOfSight(Unit* /*who*/) override {}