Commit graph

25 commits

Author SHA1 Message Date
Oleg Agafonov
f7b32cadd7 Improved watchers to support SortedSet fields correctly (related to #10092, #10192) 2023-04-09 08:06:58 +04:00
Oleg Agafonov
5d003dad88 Merge fix 2021-09-04 20:42:24 +04:00
Oleg Agafonov
473a81e13c * Mana pay to cast - fixed random values in games with AI (example: Marath, Will of the Wild, see #8204); 2021-09-04 20:34:32 +04:00
Oleg Agafonov
790aef9c37 Improved watcher copy support of Cards fields (example: Abandoned Sarcophagus, see 43dbaf405b); 2021-08-01 03:32:16 +04:00
Oleg Agafonov
560b56a391 Refactor: moved ManaPaidSourceWatcher to default watchers, added additional checks; 2021-07-24 16:22:18 +04:00
Oleg Agafonov
1b830032ac * Militant Angel - fixed rollback error on usage (#7239); 2020-12-19 04:48:55 +04:00
LevelX2
1d0059fb53 * Watcher - Fixed a problem copying HashMaps in watcher deep copy (fixes bug of Muldrotha, the Gravetide #6461). 2020-06-16 22:47:52 +02:00
jasc7636
cdcef4649d Make watcher copy method deepcopy collections 2020-06-15 10:08:56 +02:00
Antonio Alonzi
f86529bbb9 #6256: Do not create new Set/Map 2020-03-30 09:22:02 +01:00
Antonio Alonzi
76c9d38f57 #6256: Fixed Watcher copy method for JDK11 2020-03-28 19:56:25 +00:00
Oleg Agafonov
5adab75324
Revert "format: organize imports" 2020-02-05 02:17:00 +04:00
Leandro Doctors
8a0a9acff7 format: organize imports 2020-02-04 16:21:48 -03:00
Ingmar Goudt
1a8723697e fix for Set as value of Map, make sure the set is new 2019-12-29 21:05:28 +01:00
Ingmar Goudt
702a1f2498 remove all copy constructors and copy methods for all watchers 2019-12-29 19:18:20 +01:00
Ingmar Goudt
853bdac0e1 simplify some of the field setters 2019-04-30 20:28:57 +02:00
Ingmar Goudt
6703ba693d refactor the copy functionality for no-args watchers 2019-04-30 20:28:57 +02:00
Oleg Agafonov
b8782d572d Tests: added test to check copy() methods removes; 2019-03-30 20:26:35 +04:00
Ingmar Goudt
75dbdbdd32 initial rewrite for copy method 2019-03-19 23:35:38 +01:00
Ingmar Goudt
c4eeec1bb2 changed the constructor for a Watcher. Before, you had to explictly pass the name of the watcher as an argument. But most of the time this was the name of the class itself. So the watcher now determines internally its name. The method 'getBasicKey' can be overridden. Also updated some encapsulation 2019-03-16 08:35:26 +01:00
Ingmar Goudt
9a310732d8 rewrite watchers to GameState.getWatcher(), rather than getWatchers().get(). This hides away the implementation of the watchers. Accepts the class rather than the name. Always returns the specific subclass, so there is no more casting needed. Only 1 line in the common library remains, that is still using the old 'deprecated' method. Needs a new version release to do that. 2019-01-06 20:59:13 +01:00
GrayedFox
3953f3dbdd
remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
LevelX2
78cff4d24f * Fixed Flailing Drake and test. 2017-01-14 15:47:33 +01:00
vraskulin
f04ba151f7 Refactoring
See github line by line comments in 'File changed'
2016-12-29 16:49:12 +03:00
LevelX2
0f1839af56 Reworked some trap cards using old AlternateCosts class. 2016-02-27 23:44:59 +01:00
poixen
46eb6c0525 Restructured Mage module 2015-11-29 21:56:49 +01:00
Renamed from Mage/src/mage/watchers/Watcher.java (Browse further)