Commit Graph

33354 Commits

Author SHA1 Message Date
Rushor
cfe66ef614 DB/Creature: Katherine Lee
Closes #19095

(cherrypicked from bbc6799cd7)
2019-07-21 21:06:54 +02:00
Rushor
07c1e6ca1d DB/Creature: Mountain Gronns
Closes #19094

(cherrypicked from 4e2a4b7b13)
2019-07-21 21:06:54 +02:00
Rushor
75e2dcb701 DB/Creature: Bleeding Hollow Peon
Closes #19069

(cherrypicked from c5db14d449)
2019-07-21 21:06:54 +02:00
Rushor
e3d1def83e DB/Creature: Living Cyclone
Closes #19065

(cherrypicked from 43b09d2b69)
2019-07-21 21:06:54 +02:00
ariel-
4ce758a726 Update spell_item.cpp
Small indent and codestyle fixes

(cherrypicked from 149e449506)
2019-07-21 21:06:54 +02:00
Aokromes
f0b670212f DB/Misc: Fix one startup error
(cherrypicked from d9c465ed87)
2019-07-21 21:06:54 +02:00
xinef1
4f65dc5e20 Core/Misc: Various crash fixes (#19059)
* Replaced some FindPlayer calls with GetPlayer
Fixed some more crashes

* Correction

(cherrypicked from 14dfc377b4)
2019-07-21 21:06:54 +02:00
xinef1
ad4e63bae1 Core/Misc: Moved CharacterInfo out of world to separate class
Closes #19030

(cherrypicked from 59ce3d6c9b)
2019-07-21 21:06:54 +02:00
Killyana
241e79f434 DB/creature: Restore position for two Wrath Masters changed in a previous commit
(cherrypicked from f91ba9c2a8)
2019-07-21 21:06:54 +02:00
Keader
d400d3d8e9 Core/Scripts: Illidan Stormrage Rewrite (#18963)
Closes #5018

(cherrypicked from 8731975187 and 3194d089cb)
2019-07-21 21:06:54 +02:00
xinef1
36a4e008d0 Corrected immunity checking after recent changes (#19049)
- Shouldn't compare immunity to spells without schoolmask

(cherrypicked from 78a729b6a4)
2019-07-21 21:06:54 +02:00
xinef1
fe63cd3dbb 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

(cherrypicked from e1f14215d8)
2019-07-21 21:06:54 +02:00
Aokromes
a68911472e Rename 2017_02_05_16_world.sql to 2017_02_04_16_world.sql
(cherrypicked from d54a06823e)
2019-07-21 21:06:54 +02:00
Rushor
98dc0656c6 DB/Creature: Slosh
Closes #19043

(cherrypicked from d54a06823e)
2019-07-21 21:06:54 +02:00
Rushor
ac2b6c97e5 DB/Creature: Stormforged Saboteur
Closes #19041

(cherrypicked from 9ee8838840)
2019-07-21 21:06:54 +02:00
xinef1
ca26c33145 Implemented binary resistances and some more (#18933)
- Fixed possible exploit with tamed pets having template immunities
- Implemented binary resistances
- Corrected resistances calculations
- Pets properly inherit players spell penetration
- Fixed doubled block calculation for damaging melee spells
- Auras removing snare effects will only remove the snaring component
- Shapeshifting will properly remove movement impairing auras only and not crowd control (dragon's breath)
- Immunities are properly checked versus all schools appearing in spell, unit is immune only if immune to all schools
- Spells with melee and magic school mask should compare armor reduction with resistances and select smaller reduction
- Demonic Circle: Teleport no longer removes root effects

(cherrypicked from 93746e8c4a)
2019-07-21 21:06:54 +02:00
xinef1
ad008c43b7 Core/Misc: Fix various crashes, also related to multithreading (#19012)
* When iterating groups we have to either do it not in multithreaded context (map updates) or start with checking maps (they are guaranteed to change in single thread update).
* Properly clear ComboPoint references on player remove
* remove some possible references item may have when it is deleted during save.
* Also clear all hostile references when unit is removed from map.

(cherrypicked from 86da1a19bb)
2019-07-21 21:06:54 +02:00
xinef1
92e95ddf55 Core/Spells: Fixed spell effect 93 (SPELL_EFFECT_FORCE_DESELECT) (#19001)
(cherrypicked from 9e1b286984)
2019-07-21 21:06:54 +02:00
Rushor
c050c4f968 DB/Creature: Garm Watcher and Snowblind Devotee
Closes #18991

(cherrypicked from 4187c9f184)
2019-07-21 21:06:54 +02:00
Rushor
e78d3c8500 DB/Creature: Ancient Sentinel
Closes #18990

(cherrypicked from 6da1231802)
2019-07-21 21:06:54 +02:00
Rushor
5d2b1f0efc DB/Creature: Stormforged Loreseeker and Stormforged
Closes #18989

(cherrypicked from 2ab0a8a835)
2019-07-21 21:06:54 +02:00
Rushor
327fc4c143 DB/Creature: Library Guardian and Databank
Closes #18984

(cherrypicked from 3b9d59ffe1)
2019-07-21 21:06:54 +02:00
Rushor
fc9201dc53 DB/Creature: Valkyrion Aspirant
Closes #18983

(cherrypicked from f8604061bf)
2019-07-21 21:06:54 +02:00
Rushor
8c46688640 DB/Creature: Frostborn Scout and Frostfeather Witch/Frostfeather Screecher
Closes #18982

(cherrypicked from 91e0efc663)
2019-07-21 21:06:54 +02:00
Rushor
5a0709e442 DB/Creature: Stormrider and Snowdrift Jormungar
Closes #18979

(cherrypicked from 743dc973e8)
2019-07-21 21:06:54 +02:00
Rushor
57b1bfe55a DB/Loot: Fix prospecting from titanium and saronite
Closes #12011

(cherrypicked from 03f87e400d)
2019-07-21 21:06:54 +02:00
Killyana
411b0c32a0 DB/Creature: Greatfather Aldrimus
Closes #7605

(cherrypicked from 9edad9fc1b)
2019-07-21 21:06:54 +02:00
ariel-
26fe949619 Core/Server: fix duplicated inserts into tutorials table for newly created characters
(cherrypicked from 60dd803bbe)
2019-07-21 21:06:54 +02:00
xinef1
192f088248 Core/Achievements: Mountain o' Mounts and similar achievement will be properly awarded when you have required amount of mounts, not earlier (#19002)
(cherrypicked from 8646e72f18)
2019-07-21 21:06:54 +02:00
Aokromes
d6a6162d6e Rename 9999_99_99_99_world.sql to 2017_01_29_00_world.sql
(cherrypicked from 356f7d5929)
2019-07-21 21:06:54 +02:00
Gerhood
7e83cce81f Core/Spells: implement Mad/Crazy Alchemist's potions
(cherrypicked frombab59b28faad262dc5d9873ca7c0856477ec4d66)
2019-07-21 21:06:54 +02:00
ariel-
894c667d32 Core/World: readd lines lost in rebase
(cherrypicked from d3d6c55650)
2019-07-21 21:06:54 +02:00
ariel-
7f490819f5 Misc: fixed some headers.
Updated year, bye bye 2016!

(cherrypicked from 6245b0703e)
2019-07-21 21:06:54 +02:00
xinef1
07d02d744f Remade who list processing (#18636)
* Remade who list processing, requests are now processed in maps. Player entries are now copied every 5 seconds to dedicated storage (avoids usage of hashmapholder mutex)

(cherrypicked from 88f746935f)
2019-07-21 21:06:54 +02:00
ariel-
b742c87222 Core: add some missing Player Name normalization on input data
(cherrypicked from 6f9e8b6c91)
2019-07-21 21:06:54 +02:00
xinef1
b485f3e673 Few small optimizations here and there (#18684)
Changes list:
- Added CharacterGuidByNameContainer which contains name -> guid unordered map (updated along CharacterInfo)
- Extended CharacterInfo structure with GuildId
- Extended CharacterInfo structure with ArenaTeamId[3], for all possible teams (2v2, 3v3, 5v5)
- Removed CHAR_SEL_GUID_BY_NAME and CHAR_SEL_CHAR_GUID_BY_NAME synchronous queries, name -> guid can be now retrieved in World::GetCharacterGuidByName
- Removed CHAR_SEL_GUID_RACE_ACC_BY_NAME synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid
- Removed CHAR_SEL_CHAR_LEVEL synchronous query, level can be retrieved by guid
- Changed CHAR_SEL_CHARACTER_ACTIONS_SPEC to asynchronous query, action bars are now loaded asynchronously
- Removed CHAR_SEL_CHARACTER_NAME_CLASS synchronous query, guid can be retrieved by name and rest of the data can be retrieved by guid
- Removed CHAR_SEL_PLAYER_ARENA_TEAMS and CHAR_SEL_ARENA_TEAM_ID_BY_PLAYER_GUID synchronous queries, arena teams are now stored in CharacterInfo
- Replaced synchronous db calls with CharacterInfo lookups
- Removed ObjectMgr::GetPlayerGUIDByName, as it used db query
- Replaced some unnecessary UpdateObjectVisibility() calls because they were either duplicated (called few lines above in other function) or it is enough to call DestroyForNearbyPlayers because object is being removed or should be invisible and DestroyForNearbyPlayers is faster
- Corrected typo in Player::DestroyForPlayer, only items in slots 0 to EQUIPMENT_SLOT_END are sent to other players
- Renamed Player::GetGuildIdFromDB to Player::GetGuildIdFromCharacterInfo and changed the function to use CharacterInfo structure
- Renamed Player::GetArenaTeamIdFromDB to Player::GetArenaTeamIdFromCharacterInfo and changed the function to use CharacterInfo structure
- Renamed Player::GetLevelFromDB to Player::GetLevelFromCharacterInfo and changed the function to use CharacterInfo structure
- Removed GameEventMgr::_questToEventLinks and associated functions, eventId is now stored in Quest class under _eventIdForQuest variable
- Changed some functions checking quest status to use other functions for quest status check instead of duplicating code
- Removed callback from add friend, because we can get the guid from appropriate storage, no need to make db query
- Removed callback from add ignore, because we can get the guid from appropriate storage, no need to make db query
- Added callback to unwrap wrapped items asynchronously
- Removed synchronous select in tutorials to check if we have any entries in db, if any entry exists in db, m_TutorialsChanged variable will have TUTORIALS_FLAG_LOADED_FROM_DB flag added and it is no longer necessary to query database

(cherrypicked from b955456008)
2019-07-21 21:06:54 +02:00
Rushor
e6885d50c6 DB/Creature: Stormforged Taskmaster
Closes #18976

(cherrypicked from 6de46d30c9)
2019-07-21 21:06:54 +02:00
Rushor
4aa4aed780 DB/Creature: Iron Sentinel <Servant of Loken>
Closes #18974

(cherrypicked from d5ab68250c)
2019-07-21 21:06:54 +02:00
Rushor
5ee6fd6131 DB/Creature: Wild Elekks
Closes #18970

(cherrypicked from 5d626c8e55)
2019-07-21 21:06:54 +02:00
Rushor
5b74a25947 DB/Creature: Romping Rhino
Closes #18967

(cherrypicked from bb46b09fe8)
2019-07-21 21:06:54 +02:00
Rushor
3f5e9ba575 DB/Creature: Stormforged Iron Giant
Closes #18965

(cherrypicked from 535b727b94)
2019-07-21 21:06:54 +02:00
Rushor
8b23a6a3a4 DB/Quest: The Last of Her Kind
Closes #18962

(cherrypicked from cca6bfee7b)
2019-07-21 21:06:54 +02:00
Rushor
5d5a296b54 DB/Creature: Son of Hodir
Closes #18961

(cherrypicked from 35675ceef1)
2019-07-21 21:06:54 +02:00
Rushor
7bbedad532 DB/Creature: Plains Mammoth
Closes #18960

(cherrypicked from cb466b7543)
2019-07-21 21:06:54 +02:00
Rushor
e170e809ed DB/Creature: Brittle Revenant
Closes #18959

(cherrypicked from 6485a4afd8)
2019-07-21 21:06:54 +02:00
Rushor
3886c2b43b DB/Creature: Stormpeak Wyrm and Stormpeak Hatchling
Closes #18958

(cherrypicked from 57beed2f70)
2019-07-21 21:06:54 +02:00
Rushor
4ff4469f2b DB/Creature: Ice Steppe Bull, Ice Steppe Rhino
Closes #18953

(cherrypicked from fd1e484baa)
2019-07-21 21:06:54 +02:00
Rushor
4fc8797199 DB/Creature: Stormforged Tracker
Closes #18949

(cherrypicked from 3c4c3a26bd)
2019-07-21 21:06:54 +02:00
Rushor
7ce7938cc0 DB/Creature: Hyldnir Overseer and Overseer Syra
Closes #18947

(cherrypicked from 3ad455f87a)
2019-07-21 21:06:54 +02:00
ariel-
f95caecca1 DB/Spell: added conditions for Argent Squire/Gruntling Pennant spells
- Should only target the pet, according to sniffs

(cherrypicked from 77b59c07ad)
2019-07-21 21:06:54 +02:00