xinef1
f431459063
Core/Creatures: Various fixes for creatures, regarding combat conditions, despawning, and few others ( #18998 )
...
* Made some changes to kiting mechanics, simplified code and made taunt auras prolong combat no matter the distance from the spawn
Unified some creature despawning code, removed some brutal direct calls in scripts
Don't play death anim on forced despawn
Removed some redundant visibility changes on creature despawn
Fixed possible problem with pet initializing template info from difficulty greater than normal
Properly keep UNIT_FLAG_IN_COMBAT on UpdateEntry call
Moved RegenerateMana function to general Regenerate(Power) function
Fixed increased health regeneration from polymorph for pets
Implemented CREATURE_TYPE_FLAG_GHOST_VISIBLE, those creatures will be properly seen when player is dead also
Removed hackfix from Gaeriyan and Franclorn Forgewright, fixed properly
Simplified ForcedRespawnTime code in ForcedDespawn
Do not allow to assist unit while evading or when enemy is evading
Do not allow to attack other units when evading or when the unit is evading
Corrected distance checking code before creature is allowed to evade, should fix some common problems
Properly return summon position for summoned creatures as their respawn position
Properly stop all moving units on gossip hello, no matter their npc flags
(cherry picked from commit e1f14215d86fc9f0cd041f0e87bf0a689c086329)
2022-02-16 04:49:24 +01:00
Ovahlord
949f92e0a1
Core/AI: ported charm updates from 335
2021-09-16 16:48:07 +02:00
Keader
f27c4609fc
Scripts/Black Temple: Removed Illidari Council Enconter Frame
2021-08-30 18:05:08 +02:00
ariel-
0792739a98
Core/Scripts: fixed npc immunity flags during Harbinger Skyriss encounter
...
- Added missing _Reset
- Properly register Skyriss summons in SummonList
Closes #21154
Who ordered up an extra large can of whoop-ass?
(cherry picked from commit f8b148c3346e6d5017bf3b044cc36bce32c0cf45)
2021-07-29 21:41:02 +02:00
Ovahlord
40a3d5fe1f
Scripts/BT: fixed warnings
2020-11-05 18:02:57 +01:00
Keader
3b2ef0ec45
Scripts/BT: full instance rewrite
2020-11-05 17:42:33 +01:00
Ovahlord
754c138f89
Core/Spells: ported CastSpell unclusterfucking from 3.3.5 branch
2020-11-04 22:37:11 +01:00
Ovahlord
c9afa1a6ed
Core/Units: renamed SetInFront to SetOrientationTowards to clarify its actual functionality and added comments to SetOrientationTowards, SetFacingTo and SetFacingToObject
2020-09-23 20:48:44 +02:00
Wyrserth
d2b27bc43c
Core/Misc: don't allow players to use/activate/loot non-allowed gameobjects while under the effect of a damage immunity aura ( #23319 )
...
* Core/Misc: don't allow players to use/activate/loot non-allowed gameobjects while under the effect of a damage immunity aura.
* Forgot to change this in last-second rename.
* Apply suggested changes, thanks Shauren!
# Conflicts:
# src/server/game/Entities/GameObject/GameObject.cpp
# src/server/game/Entities/Unit/UnitDefines.h
# src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_ahune.cpp
2020-09-11 15:06:15 +02:00
Warpten
2b2fc5fb8a
Core/Spells: remove PrepareSpellScript and PrepareAuraScript macros and make Hooklist use emplace behaivior ( #174 )
2020-08-28 15:40:26 +02:00
Shauren
07099840db
Scripts: Fix rbac permission for skipping default boss sequencing check
...
# Conflicts:
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_drakkisath.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_gizrul_the_slavener.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_halycon.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_lord_valthalak.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_overlord_wyrmthalak.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_quartermaster_zigris.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_shadow_hunter_voshgajin.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_the_beast.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_urok_doomhowl.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_warmaster_voone.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_azshir_the_sleepless.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_bloodmage_thalnos.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_houndmaster_loksey.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_interrogator_vishas.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_mograine_and_whitemane.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_scorn.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_doctor_theolen_krastinov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_lorekeeper_polkelt.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_the_ravenian.cpp
# src/server/scripts/EasternKingdoms/ShadowfangKeep/shadowfang_keep.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_hexlord.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_janalai.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_nalorakk.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp
# src/server/scripts/Kalimdor/BlackfathomDeeps/boss_aku_mai.cpp
# src/server/scripts/Kalimdor/BlackfathomDeeps/boss_gelihast.cpp
# src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp
# src/server/scripts/Kalimdor/RazorfenDowns/boss_amnennar_the_coldbringer.cpp
# src/server/scripts/Kalimdor/RazorfenDowns/boss_tuten_kash.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_ouro.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp
# src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp
# src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_jedoga_shadowseeker.cpp
# src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp
# src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_krickandick.cpp
# src/server/scripts/Northrend/Gundrak/boss_eck.cpp
# src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp
# src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp
# src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp
# src/server/scripts/Northrend/Naxxramas/boss_loatheb.cpp
# src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
# src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_auriaya.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_xt002.cpp
# src/server/scripts/Northrend/VaultOfArchavon/boss_toravon.cpp
# src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp
# src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp
# src/server/scripts/Outland/BlackTemple/boss_gurtogg_bloodboil.cpp
# src/server/scripts/Outland/BlackTemple/boss_illidan.cpp
# src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp
# src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp
# src/server/scripts/Outland/BlackTemple/boss_supremus.cpp
# src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp
# src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_ahune.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_mennu_the_betrayer.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_rokmar_the_crackler.cpp
# src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_gyrokill.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_dalliah_the_doomsayer.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_wrath_scryer_soccothrates.cpp
2020-07-24 13:08:04 +02:00
Ovahlord
ea8d7093e9
Scripts: fixed build
2020-07-22 19:39:43 +02:00
Treeston
c7c4f267c4
Core/AI: Finally move the "is creature engaged" flag to be a property of the creature AI, where it honestly always belonged. Fixes #17981 and #23602 for real this time.
2020-07-22 19:14:52 +02:00
Treeston
db3282e65a
Combat/Threat: Split ThreatManager::NotifyDisengaged off from ThreatManager::ClearAllThreat. NotifyDisengaged signifies intent to clear the engagement flag, and should only be called from AI. Fixes #23490 .
...
# Conflicts:
# src/server/game/AI/CreatureAI.cpp
# src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp
# src/server/scripts/Kalimdor/zone_desolace.cpp
# src/server/scripts/Northrend/zone_borean_tundra.cpp
2020-07-22 18:38:35 +02:00
Ovahlord
280b8dc799
Fixed build
2020-07-22 15:21:50 +02:00
Treeston
e4ced70a31
Core/Misc: random refactors
2020-07-22 14:55:48 +02:00
Treeston
c60b69a66f
Scripts/Auchindoun: Fix a super edge case crash bug with GM far teleports during Blackheart's charm phase. Follow-up to d80d7c6.
2020-07-22 14:53:51 +02:00
Treeston
4c38fa5906
Core/PlayerAI: Some adjustments:
...
- Add a 2 second delay before the AI begins using spells. This should provide opportunity for counterplay before that rogue activates cloak and goes on an unstoppable rampage among your healers. (Sorry, guys.)
- Stopped the AI from attacking invalid targets under some conditions. It should now properly leash back and follow the charmer if we try to select an invalid target.
- Stopped the AI from constantly re-creating the follow movement generator (and thus spamming movesplines).
2020-07-22 14:46:03 +02:00
Treeston
c2e0dca230
nopch fix
2020-07-22 14:45:36 +02:00
Treeston
ea9b58292e
Scripts/Auchindoun: Last one, hopefully. Remove reliance on large grid searchers by integrating with instance script.
...
# Conflicts:
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/instance_shadow_labyrinth.cpp
2020-07-22 14:45:28 +02:00
Treeston
ed6a4a4bcd
Scripts/Auchindoun: Blackheart the Inciter fully fixed now. I had way too much fun with this one.
...
Two points of note:
1) Spawning 5 invisible triggers with 5 distinct factions which then MC one target each? Biggest. Hack. Ever. Best part? It's blizzlike.
2) For over ten years, I thought it was spelled "Auchinodoun". It's not. It's spelled "Auchindoun". TIL.
# Conflicts:
# sql/old/4.3.4/world/19_2017_06_18/2017_07_21_01_world.sql
2020-07-22 14:44:03 +02:00
Treeston
af9bc15a42
nopch fix 2
2020-07-22 14:43:29 +02:00
Treeston
6de2a6e928
nopch fix
2020-07-22 14:43:25 +02:00
Treeston
365a473e56
Scripts/Auchindoun: Replace the Blackheart the Inciter hack-filled script with a slightly less hack-filled script that actually mostly works. This should at least make the boss encounter possible to complete. No claims to correctness, of course.
...
# Conflicts:
# sql/old/4.3.4/world/19_2017_06_18/2017_07_21_00_world.sql
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp
2020-07-22 14:42:21 +02:00
treeston
a09db6b4ba
Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
...
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;
# Conflicts:
# src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp
# src/server/game/Entities/Unit/Unit.cpp
# src/server/game/Spells/SpellEffects.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp
# src/server/scripts/EasternKingdoms/ShadowfangKeep/instance_shadowfang_keep.cpp
# src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
# src/server/scripts/EasternKingdoms/zone_tirisfal_glades.cpp
# src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp
# src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp
# src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp
# src/server/scripts/Kalimdor/zone_stonetalon_mountains.cpp
# src/server/scripts/Kalimdor/zone_tanaris.cpp
# src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp
# src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
# src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp
2020-07-22 14:35:53 +02:00
treeston
f2592116ae
Some more refactoring prep for combat/threat ( #19930 ).
...
# Conflicts:
# src/server/game/Combat/ThreatManager.h
# src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_moam.cpp
# src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp
2020-07-22 13:48:18 +02:00
Shauren
6da0e00747
Nopch fix 5 and should be last
2020-07-22 13:46:32 +02:00
Shauren
73e7270673
typo fix
2020-07-22 13:46:28 +02:00
Shauren
cc1df2659e
Nopch fix 4
2020-07-22 13:46:24 +02:00
treeston
3645c382d9
nopch fix episode 3: revenge of that one boss in slabs that is borked anyway
2020-07-22 13:46:20 +02:00
Treeston
ec04d3b2cd
[3.3.5] Combat/Threat rewrite - prep & refactor ( #19966 )
...
* Combat/Threat rewrite (PR #19930 ) prep work. Mostly refactors, and a compatibility layer on ThreatManager/HostileReference that allows scripts to be changed already.
2020-07-22 13:43:23 +02:00
Peter Keresztes Schmidt
cbd6fb2315
Build: Enable -Wimplicit-fallthrough on clang ( #25056 )
...
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs
Related: #25006
* Misc: Add some missing breaks (no-ops) to satisfy clang
Related: #25006
Closes #25055
* Build: Enable -Wimplicit-fallthrough on clang
Closes #25006
# Conflicts:
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Spells/SpellInfo.cpp
# src/server/scripts/Battlefield/BattlefieldWG.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
# src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp
# src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
# src/server/shared/DataStores/DBCDatabaseLoader.cpp
2020-07-18 22:47:52 +02:00
funjoker
adf9e6a004
Core/Misc: Make Clang 10 happier
2020-06-11 21:55:01 +02:00
funjoker
187d537fba
Core/Misc: (try) Make Clang 10 happy
2020-06-11 21:12:34 +02:00
Warpten
0af44ccc01
Core/Spells: implement DoT clipping
...
* Core/Spells: Implementation of DoT clipping.
* Core/Utilities: Backport "EnumFlags v3.0" from master.
* Core/Spells: Switch AURA_REMOVE_MODE to a flag set.
2020-06-04 18:16:03 +02:00
Ovahlord
b653f2f819
Core/Units: ported power type updates from master branch
2020-04-22 03:13:02 +02:00
Ovahlord
77cf10ee5f
Core/Misc: fixed gcc warnings
2020-04-04 20:20:41 +02:00
DevPrime and Evef
b046b19fd3
Core/Scripts: fixed most script related no pch warnings
...
Co-authored-by: Evef <everf@outlook.com >
2020-03-11 12:54:27 +01:00
Aokromes
d6d3f06f06
New year
2020-01-04 18:32:38 +01:00
funjoker
6c56916b29
Misc: Update copyright information
...
Happy new year
2020-01-01 18:47:28 +01:00
Ovahlord
eb15db4522
Core/Movement: first part of porting the new creature hover handling
2019-02-18 01:52:15 +01:00
Ovahlord
5e380763aa
Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
...
# Conflicts:
# src/server/game/DungeonFinding/LFGMgr.h
# src/server/game/Maps/Map.h
# src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp
2018-08-28 04:41:18 +02:00
Ovahlord
c808b981f7
Core/Movement: merged smooth waypoint movement. Followup commits will be merged soon (tm)
2018-08-02 15:38:35 +02:00
Aokromes
370df76016
Scripts/Misc: Use InstanceMap* in InstanceScript instead of Map*
2018-07-28 12:59:44 +02:00
Ovahlord
78ed8acdcc
Core/Instances: merged some master branch commits in preparation for merging the upcomming instance save rewrite
2018-07-28 02:00:24 +02:00
Ovahlord
a0e288e761
Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
2018-07-23 15:57:10 +02:00
Treeston
f441d36d78
Misc: Pass std::chrono types by value everywhere.
2018-07-23 13:53:13 +02:00
Ovahlord
59d169e8e4
Merge branch 'dynamicSpawnMerge' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
...
# Conflicts:
# src/server/game/Entities/Creature/Creature.cpp
# src/server/game/Entities/Object/Object.cpp
# src/server/game/Maps/Map.cpp
# src/server/game/Maps/Map.h
2018-07-21 23:13:55 +02:00
Ovahlord
b976bc1187
Core/Spawns: merged Dynamic Spawning
2018-07-21 20:44:41 +02:00
Ovahlord
8c3194eb13
Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
2018-07-15 18:20:00 +02:00