Commit Graph
240 Commits
Author SHA1 Message Date
Shauren 82fe2ab194 Core/WorldStates: Add generic worldstates for team in instance 2022-12-29 22:39:21 +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 cbd46b7664 Core/Conditions: Implemented conditions for spawn groups 2022-12-26 11:15:13 +01:00
Shauren 0a5de93e82 Core/WorldStates: Allow setting "hidden" field of SMSG_UPDATE_WORLD_STATE 2022-10-09 14:01:46 +02:00
Ovahlord 2521489e2b Core/World: adapted Master branch version of world state handling 2022-10-08 23:13:06 +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
ariel- 4bb8c93df8 Core/Spells: rework part 4: iterate over effects first
Implement far spell queue processing

# Conflicts:
#	src/server/game/Spells/Spell.cpp
2022-09-12 09:15:13 +02:00
Shauren 5c0c2e3f25 Core/Objects: Remove restriction on what object types can be set as active 2022-06-18 21:43:24 +02:00
Ovahlord 6e9ec1a4bf Core/Transports: undo all custom transport changes as preparation for cherry picks 2022-06-18 18:37:14 +02:00
Ovahlord 20fdb215db Core/Packets: converted SMSG_UPDATE_INSTANCE_ENCOUNTER_UNIT to packet class 2021-12-27 18:35:18 +01:00
Ovahlord 8ac7e71690 Core/Spells: implement summon properties parameter types based on the leaked enumerated strings values
Summon spells can now be commanded to interpret their basepoints depending on the parameter type that has been assigned to the summon properties dbc record Id

