Commit Graph

21483 Commits

Author SHA1 Message Date
Killyana
14445088ea Quest/Script: Breakfast Of Champions
Set both Earthshaker Drum Events to 50%
2019-04-30 02:23:23 +02:00
ccrs
dfa54d3bf4 Core/Object: re-change faction template related logs 2019-04-29 22:48:45 +02:00
ccrs
aee26eb467 Core/Misc: standarize a couple logs 2019-04-28 19:41:30 +02:00
jackpoz
3f0ce98f7c Core/Commands: Fix heap-use-after-free in ".ticket delete" command
Reported by Address Sanitizer
2019-04-28 18:56:45 +02:00
jackpoz
f45ebe71b0 Core/Misc: Fix *nix build 2019-04-28 18:53:01 +02:00
jackpoz
70fcdc687d Core/Pet: Change assert to error log
Change assert added in 43dec9e4d0 to error log since charmed creatures lose their AI until next map update
2019-04-28 18:47:19 +02:00
jackpoz
37478c5ac1 Core/CrashHandler: Update placeholder text 2019-04-28 17:53:19 +02:00
jackpoz
25bcb1a0b2 Core/CrashHandler: Remove sensible data from crashlogs 2019-04-28 17:32:53 +02:00
Shauren
408d68717c Core/Misc: Fixed -Wcast-function-type warning 2019-04-28 16:30:15 +02:00
jackpoz
26b6cb0584 Core/Misc: Fix some GCC 8 warnings 2019-04-28 15:59:34 +02:00
jackpoz
d910ffd779 Core/MMaps: Revert PATHFIND_INCOMPLETE handling change in ChaseMovementGenerator in 386b5a6fd9 since the current hp reset code in Creature::Update() will reset the hp of bosses as soon as CanNotReachTarget() is true. In case of boss mechanics like Abub'Rekhan at Naxx where the boss throws the player in the air, a PATHFIND_INCOMPLETE path is returned.
The code in Creature::Update() should be modified to wait a few seconds before resetting the hp. PATHFIND_NOPATH / PATHFIND_INCOMPLETE don't really mean that the Creature can't attack the player anyway either.
2019-04-28 14:50:33 +02:00
jackpoz
e3a9a9bfb2 Core/Scripts: Rename recent GameObject spell overloads to fix GCC warnings
Rename recent GameObject spell overloads (they used to accept only Unit as parameters) to fix GCC warnings about partial function override.
2019-04-27 23:48:39 +02:00
jackpoz
71d15ea25b Scripts/Commands: Add .debug asan commands
Add ".debug asan memoryleak" and ".debug asan outofbounds" commands to trigger Address Sanitizer warnings at runtime (or other dynamic analysis tools)
2019-04-27 20:11:48 +02:00
jackpoz
0d1ff7446d Shared/Metric: Fix a rare memory leak
Fix a memory leak in Metric happening only when enabling/disabling Metric from configs at runtime, leaking the metric added between last SendBatch() call and the ScheduleSend() call in the same function. The only way to reproduce this is to actually freeze the thread calling SendBatch(), disable metric, reload config, unfreeze the thread.
2019-04-27 17:18:13 +02:00
jackpoz
844e7ee926 Scripts/Guards: Fix infinite loop in npc_air_force_bots
Fix infinite loop in npc_air_force_bots happening when aura 38067 was removed, triggering MoveInLineOfSight() that would add back the aura. Only 1 aura add/remove for guard for player is allowed now.
2019-04-27 16:32:41 +02:00
jackpoz
f26f716714 Core/Commands: Fix .cheat god command letting you die
Fix .cheat god command still letting you die with Area Aura like Slime near Thaddius, broken since 777b287dff
2019-04-27 14:40:28 +02:00
jackpoz
1c833f28e4 Core/Maps: Fix crash caused by setActive(false) called after DespawnOrUnsummon()
Fix crash caused by WorldObject::setActive(false) called after WorldObject::DespawnOrUnsummon() happening because the WorldObject would be set as not active but then Map::RemoveFromActiveHelper() would not be called because of not being in world anymore.
Whenever setActive() gets desync'd with what Map actually contains a rare crash would happen since Map only reads a few values of the active WorldObject, making it hard to reproduce. If this happens again some ASSERT calls should be added (or a check in Map::RemoveFromMap() could be added about if the WorldObject is in Map::m_activeNonPlayers container).
2019-04-27 13:57:46 +02:00
Killyana
56b65329e5 Core: Restore reset in EscortAI::InitializeAI (#23197)
Closes  #23008
2019-04-25 17:57:54 +02:00
Jozef Dúc
32e1de39a2 Core/Object: Range check (#23179)
* Should solve #23062. All credits to @xvwyh

* Remove unused variables

* Remove unused variable

* Cast int32 to uint32

* Remove G3D headers from core header file

* Change door distance

* Update GameObject.cpp

Add newline

* Update GameObject.h

Indentation
2019-04-24 20:39:01 +02:00
jackpoz
16a154c4e8 Core/GameObject: Code cleanup 2019-04-24 20:33:04 +02:00
Killyana
9db64666dc Core/GameObject: Remove summoned gobs properly from the map without effecting other cases
Ref 0e8e3828f4
Ref #23115
2019-04-24 20:08:07 +02:00
ForesterDev
ae8750716f Scripts/Commands: add some missing checks for .guild create command (#23201)
* Core/Conditions: implement CONDITION_GAMEMASTER

* Scripts/Commands: add some missing checks for .guild create command
2019-04-24 16:58:55 +02:00
Keader
f163c2f96a Scripts/Trial of the Crusader: Fixed Resilience will Fix achievement
Broken by 2362e9c794
2019-04-24 11:55:58 -03:00
Killyana
21667f97cb Indentation 2019-04-23 16:50:39 +02:00
Killyana
65afe47580 Indentation 2019-04-23 16:49:32 +02:00
Killyana
0e8e3828f4 Core/GameObject: Delete summoned gobs and DestroyForNearbyPlayers gobs spawned with negative spawn time once the gob is deactivated 2019-04-23 16:43:49 +02:00
Sorikoff
4468a538ff Scripts/Scarlet Enclave: Unworthy Initiate (#23195) 2019-04-22 11:25:17 -03:00
Sorikoff
90d4254a87 Scripts: Minor improvements to recently migrated scripts (#23189)
Ref: 2cfaeb1400
2019-04-21 11:22:39 -03:00
Keader
961bc9d829 Scripts/Spells: Fixed a console error inspell_dru_lifebloom
Closes #23192
2019-04-21 11:01:59 -03:00
Trond B. Krokli
f9b1e4a032 Core/conf: conf.dist typo & grammar corrections (#23190)
- Typo and spelling corrections
- Grammar corrections, English grammar
- Minor adjustments in example code readability
- Capitalization adjustments to keep consistency
  with existing idioms, phrases and concepts
2019-04-21 15:59:48 +02:00
jackpoz
b33934f6ce Core/Calendar: Improve calendar timezone handling
Improve calendar timezone handling by at least creating events with the correct time if both client and server are in the same timezone. There is currently no information received from the client about in which timezone it is.
2019-04-19 23:45:07 +02:00
Aokromes
63aa5d1e35 Core/SmartScripts: Implement SMART_ACTION_PLAY_CINEMATIC
By Malcrom
2019-04-17 23:59:02 +02:00
Aokromes
91bcf20b02 Core/SmartScripts: Reserve SMART_ACTION_PLAY_CINEMATIC 2019-04-17 22:10:08 +02:00
jackpoz
f88a5b12bd Core/Database: Delete gameobject_addon data when deleting a GameObject from the database
Close #23076
2019-04-17 21:01:32 +02:00
Killyana
c318b3e16d Spell/Script: Kill logs spam for spell_ioc_parachute_ic
Closes #23163
2019-04-17 16:40:25 +02:00
ccrs
6e011c974d Core/Movement: replace multiset::find with std::find in MotionMaster
same reasoning as 11de6b5
Container's find uses the defined custom comparator
2019-04-17 00:06:06 +02:00
ccrs
11de6b5f86 Core/Movement: implement and use new remove method in MotionMaster
All erases within MotionMaster are now done by itr.
Previous impl used value erase which uses the custom comparator which does not identify elements uniquely --> wrong values were deleted

ref #23187#discussion_r275791179
2019-04-16 23:29:04 +02:00
Sorikoff
2cfaeb1400 Scripts/Spells: Migrate Some Scripted Spells to Scripts (#23185)
* Migrate spells to scripts

* Simplify code

* I need to sleep

* Update chapter1.cpp

* Use actual damage

* No need in null check here
2019-04-16 09:49:39 +02:00
Chaouki Dhib
50d32fe493 Core/Movement: fix mistake in previous commit
975f1e364a
2019-04-15 23:47:23 +02:00
Chaouki Dhib
975f1e364a Core/Movement: Add time synchronisation (#18189) 2019-04-15 23:31:25 +02:00
ForesterDev
2a6eef76e2 Core/Social: Separated checks for friend and ignored limits (#23181)
* Core/Conditions: implement CONDITION_GAMEMASTER

* Core/Social: Separated checks for friend and ignored limits

* Prevent duplication of contacts

* Limit values should be included in counters

* Codestyle and comments
2019-04-15 15:25:08 +02:00
jackpoz
17bb608a5e Core/MMaps: Fix crash added in 386b5a6fd9 2019-04-14 11:46:51 +02:00
Shauren
d56c671064 Core/Dep: Boost 1.70 compatibility
(cherry picked from commit bcda8dd742)
2019-04-14 01:04:02 +02:00
jackpoz
386b5a6fd9 Core/MMaps: Simplify d182e5f7e7 and handle PATHFIND_INCOMPLETE in ChaseMovementGenerator as "cannot reach the target" 2019-04-12 23:56:29 +02:00
jackpoz
d182e5f7e7 Core/MMaps: Fallback to shortcut for flying units if Detour returned an incomplete path.
Fallback to shortcut for flying units if Detour returned an incomplete path. This is needed when a flying unit should fly to the floor below to reach the target, but since Recastnavigation doesn't support "jumping down" the unit would not find a path to the target.
2019-04-12 23:23:31 +02:00
Giacomo Pozzoni
3230ca74d2 Core/Database: Close the MySQL connection only after getting the last error code 2019-04-12 08:08:57 +02:00
Jozef Dúc
f221fcdd4b Core/Creatures: Filter out trainer spells that belong to a skill that can never be learned by a player with given class and race combination (#23176)
Closes #23172
2019-04-11 21:06:53 +02:00
PolarCookie
5ed77113b6 Core support for breadcrumb quests (#23157)
* Breadcrumb quests support in core

* To Winterspring! & Starfall

* translating ZenoX92's list, part 1

* Carendin Summons is Blood Elf only

* Breadcrumb to an exclusive group

* translating ZenoX92's list, part 2

* class quests

* breadcrumb trails

* better prevquest check

* less harsh error warnings

* minor optimization

* Rename 9999_99_99_99_world.sql to 2019_04_10_00_world.sql
2019-04-10 12:58:40 +02:00
Aokromes
1374658d72 Core/Spell: Move a log to category 2019-04-07 20:29:08 +02:00
Jeremy
9fcbd8f15d Core/Movement: Fix some undermap issues with random movement/fear/blink (#22937)
* Core/Movement:
- Only move to point if there is a path that is not a shortcut (which will make the unit move through terrain)
- Added new function to check if there is a vmap floor without search distance
- Units that can fly, are underground but far above the vmap floor will stay underground (bronze drakes in tanaris)
- Don't remove PATHFIND_SHORTCUT from path type in some cases

* Core/Object: Ignore UpdateAllowedPositionZ for flying units.

- This will make flying units go through mountains instead of going to the top and back to the bottom to reach you.

* Core/Object: Revert some changes and let MovePositionToFirstCollision deal with a position without ground

* Missing groundZ change for objects on transport

* use CanFly instead of IsFlying
2019-04-07 20:15:40 +02:00