Commit Graph

20620 Commits

Author SHA1 Message Date
Chaouki Dhib 274dede3dc Core/Movement: Correct the allowed distance to target before a repositioning is necessary. #20173
Also getting rid of the wordserveur config parameter 'TargetPosRecalculateRange' since it is no longer needed.
2018-01-08 22:31:30 +01:00
Shauren c01d4ceadc nopch build fix 2018-01-08 20:40:53 +01:00
xinef1 23823f5147 Core/Spells: Defined and implemented some new spell attributes (#18950) 2018-01-08 20:31:21 +01:00
Keader 57672fdf25 Core/Spells: Fixed Shapeshift using macro
Close #21197
Author: lineagedr
2018-01-07 20:51:30 -03:00
kelno 70eb18d0e5 Core/Creature: improve DB linked_respawn handling (#21172)
* Fixed SetCreatureLinkedRespawn function possible erasing/replacing a GameObject link (instead of a creature one)
2018-01-08 00:32:22 +01:00
Treeston f0a394753a 9ad11e6 follow-up, prevent Halion respawn without loot
tagging #21198
2018-01-07 23:13:20 +01:00
Treeston 663a6f2f23 typo fix 2018-01-07 20:35:24 +01:00
Treeston 9ad11e67fb Core/Threat: Fix a potential exploit allowing players to damage a boss without them taking damage.
Scripts/Halion: General cleanup of old hacks no longer needed under new combat system.
2018-01-07 20:32:30 +01:00
Treeston 3bb33e3108 Core/Map: New Map::ForceRespawn to override objections and force a respawn (equivalent to force = true). Use this to fix various GM commands.
Scripts/Valithria: Fix an issue that could get the encounter stuck in an unloaded state.
2018-01-07 19:53:39 +01:00
DanVS 01b18182c0 Core/Spells: Mana potions in druid forms (#21160)
* Fix mana potions in druid forms
2018-01-07 11:26:57 +01:00
Treeston a08ad9aac1 Core/Threat: only send periodic threat list updates while unit is engaged 2018-01-06 17:49:54 +01:00
Treeston cbf5535b74 Revert "Scripts/Commands: Allow to use .tele in combat only to GMs"
This reverts commit 3ae5b72075 - see discussion on commit.
2018-01-06 13:32:11 +01:00
Shauren b2b4f9d1e4 Core/Misc: Added compatibility layer for boost 1.66 and future std:: networking stuff
* Based on work done by @dimiandre in PR #21173

Closes #21171
Closes #21173

(cherry picked from commit dfd2660a85)
2018-01-06 12:30:28 +01:00
Shauren 6da6f1b415 Core/Networking: Activate single threaded optimization for io_service running in NetworkThread
(cherry picked from commit 9711dd3f70)
2018-01-06 12:29:23 +01:00
jackpoz 3ae5b72075 Scripts/Commands: Allow to use .tele in combat only to GMs
Allow to use .tele in combat only to players who can be GMs (even if they have .gm off)
2018-01-06 10:34:54 +01:00
Treeston fdacf12739 Core/Combat: Some more sanity check asserts to try and track down #21187.
Also, some anti-annoyance treatment for dot tele.
2018-01-06 01:40:31 +01:00
Treeston 5a9fddaa5a Core/Combat: some more detailed assertions to possibly shed light on #21187. 2018-01-06 00:49:04 +01:00
Treeston e0b609a178 Core/Map: Fix a crash that could happen if a player moved very far away from a creature they were in combat with. Closes #21177. 2018-01-04 15:19:37 +01:00
Moein 18f5eae835 MovementInform should overrides 2018-01-04 09:52:48 +01:00
Treeston 9f9507e6a1 Core/Misc: A variety of clean-up changes, mostly following up on 532ab1c to fix legacy bugs exposed by it:
- Triggers can no longer have a threat list (this may expose some ugliness in old legacy scripts)
- Threat entries are forced to OFFLINE if the AI refuses to attack the target
- Clean up passive creature evade behavior to be more consistent
- Fix a months old issue in spawn group management that would cause "Inactive" to incorrectly show in .list respawns for system groups outside of map 0
- Valithria script cleanups, remove old hacks and make it work with the new system. Closes #21174.
- Some strings cleanup
2018-01-04 04:46:41 +01:00
ariel- e245113660 Core/Spells: fix casting NO_TARGET event spells
Closes #19978
2018-01-03 22:49:13 -03:00
Treeston 08277f589e nopch fixes 2018-01-03 20:53:01 +01:00
Treeston 532ab1c7f8 Core: Combat/threat system rewrite (PR #19930)
- PvE combat is now always mutual. UNIT_FLAG_IN_COMBAT is backed by actual references to the units we're in combat with.
- PvP combat is now also tracked, and almost always mutual; spells like Vanish and Feign Death can break this rule. That means we can easily determine a list of players we're fighting.
- By extension, IsInCombatWith now has sensible behavior when invoked on nonplayers.
- Threat and combat systems are no longer the same.
  - They still have an enforced relationship (threat implies combat - clearing combat clears threat)...
  - ...but we can have combat without threat. A creature (with threat list) isn't considered to be engaged until it has an entry on its threat list...
  - ...which means we can now faithfully replicate retail engage behavior. Combat on projectile launch - engagement start on projectile impact. Yay for progress!
- AI method refactor, as already ported in 6113b9d - `JustEngagedWith`, `JustEnteredCombat` and `JustExitedCombat`.
- Vehicle threat is now properly pooled on the main vehicle body (fixes #16542).
- Various edge case bug fixes for threat redirects (Misdirection "cancelling" Vigilance and similar).
- Target re-selection is now significantly faster.
- Fixed a ton of other smaller edge case bugs, probably.

Closes #7951 and #19998.
2018-01-03 20:04:19 +01:00
Treeston 137955d0d2 missing override 2018-01-02 19:26:31 +01:00
Treeston 129dd33067 Scripts/ZulGurub: Fix an issue that was causing Bloodlord Mandokir to keep casting Frenzy after a wipe despite Oghan being alive. Closes #21158. 2018-01-02 19:23:10 +01:00
ariel- fd7fff80c9 Core/Scripts: fix Millhouse Manastorm resetting dialogs after Skyriss encounter
Closes #21159
2018-01-02 11:45:09 -03:00
ariel- 036a05458e Core/Scripts: cast "Trial of the Naaru: Tenacity" credit spell when criteria is achieved
Closes #21155
2018-01-02 03:35:02 -03:00
ariel- f8b148c334 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?
2018-01-02 03:24:37 -03:00
ariel- a5d4f34c31 Core/Scripts: Implemented Shifting Naaru Sliver 2018-01-02 02:58:19 -03:00
ariel- de3fd4d076 Core/Scripts: fix issues with 'Squeeze' on Yogg-Saron encounter
- Unassigned spell script for 25-man difficulty
- Didn't remove aura on 25-man when tentacle killed
2018-01-02 01:33:35 -03:00
ariel- a0dcd9c798 Core/Player: fix issue with SendLoot when using Disarm Trap at maximum range 2018-01-02 01:19:23 -03:00
ariel- 95df8d5028 Core/Player: removed redundant check 2018-01-02 00:29:31 -03:00
ariel- 5b663f1162 Core/Player: implemented facial hair validation 2018-01-01 23:33:04 -03:00
joschiwald 2a5d3a64bc Scripts: Fixed typo
thanks @shenhuyong
2018-01-02 01:46:40 +01:00
ariel- 5e284d4b38 Core/Entities: fix crash
- m_currentSpells and spell would be different in case cancelation of a channeled spell would remove the aura, and aura scripted to cast another channeled spell on remove
- In the above situation, we would lose reference of currentSpell and remove reference from wrong one, this was fixed by clearing the pointer before spell cancelation.

Closes #20172
2018-01-01 17:18:00 -03:00
Treeston 9c1e675590 Core/AI: UnitAI.h trimming part two. WaypointX methods kicked upstairs to CreatureAI.h. 2018-01-01 17:22:29 +01:00
Treeston eacfa9d89a Core/AI: Kick Gossip functions upstairs, from UnitAI to CreatureAI - they only make sense for Creatures anyway.
Also change a very ugly hack in GetDialogStatus. Ew.
2018-01-01 17:07:58 +01:00
Treeston 100ecf69f1 nopch fix 2 for d507a7e 2018-01-01 15:27:51 +01:00
jackpoz 4c0c4ab271 Core/Crash reporting: Add support to char* arrays
Add support to char* array showing the string value instead of the pointer address
2018-01-01 13:17:15 +01:00
tkrokli f6b6f57a6d Update copyright note for 2018
Best wishes for the new year.
2018-01-01 01:55:29 +01:00
Aokromes b1281246dd Update RBAC.h 2017-12-31 23:49:18 +01:00
jackpoz 513e153a13 Core/Misc: Removed unneeded checks 2017-12-31 14:41:31 +01:00
Treeston 60fadb3b96 travis fix 2017-12-31 04:05:01 +01:00
Treeston 6113b9dec2 Core/AI: Some more refactoring prep for #19930. CreatureAI::EnterCombat is now called CreatureAI::JustEngagedWith. There's also two new methods on UnitAI, though they're never invoked right now. 2017-12-31 03:23:42 +01:00
joschiwald 225456fb87 Update RBAC.h 2017-12-30 23:19:20 +01:00
Treeston d20b11cc5b nopch fix 2017-12-30 21:00:29 +01:00
Treeston d507a7e338 [3.3.5] CastSpell unclusterfucking (that's a word now) (#21123)
Core/Spell: The giant CastSpell unclusterfucking (that's a word now) of this generation.

- CastSpell now always takes three arguments - target, spellId, and a struct containing extra arguments
- This struct (CastSpellExtraArgs, see SpellDefines.h) serves as a conglomerate of every previous combination of the 20 billion different CastSpell overloads, all merged into one
  - It has some great utility constructors - check them out! All of these can be used to implicitly construct the ExtraArgs object.
- A gajillion refactors to make everything behave the way it always has
2017-12-30 20:28:41 +01:00
jackpoz 671a34a966 Core/Misc: Fix static analysis issues 2017-12-30 18:06:33 +01:00
joschiwald 790a253893 Core/Spells: Fixed SPELL_AURA_MOD_INCREASE_ENERGY_PERCENT
Closes #20504
2017-12-30 14:53:24 +01:00
Jeremy e42903ec16 Core/Entities: Fix some weird movement due to los issues (#21125)
* Core/Entities: Fix some weird movement due to los issues
- Made LoS check use collisionHeight instead of midsection. Value was too low.
- Gnomes will now have a breath bar more quickly than for example a tauren.
- Changes have been made to checking for ground z as well, some tweeking might be needed but removed most of the scattered +2.0f/+0.5f/we
* Add 0.05f to isInAir check in Creature::UpdateMovementFlags
2017-12-29 22:32:07 +01:00