* implemented SummonCreatureExtraArgs to reduce the amount of arguments in Map::SummonCreature
2021-08-15 10:35:02 +02:00
Ovahlord be239e4458 Core/Maps: implement map based world states and implemented support for required world states in achievement criterias
*converted Erduax' conditional achievement to world state based handling as example
2021-06-13 10:48:41 +02:00
Giacomo Pozzoni 490188de76 Core/Maps: Change .map file version from FourCC to uint32 2021-04-05 12:17:12 +02:00
Shauren ddb50c2e3d Core/Objects: Pass privateObjectOwner guid directly to SummonCreature functions 2021-03-29 20:52:32 +02:00
Matan Shukry 434bc017c2 Core/Objects: Move personal summon handling from TemporarySummon/GameObject to WorldObject and check it using dedicated guid field 2021-03-29 20:45:13 +02:00
Matan Shukry a40e18367a Core/Maps: Refactor duplicated code from all ***CellRelocation and CheckGridIntegrity into single templated function 2021-03-29 20:36:39 +02:00
Treeston 4aa098a50e Core/Maps: Move some more Map internals to actually be... internals. 2021-01-03 09:44:26 +01:00
Treeston f7a79750c9 Core/Maps: All RespawnInfo* handed to outside code are now RespawnInfo const*, to signify that outside code has zero business changing these. 2021-01-03 09:44:08 +01:00
kvipka e6e20bd574 Scripts/InstanceScript: Fix an issue where LoadAllGrids would load creatures before TeamInInstance was properly set (PR #25340)
# Conflicts:
#	src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
2020-08-29 00:48:20 +02:00
Shauren bdb6705911 Core/Misc: Use "proper" type for respawn info map key 2020-08-29 00:47:28 +02:00
Ovahlord 52287e1f07 Core/SAI: ported set speed, weather and override light smart actions from 335 2020-08-22 18:16:03 +02:00
Ovahlord d46fb93657 Core/Pools: ported pooling updates from 335 branch 2020-07-13 11:17:19 +02:00
Shauren 0f3590ebb4 Core/Maps: Added optional *.tilelist file to map_extractor output which contains a list of existing tiles to speed up map creation in worldserver 2020-07-06 17:45:53 +02:00
Shauren 40f80fc0ed Core/Maps: Improvements to terrain swap handling
* Fixed memory leak when unloading grids
* Handle child maps being entered
* Allow chaining more child maps (Draenor -> Tanaan Jungle -> Tanaan Jungle - No Hubs Phase)
2020-06-11 01:35:27 +02:00
Shauren 95d7b0f2d6 Core/Misc: Improve assert message with more detail 2020-04-22 17:05:11 +02:00
Ovahlord d30c811d9e Core/Creatures: reworked tempoary summon creation
* all stats and values will now be set before summons are getting added to map
* cleaned up summon spell effect handler to reduce duplicade code
* summoner guids will no longer be set for every minion and correctly handle assigning creator guids instead. These values will serve as fallback guid if there is no summoner guid
* friendly tempsummons will now inherit the guild data of their player and pass them on to further allied summons. This fixes guild specific visuals for creatures such as Guild Battle Standards and Guild Heralds.

Todo: check for regressions
2020-04-22 00:20:18 +02:00
Shauren 47acc59f49 Core/DBLayer: Prevent committing transactions started on a different database 2020-04-15 21:02:26 +02:00
Aokromes d6d3f06f06 New year 2020-01-04 18:32:38 +01:00
funjoker 6c56916b29 Misc: Update copyright information
Happy new year
2020-01-01 18:47:28 +01:00
Treeston 90540d684b Core/Misc: Various dynspawn cleanup and refactors split off from pooling rewrite:
- Map::RemoveRespawnTime(SpawnObjectType, LowType, doRespawn) split into Map::Respawn and Map::RemoveRespawnTime, without the extra boolean
- Map::RemoveRespawnTime(RespawnInfo*) merged into Map::DeleteRespawnInfo(RespawnInfo*) and is now private
- Map::DeleteRespawnInfo(void) renamed to Map::UnloadAllRespawnInfos to properly describe what it does
- Map::ProcessRespawns now actually saves the delayed respawn time to DB if the respawn was delayed
- Map::AddRespawnInfo now takes const reference, and returns success as a boolean
- Map::AddRespawnInfo no longer offers an unused "replace" parameter
- Map::DeleteRespawnInfo no longer offers a variety of unused private overloads
- Map::SaveRespawnTime no longer offers a tantalizing writeDB parameter. Parameter is now called "startup" to properly describe what it does.
- Map::SaveRespawnInfoDB now takes RespawnInfo reference instead of all the various fields. Still public because compatibility mode. QQ.
- Map::GetWorldObjectBySpawnId sanitized
- Map::GetXRespawnTime methods sanitized to all go through Map::GetRespawnTime

----------

Core/DB: Unify `creature_respawn` and `gameobject_respawn` into a single `respawn` table
2019-08-18 12:47:10 +02:00
Treeston f9184f026b Entities/Unit: Nuke Map::ForceRespawn from orbit, with the following implications:
- .npc respawn no longer causes stupid things to happen (Fixes #23014)
- ::DeleteFromDB methods on Creature and GameObject rewritten to be as sensible as such a colossally stupid method can ever be. They're static now.
- .npc delete and .gobj delete ported to new argument handling, and rewritten as per above. They can no longer crash the server when used in instances, too. Yay for that.
- Adjusted various dusty cobwebbed hacks around the core (why does waypoint visualization use permanent spawns *shudder*) to still work too.
2019-08-18 12:12:09 +02:00
Shauren 0b8ab68eb3 Core/Map: Kill zoneId from RespawnInfo, all it did was significantly slow down startup to make one gm command faster 2019-08-18 11:51:09 +02:00
Ovahlord c991d4bfe7 Core/Maps:
* Scarlet Monastry will now properly scale down to normal difficulty when trying to enter the instance on heroic difficulty
* removed deprecated quest text requirement from access_requirement
* added new access_requirement field to specifiy if a dungeon is only available for heroic difficulty
* added heroic exclusive access_requirement entries for Zul'Gurub, Zul'Aman, End Time, Well of Eternity and Hour of Twilight
* Players will no longer be able to enter dungeons when a encounter is in progress
2019-03-30 16:43:53 +01:00
Ovahlord fe7bcac696 Core/Maps: ported all master branch changes for map extractor including height map extraction
* new maps, and mmaps are required
2019-02-25 07:37:47 +01:00
Ovahlord 5661b4347b Core/Maps: corrected grid height value return to solve multiple undermap issues 2019-02-24 01:39:25 +01:00
Ovahlord f763095de9 Core: merged some analysis issue fixup commits from master and 335 2019-02-18 04:15:05 +01:00
Ovahlord 50a91bd590 Core/Movement: merged Collision height handling from 335 branch to reduce the probability that creatures are falling under the map 2019-02-17 23:40:24 +01:00
Ovahlord 5229a734dd Core/Transports: ported transport refactoring
* this implements full support for stoppable transports as well as serverside transport position tracking
* fixed several vehicle related issues
* fixed gameobject passengers not being displayed as transport passengers
* pets, dynamic objects and other summons are not added as transport passengers and will now properly be displayed
Todo:
- Deeprun Tram visual issues needs to be resolved
- Lady Deathwhisper's elevator needs some additional research
2018-11-21 12:04:26 +01:00
Ovahlord 1a1790b737 Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
# Conflicts:
#	src/server/game/AI/SmartScripts/SmartScript.cpp
#	src/server/game/Skills/Archaeology/ArchaeologySites.cpp
#	src/server/scripts/Spells/spell_mage.cpp
2018-09-17 15:43:22 +02:00
Aokromes 47d7f7be1c kill whitespaces 2018-09-09 16:41:58 +02:00
Aokromes bb19827cfd rename files 2018-08-26 15:52:22 +02:00
Ovah 1091b55907 Core/Maps: initialize PositionFullTerrainStatus to avoid having issues with those variables (#22315) 2018-08-26 14:33:43 +02:00
Ovahlord 5dae9f6650 Core/Maps: initialize PositionFullTerrainStatus to make empty areaID check work properly 2018-08-26 03:14:44 +02:00
Ovahlord 3f53afd39e Core/Maps: fixed several issues with liquids by merging some 335 branch commits that are taking mopg flags into account 2018-08-07 12:35:02 +02:00
Ovahlord 4692c0ff6f Core/Maps: restored some older codes until the corresponding commits has been merged and (fixed?) a crash regarding terrain swap map area id's 2018-07-22 00:49:23 +02:00
Ovahlord 59d169e8e4 Merge branch 'dynamicSpawnMerge' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
# Conflicts:
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/game/Entities/Object/Object.cpp
#	src/server/game/Maps/Map.cpp
#	src/server/game/Maps/Map.h
2018-07-21 23:13:55 +02:00
Ovahlord b976bc1187 Core/Spawns: merged Dynamic Spawning 2018-07-21 20:44:41 +02:00
Ovahlord cfee8a09a1 Core/Maps: Fixed loading vmaps and mmaps in instances
(ported commit b773d9997bdd723cad8c646170e025a48f140f1d)
2018-05-06 18:47:51 +02:00