Commit Graph
100 Commits
Author SHA1 Message Date
Shauren b802fbbbdc Build/CI: Use boost 1.77 on appveyor 2023-07-11 17:13:50 +02:00
Shauren d53de05f93 Core/Misc: Prefix include guard to avoid possible conflict with external library 2023-07-02 15:15:58 +02:00
Shauren 07376de9fc Core/Spells: Always remove spell target from transport on teleport spells if spell destination does not target a position on the transport 2023-06-29 20:31:45 +02:00
Shauren 222a3f2203 Build: Silence CMake warnings about boost version being too new 2023-06-12 14:35:24 +02:00
Shauren 6eb536f09c Build: Update required cmake version to 3.18
* Remove cotire

# Conflicts:
#	dep/PackageList.txt
2023-06-05 14:44:56 +02:00
Shauren 08203a1e35 Core/DataStores: Add const to DBStorageIterator dereference operators
# Conflicts:
#	src/server/shared/DataStores/DBStorageIterator.h
2023-06-01 20:50:47 +02:00
Shauren 47048f3dc5 Core/Misc: Future msvc warning fixes 2023-06-01 20:49:58 +02:00
Shauren 1abadc2cb2 CI/Cicle: Restore old behavior for docker push
(cherry picked from commit 470e5686b880a3a5df801dcaa818293d1151953f)
2023-05-19 21:50:12 +02:00
Shauren 0d0aa6a75b Core/GameObjects: Fixed crash with transport gameobjects that have only 1 entry in TransportAnimation/TransportRotation db2
Closes #28673
2023-02-05 22:16:36 +01:00
Shauren 674bba1cae Core/Auras: Fully remove auras that had all of their effect suppressed with immunity 2023-01-19 19:48:46 +01:00
Shauren f97d336d82 Core/Auras: Fixed possible iterator invalidation crashes caused by calling UpdateTargetMap inside loops iterating m_appliedAuras 2023-01-19 17:30:41 +01:00
Shauren 5f21168911 Core/Spells: Added custom spell cast arg 2023-01-17 23:33:13 +01:00
Shauren 6ef977427e Core/Battlegrounds: Unload all grids before destroying battleground object
Closes #28755
2023-01-16 22:14:14 +01:00
Shauren 3e8f413b0c Core/OutdoorPvP: Fixed crash happening by accessing freed memory 2023-01-09 18:19:08 +01:00
Shauren 68cf700178 Core/Maps: Made instance_template no longer required to create and enter instance maps 2023-01-09 11:42:15 +01:00
Shauren 5f8f854794 Core/Players: Allow teleporting to a specific instance id 2023-01-09 11:22:58 +01:00
Shauren eeb2f63b65 Core/Maps: Fixed retrieving terrain info when on child maps 2023-01-02 15:23:21 +01:00
Shauren 597b4bb62f Core/Players: Added error message for death knights attempting to leave their starting zone early 2022-12-31 16:56:50 +01:00
Shauren 29c070b0fe Core/Maps: Implemented WMOAreaTable -1 grouipid fallback 2022-12-31 15:46:26 +01:00
Shauren 37c6835d7a Dep/rapidjson: Upgrade to Tencent/rapidjson@27c3a8dc0e 2022-12-30 17:42:01 +01:00
Shauren bc76d675fa Core/LFG: Filter out lfg dungeons that have invalid map/difficulty pairs 2022-12-30 17:41:35 +01:00
Shauren 55843a00c6 Core/Maps: Split Ebon Hold by faction and removed forced sanctuary hack
original commit: 515c0a43ef8fcf41ffb2785c5940f0234e757ec3
2022-12-29 22:58:20 +01:00
Shauren 4500ee8284 Core/Spawns: Exclude spawn groups with MANUAL_SPAWN flag from automatic spawning/despawning with conditions 2022-12-29 22:51:30 +01:00
Shauren 82fe2ab194 Core/WorldStates: Add generic worldstates for team in instance 2022-12-29 22:39:21 +01:00
Shauren c2401d38fe Core/Maps: Fixed deadlock in battleground map creation
Closes #28154
2022-12-29 22:27:42 +01:00
Shauren 353b06d16e Core/WorldStates: Allow using -1 in database for MapIDs column to mark worldstates that should be bound to a map and allowed on all maps 2022-12-29 22:15:58 +01:00
Shauren 81b2ff0d94 Core/Maps: Removed MapInstanced - no longer neccessary for grid data reference counting (moved to TerrainInfo) 2022-12-29 22:10:44 +01:00
Shauren 0f0b283168 Core/Pools: Implemented pooling for instances 2022-12-29 11:56:56 +01:00
Shauren b732521f17 Core/Maps: Replace some Instanceable() checks with IsDungeon() 2022-12-26 13:40:18 +01:00
Shauren 265c2fa508 Core/Battlefields: Refactor Battlefield creation to be linked to host map creation instead of having globally accessible objects 2022-12-26 13:24:59 +01:00
Shauren 28ad85c160 Core/Spawns: Removed ObjectMgr::AddCreatureData and ObjectMgr::AddGameObjectData (old outdoorpvp helpers) 2022-12-26 12:48:54 +01:00
Shauren 2a39dece9e Core/OutdoorPvP: Refactor OutdoorPvP creation to be linked to host map creation instead of having globally accessible objects 2022-12-26 12:33:45 +01:00
Shauren 51363865bc Core/OutdoorPvP: Remove manual spawn management functions from OutdoorPvP 2022-12-26 12:18:54 +01:00
Shauren c5cccebf64 Core/OutdoorPvP: Move remaining outdoorpvp spawns to db 2022-12-26 12:15:21 +01:00
Shauren 95f092868a Core/OutdoorPvP: Move Zangarmarsh outdoorpvp spawns to db 2022-12-26 12:09:43 +01:00
Shauren 9f7227e7b5 Core/OutdoorPvP: Move Halaa spawns to db using worldstate conditions 2022-12-26 11:39:40 +01:00
Shauren cbd46b7664 Core/Conditions: Implemented conditions for spawn groups 2022-12-26 11:15:13 +01:00
Shauren 740fa9e65a Core/WorldStates: Fixed wrong prepared statement being used for saving world state values 2022-12-26 10:54:07 +01:00
Shauren 89b019ffeb Core/WorldStates: Move custom worldstates to separate table and move saving worldstate values to WorldStateMgr 2022-12-26 10:53:47 +01:00
Shauren 3ae02de71b Core/Quests: Reset seasonal quests based on saved completion time and intended holiday start time 2022-12-24 23:56:06 +01:00
Shauren e7f8a0e086 Revert "Core/Event: prevent seasonal quests from resetting at server restart (#17455)"
This reverts commit 6a8ca9b0bf6f7cd355e1994723d6be6a5003d4d4.

