Commit Graph

5457 Commits

Author SHA1 Message Date
Carbenium
1d8782e356 Core/EventProcessor: std::chrono-ify the remaining public API 2020-07-27 13:36:25 +02:00
Carbenium
92a02a5c87 Core/EventProcessor: std::chrono-ify CalculateTime
uint64 CalculateTime(uint64 t_offset) has been replaced with Milliseconds CalculateTime(Milliseconds t_offset).
Also add the std::chrono-ified overload void AddEvent(BasicEvent*, Milliseconds, bool)
2020-07-27 13:36:25 +02:00
Carbenium
1131229ee9 Core/WorldObject: Partially std::chrono-ify SummonCreature overloads
TempSummon* SummonCreature(uint32 entry, float x, float y, float z, float o = 0, TempSummonType despawnType = TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime = 0);
to
TempSummon* SummonCreature(uint32 entry, float x, float y, float z, float o = 0, TempSummonType despawnType = TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime = 0s);
2020-07-26 23:30:32 +02:00
Carbenium
8cb35b0d5f EventMap: Change GetTimeUntilEvent to return std::chrono types 2020-07-26 23:20:11 +02:00
Carbenium
40efda9726 Scripts/Kalimdor: Use std::chrono overload of Creature::DespawnOrUnsummon 2020-07-26 22:23:51 +02:00
Carbenium
5832790428 Scripts/World+Outland+Spells: Use std::chrono overload of Creature::DespawnOrUnsummon 2020-07-26 22:21:59 +02:00
Carbenium
fc9e7226c0 Scripts/Northrend: Use std::chrono overload of Creature::DespawnOrUnsummon 2020-07-26 22:21:09 +02:00
Carbenium
d1a39a2ebf Scripts/EasternKingdoms: Use std::chrono overload of Creature::DespawnOrUnsummon 2020-07-26 22:12:24 +02:00
Treeston
210176fd91 Core/Authserver: Authserver cleanup (PR#25093)
- Fix a handful of 1/256 bugs with most significant byte zero in BigNumber
- Get rid of (most of) the C-style arrays in authserver
- CryptoRandom as a unified source for cryptographic randomness
- Bring our other crypto APIs into 2020
- BigNumber usability improvements
- Authserver is now actually readable as a result of all of the above
2020-07-26 01:53:34 +02:00
Carbenium
cdaf890af4 Core/EscortAI: std::chrono-ify SetPauseTimer 2020-07-25 23:45:01 +02:00
Carbenium
4b9fdc5d3d Core/EscortAI: std::chrono-ify AddWaypoint 2020-07-25 23:45:01 +02:00
Carbenium
f5076112cb Core/ScriptedAI: std::chrono-ify DoSpawnCreature 2020-07-25 23:16:04 +02:00
Carbenium
27229c10cd Core/BossAI: Remove _DespawnAtEvade(uint32, Creature*) overload
Use _DespawnAtEvade(Seconds,  Creature*) instead
2020-07-25 23:11:10 +02:00
Carbenium
d7ff8c272a Core/InstanceScript: std::chrono-ify DoRespawnGameObject 2020-07-25 23:10:14 +02:00
Trond B. Krokli
ebb9e1b4de Scripts/Borean Tundra: duplicate comment text (#25102) 2020-07-24 13:11:48 +02:00
Giacomo Pozzoni
3c0ac7302f Core/Metric: Add more metrics about World::Update() loop (#25098)
* Core/Metric: Add more metrics about World::Update() loop

* Add new Performance profiling grafana dashboard

* Add new cmake setting WITHOUT_METRICS that disables all metrics

As new metrics are added, someone might want to disable them if unused.

* Add more metrics about World::Update() loop

* Remove old performance profiling features

Remove "server set difftime" command, "-RecordUpdateTimeDiffInterval" and "MinRecordUpdateTimeDiff" worldserver config settings and their related code.
The whole UpdateTime class could be removed too.

* Update and rename 2020_07_99_99_world.sql to 2020_07_24_00_world.sql
2020-07-24 00:30:16 +02:00
Carbenium
f1f251eb38 Core/Scripts: Fix timing issue of EVENT_FLY_TO_RANDOM_PILLAR during Illidan encounter
The intention here is to add additional 30 seconds of delay to the current delay of EVENT_FLY_TO_RANDOM_PILLAR.
Instead of EventMap::GetNextEventTime, EventMap::GetTimeUntilEvent has to be used which returns the currently
scheduled delay until the event occurs.
EventMap::GetNextEventTime instead exposes the timer value internal to EventMap at which the event should occur.
2020-07-22 01:19:59 +02:00
Peter Keresztes Schmidt
e6e5775be8 Build: Enable -Wimplicit-fallthrough on clang (#25056)
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs

Related: #25006

* Misc: Add some missing breaks (no-ops) to satisfy clang

Related: #25006
Closes #25055

* Build: Enable -Wimplicit-fallthrough on clang

Closes #25006
2020-07-18 20:43:16 +02:00
Peter Keresztes Schmidt
85b5b842ca Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs (#25054)
Related: #25006
2020-07-18 20:42:28 +02:00
Giacomo Pozzoni
7032ee0bdb Core/Misc: Replace boost::shared_mutex with std::shared_mutex (#24328)
* Core/Misc: Replace boost::shared_mutex with std::shared_mutex

* Remove std forward declarations
2020-07-18 18:34:45 +02:00
Treeston
896b68d5c2 Core/Time: Rename GetGameTime{System, Steady}Point methods
The names are a bit unhandy. Rename them (shorter but still meaningful).

GetGameTimeSystemPoint() -> GetSystemTime()
GetGameTimeSteadyPoint() -> Now()

Also add 2 new typedefs:

typedef std::chrono::steady_clock::time_point TimePoint;
typedef std::chrono::system_clock::time_point SystemTimePoint;

Closes #25042
2020-07-17 17:05:55 +02:00
Peter Keresztes Schmidt
ddf16ae4d9 Misc: Remove some unneeded/duplicated includes (#25051) 2020-07-16 14:14:01 +02:00
Peter Keresztes Schmidt
202fd41389 Core/Misc: Replace boost::optional with std::optional (#25047)
C++17 is already mandatory, so it's a safe thing to do
2020-07-15 10:22:29 +02:00
Peter Keresztes Schmidt
0072fa922d Scripts/World+Pet: Use std::chrono::duration overloads of EventMap (#25017)
Contributes to #25012
2020-07-14 21:15:15 +02:00
Peter Keresztes Schmidt
6968e7a1a1 Scripts/Icecrown Citadel: Use std::chrono::duration overloads of EventMap (Part 2) (#25041)
Part 2: gunship battle and Sindragosa

Contributes to https://github.com/TrinityCore/TrinityCore/issues/25012
2020-07-14 21:06:40 +02:00
Peter Keresztes Schmidt
5eaff8a3bc Scripts/Icecrown Citadel: Use std::chrono::duration overloads of EventMap (#25036)
Part 1: without gunship battle and Sindragosa

Contributes to #25012
2020-07-14 21:03:06 +02:00
Peter Keresztes Schmidt
2d9c5979a6 Scripts/Tempest Keep: Use std::chrono::duration overloads of EventMap (#25040)
Contributes to #25012
2020-07-14 20:50:37 +02:00
Peter Keresztes Schmidt
f00ab389d6 Scripts/Utgarde Keep: Use std::chrono::duration overloads of EventMap (#25039)
Contributes to #25012
2020-07-14 20:48:08 +02:00
Peter Keresztes Schmidt
88314660b6 Scripts/Magisters Terrace: Use std::chrono::duration overloads of EventMap (#25038)
Contributes to #25012
2020-07-14 20:47:10 +02:00
Peter Keresztes Schmidt
d4bce9f4d2 Scripts/Ulduar: Use std::chrono::duration overloads of EventMap (#25035)
Contributes to #25012
2020-07-14 20:43:43 +02:00
Peter Keresztes Schmidt
2f538258d9 Scripts/Nexus: Use std::chrono::duration overloads of EventMap (#25033)
Contributes to #25012
2020-07-14 20:23:24 +02:00
Peter Keresztes Schmidt
6eec0bc50f Scripts/Naxxramas: Use std::chrono::duration overloads of EventMap (#25032)
Contributes to #25012
2020-07-14 20:19:42 +02:00
Peter Keresztes Schmidt
1a32b0f5b3 Scripts/Isle of Conquest: Use std::chrono::duration overloads of EventMap (#25031)
Contributes to #25012
2020-07-14 20:19:25 +02:00
Peter Keresztes Schmidt
3a9b3259b8 Scripts/Gundrak: Use std::chrono::duration overloads of EventMap (#25030)
Contributes to #25012
2020-07-14 20:17:59 +02:00
Peter Keresztes Schmidt
19ee4d6254 Scripts/Frozen Halls: Use std::chrono::duration overloads of EventMap (#25029)
Contributes to #25012
2020-07-14 20:16:01 +02:00
Peter Keresztes Schmidt
65e01053a8 Scripts/Drak'Tharon Keep: Use std::chrono::duration overloads of EventMap (#25028)
Contributes to #25012
2020-07-14 20:04:10 +02:00
Peter Keresztes Schmidt
42102871a7 Scripts/Chamber of Aspects: Use std::chrono::duration overloads of EventMap (#25027)
Contributes to #25012
2020-07-14 20:03:33 +02:00
Peter Keresztes Schmidt
5ed6c6a5c3 Scripts/Coilfang Reservoir: Use std::chrono::duration overloads of EventMap (#25025)
Contributes to #25012
2020-07-14 19:49:47 +02:00
Peter Keresztes Schmidt
d00c95f26f Scripts/Hellfire Citadel: Use std::chrono::duration overloads of EventMap (#25024)
Contributes to #25012
2020-07-14 19:49:12 +02:00
Peter Keresztes Schmidt
1c3187e596 Scripts/Azjol-Nerub: Use std::chrono::duration overloads of EventMap (#25026)
Contributes to #25012
2020-07-14 19:48:24 +02:00
Shauren
7e5cf40d4c Scripts/Mana Tombs: Fix Pandemonious Dark Shell event delay 2020-07-14 19:39:29 +02:00
Peter Keresztes Schmidt
4ad80434a2 Scripts/Auchindoun: Use std::chrono::duration overloads of EventMap (#25023)
Contributes to #25012
2020-07-14 19:37:51 +02:00
Peter Keresztes Schmidt
39fc17e284 Scripts/Outland: Use std::chrono::duration overloads of EventMap (#25022)
Contributes to #25012
2020-07-14 19:35:12 +02:00
Peter Keresztes Schmidt
29779db58b Scripts/Northrend: Use std::chrono::duration overloads of EventMap (#25021)
Contributes to #25012
2020-07-14 19:32:28 +02:00
Peter Keresztes Schmidt
a2b2dc7ad0 Scripts/Trial of the Crusader: Use std::chrono::duration overloads of EventMap (#25020)
Contributes to #25012
2020-07-14 19:13:27 +02:00
Peter Keresztes Schmidt
5ef576d223 Scripts/EasternKingdoms: Use std::chrono::duration overloads of EventMap (#25019)
Contributes to #25012
2020-07-14 19:10:30 +02:00
Peter Keresztes Schmidt
ac27c922d1 Scripts/Blackrock Mountain: Use std::chrono::duration overloads of EventMap (#25018)
Contributes to #25012
2020-07-14 19:05:24 +02:00
Peter Keresztes Schmidt
90d5e7e1e8 Scripts/Kalimdor: Use std::chrono::duration overloads of EventMap (#25016)
Contributes to #25012
2020-07-14 18:17:23 +02:00
Giacomo Pozzoni
ee34a1f19e Scripts/Kologarn: Fix another "stuck in combat" issue (#24998) 2020-07-14 09:44:17 +02:00
Giacomo Pozzoni
203573db83 Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23) (#24997)
* Core/Spells: Implement SPELL_EFFECT_ACTIVATE_OBJECT. (#23)

Original research by @xvwyh.

# Conflicts:
#	src/server/game/DataStores/DBCStores.cpp
#	src/server/game/DataStores/DBCStructure.h
#	src/server/game/DataStores/DBCfmt.h
#	src/server/game/Entities/GameObject/GameObject.h
#	src/server/game/Entities/GameObject/GameObjectData.h
#	src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
#	src/server/scripts/Kalimdor/HallsOfOrigination/boss_temple_guardian_anhuur.cpp

* Add missing sql update

* Fix some build errors

* Remove unused enum values

* Change artkits from 0-4 to 0-3

* Remove unused code

* Code review feedback

* Fix sql

* Remove artkit4 special case handling

* Default initialize artKits

* Code review feedback

* Split sql into structure and data files

Co-authored-by: Warpten <vertozor@gmail.com>
2020-07-14 09:34:03 +02:00