Commit Graph

86 Commits

Author SHA1 Message Date
Warpten
2b2fc5fb8a Core/Spells: remove PrepareSpellScript and PrepareAuraScript macros and make Hooklist use emplace behaivior (#174) 2020-08-28 15:40:26 +02:00
Shauren
1a7f437b6d Core/Util: Added another template utility - find_type_if
* Trinity::find_type_if - Find a type matching predicate in a given template parameter pack
2020-08-23 17:42:19 +02:00
Shauren
4362a1fff1 Core/Util: Added new utilities
* Trinity::new_from_tuple - same as std::make_from_tuple except allocates object using "new"
* Trinity::is_tuple - detects whether given type is a tuple specialization
* advstd::type_identity - C++20 std::type_identity

# Conflicts:
#	src/common/Utilities/Tuples.h
2020-08-23 17:42:08 +02:00
Ovahlord
eb2559ae80 fixed build 2020-08-06 13:48:02 +02:00
Ovahlord
d45d4ed0de Core/Misc: apply missile canceling codestyle changes based on master branch feedback 2020-08-06 13:38:28 +02:00
Ovahlord
f42d242996 Core/Spells: implement and enable SMSG_MISSILE_CANCEL and use it in Murozond encounter 2020-08-04 16:53:59 +02:00
ariel-
e4ba06c828 Core/Utils: restored previous behaviour of RandomResize 2020-07-24 10:31:01 +02:00
Shauren
db5a6d2738 Nopch fix 2 2020-07-22 13:46:16 +02:00
Treeston
ec04d3b2cd [3.3.5] Combat/Threat rewrite - prep & refactor (#19966)
* Combat/Threat rewrite (PR #19930) prep work. Mostly refactors, and a compatibility layer on ThreatManager/HostileReference that allows scripts to be changed already.
2020-07-22 13:43:23 +02:00
Giacomo Pozzoni
52d9bb2538 Core/Threads: Replace Boost TLS with C++11 one (#15782)
* Core/Threads: Replace Boost TLS with C++11 one

Replace boost::thread_specific_ptr<T> thread-local storage with C++11 thread_local to remove libboost_thread dependency from common project

* Fix no-pch build
2020-07-18 22:48:03 +02:00
Ovahlord
d46fb93657 Core/Pools: ported pooling updates from 335 branch 2020-07-13 11:17:19 +02:00
funjoker
a70b9d3be8 Misc: Fix nopch build 2020-06-11 20:34:03 +02:00
Giacomo Pozzoni
9fdf598792 Cherry-pick some cmake commits (#24720)
* Build system: Support  new in cmake 3.17 Ninja Multi-Config generator

(cherry picked from commit 369b618d4f)

* Build system: Fixed PCH with MSVC & Ninja generator

(cherry picked from commit d669f46b6d)

* Core: Fix clang 10 warnings

(cherry picked from commit 7272508cb4)

* Build system: Set -Wno-deprecated-copy only for clang 10

(cherry picked from commit 7fdeb259ba)

* Core/Misc: GCC build and warning fixes

(cherry picked from commit 4d69cc1c56)

* Build system: Print found git version when warning about it being too old

(cherry picked from commit 1ae72db201)

* Build system: Removed hard requirement on BOOST_ROOT being set as environment variable, it can now be also passed as command line argument to cmake and fix compile warning with boost 1.73

(cherry picked from commit 161944b764)

* Remove some code that was already removed from 335 and then cherry-picked into master

Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 8c09b6e58b)
2020-06-11 20:24:00 +02:00
Warpten
0af44ccc01 Core/Spells: implement DoT clipping
* Core/Spells: Implementation of DoT clipping.
* Core/Utilities: Backport "EnumFlags v3.0" from master.
* Core/Spells: Switch AURA_REMOVE_MODE to a flag set.
2020-06-04 18:16:03 +02:00
Shauren
ca881f7e3f Core/DBLayer: Implement async transaction completion callbacks 2020-04-15 21:41:14 +02:00
Ghaster
df173c7e1c Core/Bnet: Cleanup/Improve Battle.net account commands (#33) 2020-02-19 02:52:11 +01:00
jackpoz
183789053e Core/Misc: Fix GCC 8 warnings 2020-01-31 21:19:25 +01:00
jackpoz
8714c2be57 Core/Utils: Handle UTF-8 conversion errors
Replace the output string when a UTF-8 conversion error happen with an error message instead of using an empty string, swallowing any message that the caller wanted to log.
2020-01-31 20:51:51 +01:00
Treeston
cd3fa07389 Core/Utils: some code style adjustments, 6d6077e follow-up 2020-01-31 20:50:06 +01:00
Treeston
3ab2d9575e Core/Utils: Fix Unicode handling 2020-01-31 20:49:10 +01:00
Treeston
eed78a603e Core/Misc: Rewrite some old name handling functions that use raw buffers to no longer be old name handling functions that use raw buffers. 2020-01-31 20:31:14 +01: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
Shauren
bbdf60701b Core/Random: Refactor random number generation to use std::uniform_*_distribution to restrict result range instead of doing that ourselves
* Seed SFMTRand with more values for its state

# Conflicts:
#	src/common/Utilities/Random.cpp
2019-11-10 18:58:25 +01:00
daMaex
983f28e73b Dep/SFMT: updated to newest upstream version from https://github.com/MersenneTwister-Lab/SFMT
* only needed files added
* used CMake and SFMTRand from https://github.com/TrinityCore/TrinityCore/pull/23240 (Thank you Artox)

# Conflicts:
#	dep/SFMT/CMakeLists.txt
2019-11-10 18:57:48 +01:00
Sebastien Levy
8e250910b4 Core/Misc: MSVC build error (#23637)
- fixed a constness error leveraged by msvc 16.2
2019-08-03 23:04:53 +02:00
Ovahlord
ee69943717 Core/Movement: ported time synchronization (commits: 975f1e364a and 50d32fe493) 2019-04-26 16:48:09 +02:00
Ovahlord
659ad3bca1 Core/Misc: Added lambda support to EventProcessor (ported commit: 813f693768) 2019-02-16 02:31:41 +01:00
Ovahlord
7edabcbd88 Core/Movement: ported and merged Follow and Chase movement generator rewrite 2019-02-07 23:51:45 +01:00
Ovahlord
7543c45c7c Core/Objects: ported and implement custom visibility range functionality for creatures and gameobjects. Gameobjects will now get their visbility range read from their template data while creatures can be modified at will. The initial visbility distance changes has been parsed from MoP difficulty data by Kilyana 2019-01-02 15:51:56 +01:00
Aokromes
6815c24be1 Scripts/Commands: New argument parsing methodology (PR #22363)
- Detect the arguments accepted by the command handler
- Tokenize out those arguments automatically and feed them to the handler
- Unmatched rest of the string can be accepted by trailing char const* or CommandArgs*
2018-09-09 14:31:14 +02:00
Keader
d1d174a996 Utilities/EventProcessor: Added a overload to AddEventAtOffset accept rand time 2018-08-26 14:22:28 +02:00
Treeston
204145b3df Common/Containers: Eliminate a edge case that could potentially lead to object invalidation. 2018-07-23 14:01:25 +02:00
Treeston
f441d36d78 Misc: Pass std::chrono types by value everywhere. 2018-07-23 13:53:13 +02:00
Ovahlord
b976bc1187 Core/Spawns: merged Dynamic Spawning 2018-07-21 20:44:41 +02:00
ariel-
5ff847159c Core: header cleanup, split realmlist, boost compatibility, cotire, remove stormlib/zlib and stormlib/bzip2 and instead use dep sources 2018-03-28 04:41:59 -03:00
Ovahlord
e44bb5f387 Core/Entities: Phase Rework (main commit) 2018-03-08 22:58:50 +01:00
Aokromes
4bd0525edd Update copyright note for 2018 2018-01-01 01:06:19 +01:00
Aokromes
b93430ee08 Misc: More cleanup 2017-11-25 02:25:18 +01:00
Aokromes
9dc4705ba5 Core/Commands: Fix some commands still using phasemask 2017-11-08 01:41:09 +01:00
Ovalord
34b3617184 Core/Spells: merged commits 86275a397a ae070a1b64 and
be7486fddb
2017-10-17 01:06:15 +02:00
Naios
7f4a7cbb17 Dep/fmt: Update fmt to fmtlib/fmt@5f39721c0a
* Rename cppformat to fmt in the PackageList.txt
2017-10-16 21:48:44 +02:00
Shauren
f699891b37 Core/Misc: Util changes
* Move IteratorPair to its own header
* Add AsUnderlyingType function to cast enum value to its underlying type (avoids repeating std::underlying_type everywhere)
2017-07-29 14:41:26 +02:00
Treeston
da00217d31 Utilities/Containers: New RandomResize implementation with guaranteed asymptotic linear time for all container types (#19974) 2017-07-06 20:46:45 +02:00
Aokromes
ac3dbcb880 Core/Utilities: Rename RandomResizeList->RandomResize as it is no longer restricted to a list 2017-06-07 09:53:04 +02:00
Shauren
38d1fc9ab3 Core/Utils: Changed all Trinity::Containers utilities to work on all container types (including arrays where it makes sense)
* Added MapGetValuePtr to allow writing `if (Val* v = MapGetValuePtr(map, key))`
* Added utility IteratorPair class with begin/end methods and MapEqualRange for use in range for syntax with multimaps

(cherry picked from commit a1e3b54e07)
2017-06-07 09:14:37 +02:00
Ryan
1442984686 Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4 2017-05-28 19:10:00 +01:00
Shauren
d8b9d2a9da Core/Misc: Prefix all preprocessor defines from CompilerDefs with TRINITY_ to avoid conflicts (PLATFORM_WINDOWS is used/defined by CascLib)
(cherry picked from commit b8db320bf1)
2017-05-26 14:49:55 +02:00
ariel-
18a145e2c6 Core/Utils: build fix 2017-05-04 01:44:12 +01:00
ariel-
b14b00da5c Core/ScriptMgr: use vector instead of list to contain Spell and Aura scripts and hooks 2017-05-04 01:41:35 +01:00