# Conflicts:
#	src/server/game/Events/GameEventMgr.cpp
2022-12-24 23:36:13 +01:00
Shauren 05b2fe8acd Core/WorldStates: Migrate Ebon Hold worldstates from Player::SendInitWorldStates to new system 2022-12-21 22:09:35 +01:00
Shauren e9b13bcf00 Core/WorldStates: Migrate remaining hardcoded worldstates from Player::SendInitWorldStates to new system 2022-12-21 22:06:50 +01:00
Shauren d35f58a46d Core/WorldStates: Migrate pvp season worldstates to new system 2022-12-21 22:05:48 +01:00
Shauren ccff3af924 Core/WorldStates: Migrate battleground HolidayWorldState to new system 2022-12-21 22:01:54 +01:00
Shauren e748845e78 Core/WorldStates: Migrate OutdoorPvP worldstates to new system 2022-12-21 21:55:27 +01:00
Shauren c63312cc06 Core/WorldStates: Migrate battleground worldstates to new system 2022-12-21 21:41:58 +01:00
Shauren 5657280b65 Core/GameObjects: Implemented playerCast (Data23) for GAMEOBJECT_TYPE_GOOBER 2022-12-19 16:06:26 +01:00
Shauren e548dfafdf Scripts/Gossip: Fixed money not being removed when enabling/disabling experience gains 2022-12-18 13:48:43 +01:00
Shauren 36aacc7f2a Core/Gossip: Fixed gossip menu options not performing their default actions when added by script using db data 2022-12-18 13:47:54 +01:00
Shauren f5f6dbfa3e Core/GameObjects: Use serverOnly property of GameObjectTemplate for all types that have it, not just spell focus 2022-11-18 10:38:58 +01:00
Shauren 4e0e5785e9 Core/Misc: Minor cleanup in worldserver main.cpp 2022-10-20 22:21:47 +02:00
Shauren 6daa2ce262 Core/Threading: Create ThreadPool class
# Conflicts:
#	src/server/worldserver/Main.cpp
2022-10-20 22:21:41 +02:00
Shauren 030fe869df Core/WorldStates: Skip sending SMSG_UPDATE_WORLD_STATE when value does not change 2022-10-09 14:03:19 +02:00
Shauren 0a5de93e82 Core/WorldStates: Allow setting "hidden" field of SMSG_UPDATE_WORLD_STATE 2022-10-09 14:01:46 +02:00
Shauren 12b60099f8 Core/WorldStates: Migrate instance script worldstates to new system 2022-10-09 13:45:38 +02:00
Shauren fe7e42b0b8 Core/WorldStates: Migrate Tol Barad worldstates to new system 2022-10-09 13:11:33 +02:00
Shauren 10823f8fcc Core/WorldStates: Add area requirements to world states 2022-10-09 01:34:37 +02:00
Shauren 8a98cc0205 Core/WorldStates: Migrate Wintergrasp worldstates to new system 2022-10-09 01:15:02 +02:00
Shauren 3aae23803d Core/Battlefield: Fixed startup crash when compiled without scripts
(cherry picked from commit 1405760f317cfcfed29aca5ab36633863a2d9dc9)
2022-10-09 00:46:17 +02:00
Shauren 6fc90de3b5 Core/WorldStates: Allow multiple map ids for world states 2022-10-08 23:48:04 +02:00
Shauren 0461bdc730 Core/WorldStates: Migrate conditions and criteria to new worldstate api 2022-10-08 23:18:03 +02:00
Shauren 3f51add635 Dynamic build fix
# Conflicts:
#	src/server/game/Maps/MapManager.cpp
2022-10-08 00:51:17 +02:00
Shauren 0ba58aeb6e Core/Maps: Move terrain data handling out of Map class
Partial port of cmangos/mangos-wotlk@ff5232c648
2022-10-08 00:25:32 +02:00
Shauren 21e9854686 Core/Maps & Extractors: Move copypasted map file headers into a single shared file and replace #defines with enums 2022-10-07 22:16:46 +02:00
Shauren 8c447da29d Core/Misc: Rename MapDefines.h to MMapDefines.h as it contains mmap defines exclusively 2022-10-07 19:09:42 +02:00
Shauren 0ca955897f Core/Spells: Remove all hardcoded restrictions for pick pocket spell effect and rely only on presence of pickpocket loot in db 2022-10-04 12:42:10 +02:00
Shauren cf2bf7f77f Core/Spells: Corrected implementation of SPELL_ATTR1_ALLOW_WHILE_STEALTHED and SPELL_ATTR2_ALLOW_WHILE_INVISIBLE to use DispelType instead of checking effect types 2022-10-04 12:36:58 +02:00
Shauren 03cf98152e Core/DataStores: Defined map.dbc flags 2022-10-04 12:32:58 +02:00
Shauren b4a39d42a8 Core/Auras: Fixed requireImmunityPurgesEffectAttribute logic for school immunities 2022-09-30 12:50:31 +02:00
Shauren c3b52fd29f Core/Auras: Improve aura interactions with immunities on spell effect level
* Effects that target is immune to will be suppressed instead of completely removed
2022-09-30 12:49:31 +02:00
Shauren f35e49b515 Core/Spells: Implemented SPELL_ATTR6_TAPS_IMMEDIATELY 2022-09-30 11:27:56 +02:00
Shauren f93918ef0c Core/Spells: Implemented SPELL_ATTR6_ABSORB_CANNOT_BE_IGNORE 2022-09-30 11:26:38 +02:00
Shauren c78371f321 ore/Spells: Autorepeat casting fixes
* Fixed cast bars of ranged spells not disappearing when canceled while autoshooting
* Replaced hacky 500ms delay on non auto shot autorepeat spells with native spell cast time (wands have 500ms cast time)
* Update cooldowns before attempting to cast autorepeat spells (for cases when cooldown ends on the same server tick as cast attempt)
2022-09-30 11:08:20 +02:00
Shauren dfc6fe6450 Core/Spells: Cleanup movement checks in spells - use correct interrupt flags 2022-09-30 11:02:52 +02:00
Shauren 1f60928a51 Core/Spells: Implemented SPELL_ATTR6_DELAY_COMBAT_TIMER_DURING_CAST 2022-09-30 10:56:37 +02:00
Shauren b394faf376 Core/Spells: Implemented SPELL_ATTR6_NO_PUSHBACK 2022-09-30 10:55:29 +02:00
Shauren 50235ffcbc Core/Spells: Implemented SPELL_ATTR6_AURA_IS_WEAPON_PROC 2022-09-30 10:53:58 +02:00
Shauren 6900a904cb Core/Spells: Implemented SPELL_ATTR6_DO_NOT_RESET_COOLDOWN_IN_ARENA 2022-09-30 10:53:09 +02:00
Shauren 050300771d Core/Spells: Rename SpellAttr6 to use official attribute names 2022-09-30 10:45:17 +02:00
Shauren 818e73dd5f Core/Spells: Implemented SPELL_ATTR5_AURA_UNIQUE_PER_CASTER 2022-09-30 02:15:18 +02:00
Shauren 180836b977 Core/Spells: Implemented SPELL_ATTR5_ALWAYS_LINE_OF_SIGHT and SPELL_ATTR5_ALWAYS_AOE_LINE_OF_SIGHT 2022-09-30 02:14:25 +02:00
Shauren 0f6cac2373 Core/Spells: Implemented SPELL_ATTR5_TREAT_AS_AREA_EFFECT 2022-09-30 02:12:19 +02:00
Shauren 4cfd439d34 Core/Spells: Implemented SPELL_ATTR5_NOT_AVAILABLE_WHILE_CHARMED 2022-09-30 02:08:33 +02:00
Shauren 8fa4b57925 Core/Spells: Implemented SPELL_ATTR5_NOT_ON_PLAYER and SPELL_ATTR5_NOT_ON_PLAYER_CONTROLLED_NPC 2022-09-30 02:05:54 +02:00
Shauren 86fbfb77f4 Core/Spells: Implemented SPELL_ATTR5_IGNORE_AREA_EFFECT_PVP_CHECK 2022-09-30 02:01:13 +02:00
Shauren 2c78751b5a Core/Spells: Corrected implementation of SPELL_ATTR5_ALLOW_ACTIONS_DURING_CHANNEL - it allows casting other spells while channeling, not allows movement while channeling 2022-09-30 02:00:04 +02:00
Shauren 75906f3d06 Core/Auras: Added support for SPELL_ATTR5_LIMIT_N limit to other number than just 1 2022-09-30 01:57:52 +02:00
Shauren 70c76a166a Core/Spells: Removed SPELL_SPECIFIC_JUDGEMENT 2022-09-30 01:35:50 +02:00
Shauren d1700ba5fa Core/Spells: Rename SpellAttr5 to use official attribute names
* Implemented SPELL_ATTR8_HASTE_AFFECTS_DURATION
2022-09-30 01:30:14 +02:00
Shauren a7dc339a6a SHA-1: 8d16a79dea4c0100d36e13b068c42499a3a48154
* Core/Spells: Rename SpellAttr4 to use official attribute names

