Commit graph

123 commits

Author SHA1 Message Date
Oleg Agafonov
5c705a92a3 Cheats: added error dialog on wrong cheat command, added chat message about cheat try; 2023-05-09 00:22:00 +04:00
Oleg Agafonov
1dea98cf1f Game: fixed that search by card name was able to return a wrong card (example: cheat command) 2023-05-08 22:58:30 +04:00
Oleg Agafonov
5f55c7c667 Tokens and command objects reworked (part 1 of 2):
- fixed that copy effect doesn't restore original image after effect's end;
 - removed outdated availableImageSetCodes (all images auto-selected from tokens database now, related to #10139);
 - refactor command objects to use CommandObjectImpl;
 - refactor planes/emblems/etc objects to use MageObjectImpl, added copyable support;
 - refactor another game objects to remove some duplicated fields;
2023-05-08 02:15:07 +04:00
Oleg Agafonov
a6337fd28a Cheats: improved cheat and test commands to use same set_code-card_name notation, added additional tests (related to #10139, cheat command example: battlefield:Human:XLN-Island:1) 2023-04-04 22:05:22 +04:00
Oleg Agafonov
0bcf0320d0 Server: fixed warn message about miss messages file in dev environment 2023-03-17 23:02:01 +04:00
Oleg Agafonov
c1db466d05 AI: fixed computer's errors if all players quit the game; 2021-07-24 05:52:02 +04:00
Oleg Agafonov
fc0ff6c22d Test framework: added support to test client side data in unit tests (getGameView -> CardView, etc); 2021-07-19 13:07:09 +04:00
Evan Kranzler
572104b8fc
Reworking card types in preparation for implementing Grist, the Hunger Tide (#7899)
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-07-09 07:28:43 +04:00
Oleg Agafonov
a1da5ef437 * GUI: new reworked GUI and card render engine, card icons and dozens of other fixes (see full list in related PR); 2021-01-30 16:38:55 +04:00
Evan Kranzler
a535cb5adc
Refactoring methods which add counters to track which player adds the counters (ready for review) (#7448)
* added parameter for player adding counters to players

* added parameter for player adding counters to cards/permanents

* updated methods to use new parameter

* fixed a few initial errors

* refactored instances of cards that add counters by a player other than the controller

* fixed some instances of incorrect arguments

* refactored abilities that trigger off of a particular player adding counters

* a few more cards that were missed

* [KHM] Implemented Vorinclex, Monstrous Raider

* added test for Vorinclex, Monstrous Raider

* fixed a test failure
2021-01-26 19:06:13 -05:00
Oleg Agafonov
81e0cc6403
Merge pull request #7158 from fburato/app-wiring-refactor
Application wiring refactor and externalise configuration path for server
2020-12-26 07:42:46 +01:00
Oleg Agafonov
db239a1055 Refactor: replaced sourceId by source and introduced source param in some methods; 2020-12-12 20:23:19 +04:00
Francesco Burato
6e3750d50a [app-wiring-refactor]: Apply review comments:
- Add reference to original library in `FluentBuilder`.
- Change `I<Name>` notation to `<Name>Impl` notation.
- Move error config to test resources
- Add comment with config instruction
- Add config to the documentation
2020-11-12 20:12:50 +00:00
Francesco Burato
d0c2135e17 [app-wiring-refactor]: Remove static initialisation
- Remove all enum static managers
- Introduce interfaces for the managers
- Define new application wiring class (`ManagerFactory`)
- Externalise the configuration
2020-11-12 20:12:48 +00:00
Francesco Burato
cf3dd2d94c [app-wiring-refactor]: Define external configuration 2020-11-12 20:12:48 +00:00
vyacheslav.raskulin
8b31333d9d Collection creation is simplified 2020-09-09 15:03:01 +03:00
Oleg Agafonov
fb1c230761 * Server: added comments support in news feed (server.msg.txt), removed outdated code; 2020-09-04 02:48:07 +04:00
Oleg Agafonov
cf640b734b * Server: added stats about correctly ended tourneys and games in news feed; 2020-09-04 02:46:30 +04:00
Oleg Agafonov
30fe344e23 Test framework: added planes support in tests (command: addPlane) 2020-08-29 20:38:57 +04:00
Oleg Agafonov
96155ec799 Cheat engine: fixed that it doesn't init effects and other staff from battlefield permanents (#6888); 2020-07-27 20:46:21 +04:00
LevelX2
f0080462fa * Allow player names with space for the init.txt test help. 2020-06-12 16:10:07 +02:00
Oleg Agafonov
cce467a5ec Additional fix and simplified for playable abilities (see comments b94344341b) 2020-06-04 03:21:18 +04:00
Oleg Agafonov
823d677068 Planechase: refactor planes; 2020-04-13 21:50:40 +04:00
Oleg Agafonov
2e73f9d1c5 * UI: added turn number and step info in game logs 2020-02-28 20:27:07 +04:00
Oleg Agafonov
67cf4bc535 Cheat engine: added support of @ref command (replace @ref by commands from another group) 2020-02-27 03:07:28 +04:00
Ingmar Goudt
ae7919cd07 program towards Interface rather than implementations 2020-02-10 10:40:06 +01:00
Oleg Agafonov
2db9419ff1 * Flicker of Fate - fixed that it return permanents tapped; 2020-01-30 05:38:23 +04:00
Oleg Agafonov
4ac88ad289 * Cheat engine: added command to activate opponent's playable ability
* AI can't activate or play some things, but you can instruct it to do that;
 * insert special command in init.txt to enable it: [@activate opponent ability]
 * use cheat button to activate that command;
 * you will see all playable abilities for your opponent;
 * select any ability to activate (it will be activated by opponent);
 * maybe buggy as all other cheat engine commands;
2020-01-29 07:44:48 +04:00
Oleg Agafonov
e883ab0d97 Code cleanup (removed outdated server's config.properties settings) 2020-01-26 15:20:37 +04:00
LevelX2
1f7a7a10b0 * Panopticon Plane - Fixed draw card abilities. 2020-01-11 01:25:26 +01:00
Oleg Agafonov
5b9f0c970c Removed bloated logs 2019-12-24 21:12:20 +04:00
Oleg Agafonov
8af784e8e6 Test framework: added commands to put cards in sideboard, outside and exiled zones; 2019-12-24 02:03:51 +04:00
Oleg Agafonov
07cf5201ba * Added new game mode: Oathbreaker (#5678); 2019-05-27 16:17:15 +04:00
Oleg Agafonov
8448afc709 Test framework: added commander games support (quick start button, "commander" command to put card as commander); 2019-05-13 13:20:41 +04:00
Ingmar Goudt
45f665eb1d Sonar cleanups 03032019 2019-03-04 10:43:20 +01:00
Ingmar Goudt
3359c1f3f1 sonar 220219, criticals 2019-02-22 12:06:11 +01:00
Oleg Agafonov
f1ba813518 Cheats: added amount supports in stack command; 2019-01-26 14:32:32 +04:00
Oleg Agafonov
8ef30e4cde Cheats: added command to add any card/spell to stack without cost (only simple cast supports, without targets and modes); 2019-01-26 14:16:44 +04:00
Oleg Agafonov
b2d4d1eba8 Cheats: added command to add loyalty points to card 2019-01-15 20:45:08 +04:00
Oleg Agafonov
063be44523 Fixed NPE errors for some cards (#5471) 2019-01-08 07:15:39 +04:00
Ingmar Goudt
f04d7c9b03 remove redundant null checks before instanceof 2018-09-17 21:09:42 +02:00
GrayedFox
3953f3dbdd
remove all MIT copyright notices from files 2018-06-02 17:59:49 +02:00
Oleg Agafonov
1a4e892f04 Cheat engine:
+ added commands to show my hand and library (@show my hand, @show my library);
  + added params to show color identity ("color commander") and card's color ("color cost");
2018-05-06 01:05:04 +04:00
spjspj
b45a409939 Continuing implementation of Planechase. 2018-04-15 19:40:15 +10:00
Oleg Agafonov
645fbf6da1 * Cheat engine: added optional set code in card's command (example: battlefield:Human:Island:HOU:1); 2018-03-24 18:44:02 +04:00
spjspj
4382a4f247
Merge pull request #4649 from spjspj/master
Song of Blood (VIS)
2018-03-23 00:26:29 +11:00
ArcadeMode
5ac975c52e Blocker and Critical level bugfixes throughout the project (#4648)
* fixed https://sonarcloud.io/project/issues?id=org.xmage%3Amage-root&issues=AWIlv32RgrzAwlaaQ7rP&open=AWIlv32RgrzAwlaaQ7rP

* ensure closing of scanner if it was opened

* Refactored method in EmpyrialArchAngel to not always return same value.

* Refactored method in FalkenrathAristocrat to not always return same value.

* Refactored method in GilderBairn to not always return the same value.

* fixed left open resources, ensured quiet closing of the streams

* Refactored method in IceCave to not always return same value.

* Refactored method in KjeldoranRoyalGuard to not always return same value.

* Refactored method in LegionsInitiative to not always return same value.

* Refactored method in NaturesWill to not always return same value.

* added quiet closing method in new streamutils class, used to clean up the connectdialog

* Fix small typo

* added quiet closing to saveobjectutil

* closed resources in savegame method of gamecontroller

* properly close resources in loadGame method of GameReplay class

* further proper resource closing in ServerMessagesUtil

* fixed unclosed resources in copy method in mage framework Copier

* closed unclosed resources in copyCompressed method in Copier

* ensure closing of filewriter in manasymbols

* ensure proper closing of Stream in arcane UI

* ensure closing of datagram socket in arcane Util

* ensure resource closing in deckimport from clipboard

* ensure closing of plugin classloader

* ensured closing of zipinputstream resource

* ensure closing of fileoutputstream in ScryfallSymbolsSource

* ensure closing resources after finishing/canceling download of pictures

* remove commented code

* move locks to try block to ensure unlocking along all execution paths

* remove dangerous instance of double-checked locking

* removed dangerous instance of double checked locking in settingsmanager

* Removed dangerous instance of double-checked locking in ThemePluginImpl

* close resource which did not happen certainly

* close another stream

* ensure closing of inputstream
2018-03-22 08:13:13 -05:00
spjspj
6e15835232 New M15 Rendering for Unstable lands
(Way to default to 'UST' for the cheat button.
2018-03-20 16:15:08 +11:00
Oleg Agafonov
74f988ce1d Cheats: added 2 new special commands, see #4334:
* show opponent hand
  * show opponent library
  * added params to special commands to show more or less info:
    - pt;
    - color;
    - abilities count;
    - abilities list.
2018-01-26 06:42:23 +04:00
Oleg Agafonov
eae85e71bc UI: added new cheat engine for manual testing (see #4334) 2018-01-04 01:35:33 +04:00