Commit Graph

48 Commits

Author SHA1 Message Date
Ovahlord 263bae78ee Core/Transports: no longer allow transports to spawn on invalid maps 2024-03-10 06:16:59 +01:00
Shauren d791afae1d Core/Logging: Switch from fmt::sprintf to fmt::format (c++20 standard compatible api) 2023-01-08 21:16:53 +01:00
Shauren e98e1283ea Core: Updated to 10.0.2 2022-12-04 15:13:20 +01:00
Shauren fbe0b8efeb Core/Maps: Removed MapInstanced - no longer neccessary for grid data reference counting (moved to TerrainInfo) 2022-07-24 18:56:40 +02:00
Shauren daafe1c181 Remove double empty lines 2022-06-13 20:29:07 +02:00
Shauren cace414497 Core/Transports: Localized transport objects within each map
Transports no longer move between maps, each map gets a separate copy of the transport object and players are moved between them when transferring to another map
This means they can no longer be globally looked up in HashMapHolder
2022-06-13 20:06:26 +02:00
Shauren a2c1b699e6 Core/Transports: Path generation rewrite v2
* No TaxiPathNode row is skipped anymore (events/delays on first node now work)
* Fixed transport animation synchronization with client
* Fixed stoppable transports randomly resuming their path after relogging

Closes #27985
2022-06-07 16:02:51 +02:00
Shauren 630b60eb0d Core/GameObjects: Transport (type 11) improvements
* Fully synchronize serverside animation progress with client
* Implemented updating passenger positions on elevators
* Removed visibility hack for elevators that always forced CreateObject packet to be sent to client
2022-05-25 22:14:32 +02:00
Shauren 2d7af28e9f Core/Transports: Store information about continent transports 2021-10-02 19:59:56 +02:00
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
Aokromes b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
vincent-michael 5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Shauren 91be2332e2 Core/Entities: Phasing rewrite
* Optimized phase visibility checking
* Handle all phase flags

Closes #16758
Closes #21119
2018-03-25 19:28:36 +03:00
Shauren 007b5a68c5 Core/DataStores: Fixed db2 structures after 7.3.5 2018-03-12 23:11:49 +01:00
vincent-michael 7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01: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 a12a34b1dc Core/Game: Include cleanup - removed G3D classes from packets
* Use our own Position class instead, with the coords written to packets being part of type
2017-05-16 22:16:21 +02:00
vincent-michael 86b98686a9 Update copyright note for 2017
Happy new year
2017-01-01 16:23:13 +01:00
Shauren c529566ac4 Core/GameObejcts: Fixed disconnects happening when viewing nearby players on elevators
Closes #17335
2016-06-12 00:11:00 +02:00
Naios 329225b40d Core/Game: Move singleton instances into compilation units
* Fixes issues when building shared libraries
  (prevents gcc and clang from providing several instance)
2016-03-11 18:35:49 +01:00
Vincent-Michael 478cc756eb Update copyright note for 2016
Happy new year (Again new year with idiots ...)
2016-01-01 00:34:25 +01:00
Shauren f1b047b826 Core/Taxi: Further improvements
* Updated segment distance calculations - now selected path fully matches clientside preview
* Fixed building sOldContinentsNodesMask to also include any new taxi node added in future
* Implemented filtering possible hops when searching for shortest path by faction (and in future PlayerCondition)
* Changed ObjectMgr::GetNearestTaxiNode to filter faction nodes by flags instead of mount display
2015-09-19 16:44:33 +02:00
Shauren 04de58c8d3 Core/Players: Changed multi-segment taxi paths to fly nearby
flight masters along the way, not directly through them

* Taxi cost on multi-segment paths is now charged per segment when it is started