* Corrected implementation of SPELL_ATTR4_CLASS_TRIGGER_ONLY_ON_TARGET
* Implemented SPELL_ATTR4_NO_HELPFUL_THREAT
* Implemented SPELL_ATTR4_NO_PARTIAL_IMMUNITY
* Implemented SPELL_ATTR4_ALLOW_PROC_WHILE_SITTING
* Implemented SPELL_ATTR4_USE_FACING_FROM_SPELL
* Implemented SPELL_ATTR4_BOUNCY_CHAIN_MISSILES
* Implemented SPELL_ATTR4_AURA_NEVER_BOUNCES
* Implemented SPELL_ATTR4_AURA_BOUNCE_FAILS_SPELL
* Implemented SPELL_ATTR4_AURA_IS_BUFF
* Implemented SPELL_ATTR5_MELEE_CHAIN_TARGETING

* Implemented SpellEffectAttributes::ChainFromInitialTarget
2022-09-30 01:16:39 +02:00
Shauren 6856c1a0be Core/Spawns: Added startup error for incorrect map assignments in instance_spawn_groups 2022-09-23 20:41:31 +02:00
Shauren 946f928ee2 Core/Spells: Rename SpellAttr3 to use official attribute names
* Implemented SPELL_ATTR3_NO_AVOIDANCE
* Implemented SPELL_ATTR3_ONLY_PROC_OUTDOORS
* Implemented SPELL_ATTR3_ONLY_PROC_ON_CASTER
* Implemented SPELL_ATTR3_PVP_ENABLING
* Implemented SPELL_ATTR3_SUPPRESS_CASTER_PROCS
* Implemented SPELL_ATTR3_SUPPRESS_TARGET_PROCS
2022-09-13 15:40:25 +02:00
Shauren ea4bc6c02a Core/Spells: Rename SpellAttr2 to use official attribute names
* Corrected implementation of SPELL_ATTR1_ALLOW_WHILE_STEALTHED
* Implemented SPELL_ATTR2_RETAIN_ITEM_CAST
* Implemented SPELL_ATTR2_ALLOW_WHILE_INVISIBLE
* Implemented SPELL_ATTR0_PROC_FAILURE_BURNS_CHARGE
* Implemented SPELL_ATTR2_PROC_COOLDOWN_ON_FAILURE
* Implemented SPELL_ATTR2_NO_TARGET_PER_SECOND_COSTS
* Implemented SPELL_ATTR2_DO_NOT_REPORT_SPELL_FAILURE
* Implemented SPELL_ATTR1_REQUIRE_ALL_TARGETS
* Implemented SPELL_ATTR2_CHAIN_FROM_CASTER
* Implemented SPELL_ATTR2_NO_ACTIVE_PETS
* Implemented SPELL_ATTR2_ENCHANT_OWN_ITEM_ONLY
2022-09-13 14:36:32 +02:00
Shauren ca7d36873f Core/Spells: Rename SpellAttr1 to use official attribute names
* Implemented SPELL_ATTR1_NO_SKILL_INCREASE, SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT, SPELL_ATTR1_DISPEL_ALL_STACKS
2022-09-12 09:15:31 +02:00
Shauren 16aef47f61 Core/Spells: Fixed implementation of Spell::EffectRechargeManaGem when it is not the first effect on a spell (0 cases, sync code between branches) 2022-09-12 09:15:30 +02:00
Shauren 39b5168dbb Core/Auras: Changed aura dot stacking rule to not ignore aura type of "existingAura" 2022-09-12 09:15:30 +02:00
Shauren b28ff89c5d Core/Spells: Prevent manual cancelling of channelled spells that have SPELL_ATTR0_CANT_CANCEL 2022-09-12 09:15:28 +02:00
Shauren eeef100e08 Core/Spells: Fixed checking free inventory space for some spells that have bad dbc data 2022-09-12 09:15:27 +02:00
Shauren e395af341a Core/Spells: Fixed crash with some gameobject spell casters 2022-09-12 09:15:22 +02:00