Merge branch 'master' into ScheduleCreatureRespawn

This commit is contained in:
天鹭 2025-10-23 09:25:39 +08:00 committed by GitHub
commit ece853f680
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 15 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[@]}" 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[@]}" mysql --force --version=8.4.4
choco install -y --skip-checksums "${INSTALL_ARGS[@]}" mysql --force --version=8.4.6

View File

@ -0,0 +1,3 @@
-- DB update 2025_10_18_02 -> 2025_10_19_00
--
DELETE FROM `conditions` WHERE (`SourceTypeOrReferenceId` = 13) AND (`SourceGroup` = 1) AND (`SourceEntry` = 52446) AND (`SourceId` = 0) AND (`ElseGroup` = 0) AND (`ConditionTypeOrReference` = 31) AND (`ConditionTarget` = 0) AND (`ConditionValue1` = 3) AND (`ConditionValue2` = 28684) AND (`ConditionValue3` = 0);

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

View File

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

View File

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

View File

@ -181,6 +181,7 @@ public:
else if (param == ACTION_PHASE2)
{
SecondPhase = true;
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
events.ScheduleEvent(EVENT_SKADI_CRUSH, 8s);
events.ScheduleEvent(EVENT_SKADI_SPEAR, 10s);
events.ScheduleEvent(EVENT_SKADI_WHIRLWIND, 15s);