Commit Graph

12 Commits

Author SHA1 Message Date
Treeston
ac50034df7 Utilities/Containers: New RandomResize implementation with guaranteed asymptotic linear time for all container types (#19974) 2017-07-06 19:51:16 +02:00
Shauren
533e082e80 Nopch fix 2 2017-07-01 20:56:41 +02:00
Treeston
e2a1ccd118 [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.
2017-07-01 20:18:02 +02:00
ariel-
8188511759 Core/Utils: restored previous behaviour of RandomResize 2017-06-05 03:45:24 -03:00
Shauren
abac1b34bc Core/Utilities: Rename RandomResizeList->RandomResize as it is no longer restricted to a list
* Also fix gcc build

(cherry picked from commit f097e341f5)
2017-06-03 02:27:48 -03:00
Shauren
ff39c27104 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-03 02:20:50 -03:00
Shauren
1787718e25 Core/Random: Remove no longer needed hack for VS 2013
(cherry picked from commit 59fe908744)
2017-04-11 14:31:03 -03:00
tkrokli
6a51a88767 Update Copyright notice for 2017
Happy new year!
2017-01-02 19:52:45 +01:00
Shauren
0fbfa8ead0 Core/Containers: Warning fixes and RandomResizeList with predicate optimization 2016-05-24 18:51:31 +02:00
joschiwald
9e371b766c Core/Utils: replaced std::random_shuffle with our own implementation using SFMT random generator 2016-04-24 01:15:56 +02:00
Naios
1a1c0d1dc4 Core/Common: Converted the common library to a shared library.
* There is still the possibility to static link against common.

(cherry picked from commit 501fd9b502)
2016-03-24 02:45:44 +01:00
Shauren
55ef8d80a3 Core/Utils: Moved rng functions to separate header and added utility functions to select a random element from a container where each element can have different chance of being selected
(cherry picked from commit ae20b2ab56)
(cherry picked from commit 921d893c2a)
(cherry picked from commit 9ab10d6e68)
(cherry picked from commit 00c878e73a)
(cherry picked from commit ff9c999334)
(cherry picked from commit bc94bacce4)
(cherry picked from commit d5b0ffbe9b)
2016-02-09 19:26:29 +01:00