Cherry-picked from commit 2056961aae (+fixes)
2015-09-13 17:23:37 +02:00
Vincent-Michael 2e586bc520 Core: Header cleanup in game/*/*.cpp 2015-07-25 20:18:42 +02:00
Shauren ca83e14f8b Core/Entities: Reworked guid scopes
* Added ObjectGuid traits to easily access whether guid type can be generated globally (ObjectMgr) or not
* This adds separate (per map) guid sequences depending on object type
* Ported map object container from cmangos/mangos-wotlk@a2d396eb0b
* Added type container visitor for TypeUnorderedMapContainer
* Implemented helper function to erase unique pairs from multimap containers
* Moved object storage of all objects except players and transports to map level
* Added containers linking database spawn id with creature/gameobject in world
* Renamed DBTableGuid to spawnId
* Added a separate spawn id sequence generator for creatures and gameobjects - this will be used in db tables
* Moved building SMSG_UPDATE_OBJECT - updatefields changes broadcast to map update
2015-04-28 21:19:46 +02:00
Vincent-Michael ab90f74486 Update copyright note for 2015
Happy new year
2015-01-01 00:28:09 +01:00
Shauren 3c3b42362f Core/DataStores: Added DB2Manager
* Moved DB2 helpers to new class
* Moved hotfix data to hotfixes database and core management functions to DB2Manager class
* Updated HotfixNotifyBlob packet
2014-12-26 01:38:40 +01:00
Intel fa0983dfa3 Core/DataStores: Updated all remaining dbc/db2 except Item.db2, Item-sparse.db2
Signed-off-by: Nayd <dnpd.dd@gmail.com>
2014-11-15 04:27:34 +00:00
Kinzcool b485dc78b1 SQL: Changed data fields in gameobject_template to allow int32s 2014-10-30 22:21:06 -04:00
Shauren 785f0bf5c0 Core/GameObjects: Updated GameObjectTemplate data structure 2014-10-30 20:02:42 +01:00
Shauren 7afab9f783 Core/Entities: Updated HighGuid values 2014-10-27 12:03:35 +01:00
Shauren 209a743bbe Core/Entities: Updated updatefields 2014-10-26 22:06:48 +01:00
Shauren 9e1930959d Core/Entities: Changed object lowguid to uint64 2014-10-26 02:57:28 +02:00
Vincent-Michael 547115476f Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts:
	src/server/game/Battlegrounds/ArenaTeam.cpp
	src/server/game/Entities/Player/Player.cpp
	src/server/game/Entities/Unit/StatSystem.cpp
	src/server/game/Entities/Unit/Unit.cpp
	src/server/game/Spells/Spell.cpp
	src/server/scripts/EasternKingdoms/ZulAman/boss_janalai.cpp
	src/server/scripts/Kalimdor/zone_durotar.cpp
	src/server/scripts/Spells/spell_warrior.cpp
2014-08-24 02:11:33 +02:00
jackpoz 7fe7f30521 Core/Misc: Fix some -Wconversion warnings 2014-08-23 19:56:41 +02:00
Subv 74be070d1c Core/Phases: Update transport visibility when changing phases 2014-06-03 13:08:54 -05:00
Vincent_Michael 20004050bc Update copyright note for 2014.
Happy new year.
2014-01-01 00:07:53 +01:00
jackpoz 799daaae55 Core/Transports: Fix array overflow
Fix an array overflow in TransportMgr::GeneratePath() spline code.

Valgrind log:
 Invalid read of size 4
  at : G3D::Vector3::operator*(float) const (Vector3.h:650)
  by : Movement::C_Evaluate(G3D::Vector3 const*, float, G3D::Matrix4 const&, G3D::Vector3&) (Spline.cpp:103)
  by : Movement::SplineBase::SegLengthCatmullRom(int) const (Spline.cpp:171)
  by : Movement::SplineBase::SegLength(int) const (in /home/jackpoz/trinity/bin/worldserver)
  by : Movement::Spline<double>::initLengths() (SplineImpl.h:86)
  by : TransportMgr::GeneratePath(GameObjectTemplate const*, TransportTemplate*) (TransportMgr.cpp:125)
  by : TransportMgr::LoadTransportTemplates() (TransportMgr.cpp:78)
 Address 0x1d07d154  is 8 bytes after a block of size 300 alloc'd
2013-12-30 16:15:37 +01:00
Shauren 079905e29a Core/Transports
* Fixed transport orientation
* Fixed transport position desynchronization for stoppable transports
* Ignore spawnMask errors for objects spawned on transports
2013-12-29 14:59:06 +01:00
jackpoz 3b471f495c Core/Transports: Log an error if a Transport has no GameObject template
Log an error if a Transport has no GameObject template from `gameobject_template` table instead of dereferencing NULL .
2013-11-29 20:57:51 +01:00
Spp 94e2b9332a Core/Logging: Remove LOG_FILTER_XXX defines with it's value (remember logger names are case-sensitive) 2013-11-08 10:50:51 +01:00
leguybrush 0a308144a8 Core/Code: Unify [more] codestyle for brackets: )\n{\n} to ) { }. 2013-10-28 14:36:07 -04:00
Shauren f0794d7585 Core/Transports: Correct path generation for a few transports 2013-10-27 11:15:56 +01:00
Vincent_Michael 77013aa081 Core: Fix warnings 2013-10-18 13:31:09 +02:00
Shauren e0cb49af9c Build fix 2013-10-16 19:30:29 +02:00
Shauren ce55647c41 Core/Transports
* Rewritten path generation, now uses splines - timers are a lot more accurate now
* Implemented stopping transports
* Implemented spawning transports in instances
* Implemented spawning gameobjects as transport passengers
* Transport passengers are now stored in creature/gameobject table using gameobject_template.data6 from transport's template as map id
2013-10-16 18:37:29 +02:00