Commit Graph

371 Commits

Author SHA1 Message Date
Aokromes
b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
Shauren
d934824421 Core/Items: Implement azerite empowered items 2019-12-05 00:12:35 +01:00
Shauren
ec9d624aec Core/Items: Implement azerite essences
* Implement inspecting heart of azeroth data
* Fixed heart of azeroth item level - bonuses now apply
2019-11-22 11:02:04 +01:00
Shauren
ef3485e6fc Core/Items: Refactor loading additional item data (artifacts/azerite) 2019-11-19 14:37:05 +01:00
Shauren
2072258ef4 Core/DBLayer: Escape mysql 8 keywords 2019-11-01 16:20:15 +01:00
Shauren
ee2e49429f Core/PacketIO: Update opcodes and packet structures to 8.2.5 2019-10-27 00:12:41 +02:00
xinef1
60663d1374 Ensure that all actions are compared to fixed point in time (ie. world update start) (#18910)
- Actions will not be dependent on processing moment
- Increased GameObjects cooldown resolution to milliseconds, fixes arming time of traps to be exactly one second and not something from range (1000, 1999)
- Created GameTime namespace and UpdateTime class and moved there some code out of world

(cherrypicked from 7567cafec8)
2019-08-17 20:04:14 +02:00
Shauren
13440434c3 Core/DBLayer: Prevent mixing databases with query holders 2019-07-27 11:45:56 +02:00
Shauren
f6e2b8cdc1 Core/DBLayer: Prevent committing transactions started on a different database 2019-07-27 10:52:33 +02:00
Shauren
e8e89f58fb Core/DBLayer: Prevent using prepared statements on wrong database 2019-07-27 01:00:37 +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
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
Shauren
455959c606 Core/PacketIO: Rewrite updatefield handling 2019-06-08 17:06:57 +02:00
vincent-michael
5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Shauren
0a779bd791 Core/PacketIO: Updated packet structures to 8.0.1 2018-11-05 00:00:34 +01:00
Shauren
7512ffb058 Core/Entities: Update updatefields to 8.0.1.27980 2018-10-10 22:11:41 +02:00
Shauren
ee682544d0 Core/PacketIO: Updated opcode enum to 8.0 2018-10-01 21:01:10 +02:00
Shauren
dd356ea04c Core/Misc: Extended racemasks in db to uint64 2018-09-26 23:08:23 +02:00
Palabola
1675212a2c Core/Misc: Updated race enum 2018-09-16 16:57:47 +02:00
Truthlight
d520854912 Core/Player: Fixed crash when race or faction changing to an allied race. (#22221) 2018-08-03 10:01:55 +02:00
Traesh
55a0a2d3f6 Core/Artifact Handle Artifact tiers + Artifact unlock (3rd relic bonus) (#21593) 2018-07-31 23:31:44 +02:00
joschiwald
05134b0a66 Core/Guild: Handle changing the leader in one db transaction 2018-04-22 14:53:01 +02:00
Shauren
d64c3393db Core/Items: Fixed saving and equipping sets with empty slots 2018-04-11 21:07:39 +02:00
Shauren
007b5a68c5 Core/DataStores: Fixed db2 structures after 7.3.5 2018-03-12 23:11:49 +01:00
Jeremy
f411b7a90e Core/Player: Implement PvP Talents (#19962)
* SPELL_AURA_119 -> SPELL_AURA_PVP_TALENTS
* Learn Honorable Medallion when pvp rules are enabled
2018-03-04 22:32:08 +01:00
Shauren
75603fe1a0 Core/DataStores: Updated db2 structures to 7.3.5.25996 2018-02-18 16:33:50 +01:00
Shauren
4af15915bc Core/PacketIO: Updated opcodes and packet structures to 7.3.5 2018-02-18 16:33:49 +01:00
ariel-
ad8d47b137 Core/Guild: avoid data integrity problems wrapping delete+insert statements in a transaction
(cherry picked from commit 25281ecb31)
2018-01-21 22:01:15 +01:00
vincent-michael
7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
joschiwald
eee5a4f248 Core/Misc: Removed Death knight creation restrictions
Closes #20987
2017-12-10 12:40:13 +01:00
Roger Stebler
4bc9ed0fde Core/Quests: Implemented criteria tree quest objective type
Closes #20161
2017-08-20 17:24:41 +02:00
Shauren
b453e12423 Core/Game: Include cleanup part 5
* ObjectMgr.h
* Player.h
* Unit.h
* G3D should no longer propagate everywhere from Spline/MotionMaster
2017-06-04 01:00:45 +02:00
Shauren
3d7c2ef88f Core/Game: Include cleanup, part 4 - packets and largest headers (after preprocessing, except player/objectmgr) 2017-05-21 23:18:43 +02:00
Shauren
c5d3dd90be Core/Game: Include cleanup
* Mostly aimed at removing Log/DatabaseEnv includes from other headers
* Fix most packet headers including other packet headers - moved common structures such as ItemInstance to their own files
* Moved SAI function definitions to source files (massive or requiring many different dependencies)
2017-05-18 23:53:25 +02:00
Shauren
7e538980a2 Core/Database: Include cleanup 2017-05-12 18:50:27 +02:00
Shauren
3e060fc95d Core/Players: Fixed setting a few updatefields to make client addons relying on player names/realn names behave properly
Ref #19490
2017-04-27 00:03:18 +02:00
Shauren
adbdb64301 Core/PacketIO: Updated server packet structures to 7.2.0 2017-04-15 12:32:36 +02:00
Shauren
0998eca105 Core/PacketIO: Delete opcodes removed in 7.2 2017-04-11 00:27:52 +02:00
Chazy Chaz
c7ea1b97c2 Core/Config: Add option CharDelete.DemonHunter.MinLevel
Closes #19285
2017-03-17 19:08:38 +01:00
Chazy Chaz
c31de25627 Core/Players: Rename "heroic character" to "death knight"
Closes #19286
2017-03-17 19:00:56 +01:00
treeston
78748bff93 Entities/Player: Fixed an edge case bug that could cause a character to get stuck in forced recustomization indefinitely if two or more appearance properties were out of bounds.
(cherry picked from commit d08efca201)

# Conflicts:
#	src/server/game/Entities/Player/Player.cpp
2017-02-12 14:47:27 +01:00
Aokromes
d2dd5f9f02 Core/Logs: Fine tune more logs
And move others to more logical appenders
(cherry picked from commit 1ad24352ac)

# Conflicts:
#	src/server/authserver/Server/AuthSession.cpp
#	src/server/game/Entities/Player/Player.cpp
#	src/server/game/Handlers/AuctionHouseHandler.cpp
#	src/server/game/Handlers/CharacterHandler.cpp
#	src/server/game/Handlers/GuildHandler.cpp
#	src/server/game/Handlers/LootHandler.cpp
#	src/server/game/Handlers/PetitionsHandler.cpp
#	src/server/game/Handlers/QuestHandler.cpp
#	src/server/game/Handlers/SpellHandler.cpp
#	src/server/game/Spells/SpellEffects.cpp
2017-02-11 23:15:24 +01:00
ariel-
5d36f29843 Core/Misc: remove two synch queries and replace them with CharacterInfo cache
(cherry picked from commit 1a52c1cd36)
2017-02-05 21:07:32 +01:00
psayafan
d1e9bb6f26 Core/Player: Add option to prevent rename during character customization
Closes #17420

(cherry picked from commit fe2aed6047)
2017-02-01 22:53:24 +01:00
joschiwald
a6d238b833 Core/Player: Moved character_template from character to world db 2017-01-29 16:09:46 +01:00
joschiwald
bc0d82a81e Core/DBLayer: Fixed copy paste mistake in 8e2634b2b4 2017-01-16 15:09:14 +01:00
Shauren
8e2634b2b4 Core/DBLayer: Convert async queries to new query callbacks and remove old callback handling 2017-01-13 21:38:03 +01:00
vincent-michael
86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Shauren
ac1dc758b9 Core/Units: Cleanup hardcoded magic numbers for byte field offsets 2016-12-13 20:58:22 +01:00
Vincent-Michael
1e323a10df Core/Characters: Implemented demon hunter cinematic at player login 2016-08-28 19:49:35 +02:00