Commit graph

2416 commits

Author SHA1 Message Date
LevelX2
92793327f3 * returned UUID of used THOUGHT AS effect instead of boolean. 2018-04-21 22:32:45 +02:00
LevelX2
357d126596
Revert "Feature/Add Set Selection filtering" 2018-04-21 17:29:16 +02:00
LevelX2
054cf4763a
Merge pull request #4708 from salco/feature/new_ui_selection_type
Feature/Add Set Selection filtering
2018-04-21 17:12:09 +02:00
Salco
e53a9d5f39 move feature to the filter already implemented. 2018-04-20 08:27:22 -04:00
LevelX2
fc0068665f [DOM] Freed Dom download for Wizard source. 2018-04-19 19:59:47 +02:00
Evan Kranzler
50b5377a8e fixed mana pool errata 2018-04-15 14:30:01 -04:00
spjspj
a828050ae1 Continuing implementation of Planechase. 2018-04-14 23:09:37 +10:00
spjspj
611b48fd47 Continuing implementation of Planechase. 2018-04-14 10:47:49 +10:00
spjspj
d97a3ebf04 Continuing implementation of Planechase. 2018-04-13 01:20:10 +10:00
spjspj
3e092c2211 Continuing implementation of Planechase. 2018-04-12 21:03:53 +10:00
spjspj
87d19c7d51 Continuing implementation of Planechase. 2018-04-12 11:51:28 +10:00
spjspj
c8b741f0bf Continuing implementation of Planechase. 2018-04-12 00:07:24 +10:00
LevelX2
fdcd833791 Activated DOM image downloading. 2018-04-11 00:18:01 +02:00
spjspj
e932c139d9 Beginning of implementation of Planechase.
10 or so initial planes that (mostly) have been tested, no phenomenons as yet and no modifying yet of chaos rolls.  Also no support for a user to be able to set if it is planechase (able to do so via the cheat button).
2018-04-09 08:44:48 +10:00
LevelX2
ecbe7e68a6 * Fixed that second or higher level of attachments was not shown correctly on battlefield (fixes #892 fixes #4539 fixes #785 fixes #258). 2018-04-08 20:38:26 +02:00
Thomas Contis
6e7570d066 Fully fixed issue 4514. Use showCardsOrTokens() 2018-04-06 19:39:36 -04:00
Oleg Agafonov
dc1eaeb5bb Fixed viewer size update, code clean, fixed typo 2018-04-06 11:49:08 +04:00
Thomas Contis
95cbb3007e Removed db and log files 2018-04-05 20:35:03 -04:00
Thomas Contis
f9cc468595 Fixed issue #4514 2018-04-05 15:51:52 -04:00
Salco
e7b9d30f39 clean code and comment 2018-04-03 10:02:08 -04:00
Salco
8753cfeb67 clean code and comment a function in FastSearchUtil_1 2018-04-03 09:43:37 -04:00
Salco
cd3e58dbab new button to filter TAG 2018-04-03 09:36:01 -04:00
AdamJAKing
26c9c80d68 Card hint window now disappears for all cards 2018-04-02 21:49:18 +01:00
spjspj
7698856d29 Add an on-hover highlight effect. 2018-04-02 01:01:32 +10:00
spjspj
2ff3d2ca87 Add an on-hover highlight effect. 2018-04-01 21:40:16 +10:00
spjspj
b69f2c4fd8 Add 'Choose Matching' to deck editor 2018-03-31 17:55:55 +11:00
Oleg Agafonov
8563c6d865
Merge pull request #4682 from delftswa2018/hotfix/resolving-unaccepted-changes
Hotfix - resolving unaccepted changes
2018-03-29 17:25:04 +04:00
Oleg Agafonov
d7237c4afa
Merge pull request #4681 from delftswa2018/feature/ClickableMsgOfTheDay
Clickable message of the day
2018-03-29 17:24:50 +04:00
Oleg Agafonov
0939aefe51
Merge pull request #4680 from delftswa2018/feature/loadingtime
Improved XMage startup time
2018-03-29 17:23:38 +04:00
Marc Zwart
a7ffaafcb0 made close call safe 2018-03-29 13:53:59 +02:00
Danny Plenge
aa96caa554 Removed useless else case 2018-03-29 12:54:43 +02:00
spjspj
938ac35981 Have a faded life total over the avatar which glows then fades again reddish for damage and bluish for life gain. 2018-03-29 00:28:56 +11:00
Danny Plenge
98c2b171de Added the URLHandler which makes the URL's in the message of the day clickable.
At the moment when there are 2 URL's in 1 message, it only makes the last one clickable.
2018-03-28 13:49:04 +02:00
Christiaan
f956075341 Merge remote-tracking branch 'origin/master' into feature/loadingtime 2018-03-27 17:28:58 +02:00
Christiaan
e69423af27 performance improvements for startup
added option to skip generating small icons that already exist, load symbol images multithreaded
2018-03-27 17:26:19 +02:00
spjspj
08ffbecdb4 Have a faded life total over the avatar which glows then fades again reddish for damage and bluish for life gain. 2018-03-28 02:22:28 +11:00
spjspj
1340f75c1e
Merge pull request #4658 from spjspj/master
Karn, Scion of Urza (DOM)
2018-03-25 09:04:49 +11:00
spjspj
4527f791aa Karn, Scion of Urza (DOM) 2018-03-25 01:44:23 +11:00
igoudt
00f91391e9 Homarid Drake, reprints, and rewriting his or her to their 2018-03-22 16:52:26 +01: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
Marc Zwart
c2c395420e close resource which did not happen certainly 2018-03-22 10:30:10 +01:00
Danny Plenge
90631eff60 Removed dangerous instance of double-checked locking in ThemePluginImpl 2018-03-20 16:10:09 +01:00
Marc Zwart
3e1312064f removed dangerous instance of double checked locking in settingsmanager 2018-03-20 16:04:10 +01:00
Marc Zwart
6debe066f1 remove dangerous instance of double-checked locking 2018-03-20 16:01:48 +01:00
Marc Zwart
d299ee0882 remove commented code 2018-03-20 15:37:46 +01:00
Marc Zwart
f883d6b0a8 ensure closing resources after finishing/canceling download of pictures 2018-03-20 15:37:25 +01:00
Marc Zwart
1e18875725 ensure closing of fileoutputstream in ScryfallSymbolsSource 2018-03-20 15:27:14 +01:00
Marc Zwart
1ec5a3fb4d ensure resource closing in deckimport from clipboard 2018-03-20 15:00:08 +01:00
Marc Zwart
338e9833cc ensure closing of datagram socket in arcane Util 2018-03-20 14:59:41 +01:00
Marc Zwart
63dbfb8a9b ensure proper closing of Stream in arcane UI 2018-03-20 14:48:22 +01:00
Marc Zwart
a0a2ac1b5a ensure closing of filewriter in manasymbols 2018-03-20 14:40:58 +01:00
Marc Zwart
4bc5a9bd61 Merge branches 'hotfix/close-unclosed-resources-mage-client', 'hotfix/close-streams-in-updater', 'hotfix/fix-non-closed-scanner' and 'hotfix/manapiechart-potential-zero-division' into feature/SonarqubeFixes 2018-03-20 13:03:28 +01:00
Marc Zwart
7233f5d86f added quiet closing to saveobjectutil 2018-03-20 12:55:37 +01:00
Marc Zwart
9912a23007 added quiet closing method in new streamutils class, used to clean up the connectdialog 2018-03-20 12:46:53 +01:00
spjspj
8ff4f81cea
Merge pull request #4640 from spjspj/master
New M15 Rendering for Unstable lands
2018-03-20 16:49:00 +11:00
spjspj
a368c93845 New M15 Rendering for Unstable lands 2018-03-20 16:12:43 +11:00
Oleg Agafonov
1635766262 * Added localized card images download for Russian, Korean and Portuguese from wizards.com; 2018-03-19 22:01:54 +04:00
Oleg Agafonov
4774c0290e * Deck editor: unique filter disabled by default now (#4612); 2018-03-19 18:06:11 +04:00
spjspj
da7bca48df
Merge pull request #4638 from spjspj/master
Fix for mana symbols indexoutofbounds exception
2018-03-19 21:18:20 +11:00
spjspj
de6eb6ece1 Fix for mana symbols indexoutofbounds exception 2018-03-19 21:16:32 +11:00
LevelX2
b073ce1c42 * Added to all toUpperCase/toLowerCase calls the Locale.ENGLISH to prevent problems with some languages (e.g. Turkish). Removed some unused import statements. (#4634). 2018-03-18 18:18:54 +01:00
LevelX2
af296cbe79 * Added display of live on player avatar image, 2018-03-17 00:47:09 +01:00
LevelX2
9c0d0a0153 * Saved table spectator setting to preferences. 2018-03-17 00:46:12 +01:00
spjspj
cd21387659
Merge pull request #4624 from spjspj/master
Add rendering for Expeditions
2018-03-16 22:57:37 +11:00
spjspj
89d58bef5b Add rendering for Expeditions
(With non-copyright background image)
2018-03-16 22:49:21 +11:00
LevelX2
753e039d02 * Fixed a problem that a tooltip window was shown of cards from panels in the back. 2018-03-16 00:28:12 +01:00
LevelX2
64f9dc6e60 * Add Land Dialog - Added deck size value and images of mana symbols. 2018-03-15 23:37:05 +01:00
Marc Zwart
51b266a2de fixed https://sonarcloud.io/project/issues?id=org.xmage%3Amage-root&issues=AWIlv32RgrzAwlaaQ7rP&open=AWIlv32RgrzAwlaaQ7rP 2018-03-15 10:47:31 +01:00
Oleg Agafonov
1b8049780b clean 2018-03-15 00:27:09 +04:00
Oleg Agafonov
83a3de9a93 * UI: improved choose number dialog (fixed enter key, added more info colorized info for mana distribute dialog); 2018-03-15 00:14:04 +04:00
Oleg Agafonov
4a77ab1714 * UI: added hotkeys to pick number dialog (choose value by <ENTER> key); 2018-03-14 18:46:28 +04:00
LevelX2
25f5be3aba * Fixed a problem with download of Unhinged card images with a card name. 2018-03-13 22:56:39 +01:00
LevelX2
bd56b074a0 * Some minor changes to game end window. 2018-03-13 18:01:26 +01:00
spjspj
a4485e92eb
Merge pull request #4611 from spjspj/master
Add an 'add only full art land' option to the add land dialog.
2018-03-13 01:04:16 +10:00
spjspj
7e919b9f39 Add an 'add only full art land' option to the add land dialog.
Should give an error message when someone says only full art lands, but then chooses a set that has no full art lands.
2018-03-13 00:38:43 +11:00
LevelX2
fe5743b29e Fixed a bug that the mana symbols for monocolored hybrid mana were not shown. 2018-03-11 13:03:58 +01:00
LevelX2
2fb8926432 * Deck editor - Saved the search checkbox options to reset for next deck editor start. 2018-03-11 11:47:33 +01:00
LevelX2
b60522f9e4 Added option to activate/deactivate JSON game log. Added logic to write the logs to subdirectory. Some changes to SEND_PLAYER_ACTION type logging. 2018-03-10 00:04:56 +01:00
LevelX2
51c68842aa Some minor changes to JSON game log (#4587). 2018-03-08 23:40:55 +01:00
LevelX2
82e8606b40 * Added Master 25 to Wizard download source. 2018-03-08 23:26:55 +01:00
LevelX2
fedf254219
Merge pull request #4554 from hooptie45/topic/json-logs
[WIP] Consumable JSON game logs
2018-03-08 17:32:32 +01:00
spjspj
79d4e7e9b1 Add a 'spectators allowed' option for regular tables (aka non tournaments). 2018-03-08 23:45:09 +11:00
spjspj
4c7b0d50d2 Add a 'spectators allowed' option for regular tables (aka non tournaments). 2018-03-08 23:31:51 +11:00
spjspj
be70ecd7f3 Add a singleton search option for deck editor search 2018-03-04 17:57:51 +11:00
spjspj
da76c7687d Missing deovid type background 2018-03-04 02:17:21 +11:00
spjspj
8cf065e345 For actual cards on modo, the full background is always printed to it (not just part of the top left corner of the background). 2018-03-03 23:51:47 +11:00
Oleg Agafonov
08f15416ba * Add new full set Masters 25 (only Karona's Zealot must be implemented); 2018-03-02 22:06:24 +04:00
spjspj
550b98509c
Merge pull request #4562 from spjspj/master
Fix zendikar full art land drawings.  (Travis build failed but didn't seem to be related to Mage.Client)
2018-03-02 17:33:11 +10:00
spjspj
60cc0525da Fix zendikar full art land drawings.
- Realized curve fits part of an off-centered ellipse
  (a 295x700 sized ellipse, with the top left being 197 pixels off the top of the top of the curved image on a scanned ZEN forest with bounding rects of: 293x337)
2018-03-02 18:22:09 +11:00
spjspj
d6910897e3
Merge pull request #4559 from spjspj/master
Zen lands slightly offcenter
2018-02-28 23:50:10 +10:00
spjspj
8c614a9006 slightly offcenter 2018-03-01 00:49:43 +11:00
spjspj
8887cca387 slightly offcenter 2018-03-01 00:32:30 +11:00
spjspj
6516e7eea4
Merge pull request #4556 from spjspj/master
Adding in way to render BFZ style full art lands (BFZ and HOU full ar…
2018-02-28 00:54:04 +10:00
spjspj
596ca5be86 Adding in way to render BFZ style full art lands (BFZ and HOU full art lands)
Things still to do:
1) Get everyone to download the full art Face images ...
2) Add in the collector number to the Face images (<ImageDirector>/FACE/ZEN/Island.<numberneeded>.jpg for example)
4) Maybe even add in an UST (Unstable) way of rendering lands (with the swoosh of opaque full art down the bottom).
2018-02-28 01:25:29 +11:00
spjspj
154c2121b1
Merge pull request #4555 from spjspj/master
Modifying zendikar curved box to use a path instead. (Will be easier …
2018-02-28 00:35:02 +11:00
spjspj
a28e273dcc Modifying zendikar curved box to use a path instead. (Will be easier to then draw BFZ lands similarly). 2018-02-28 00:02:14 +11:00
Shaun Hannah
7c7f88ab3c [WIP] S3 Upload of JSON log 2018-02-27 05:17:20 -05:00
Shaun Hannah
6aeb3c7c3a [WIP] Consumable JSON game logs
As discussed in https://github.com/magefree/mage/issues/4515

This exposes a JSON log of game interactions that can be analyzed.

This is just a first pass, to get up to speed with how the messaging works. It'd like to trim down the messages much
further so they don't include redundant information in each message. Also gson supports much more advances serialization
options; such as using the @Expose annotation. We should probably use that, but I ran into some issues (I'm not a java
developer, so still learning).

TODO:
  These currently only exist on the client side; ideally we'd submit this logs back up to a central server after the
  games completion; thinking this could be simple via an S3 file drop, and a Lambda function to process and expose the
  logs; maybe via a kafka stream.

Examples of log messages are below:

```
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-678483-je42ycva-1-je42ycw2-4",
  "type": "GAME_SELECT",
  "value": {
    "gameView": {
      "priorityTime": 3000,
      "players": [
        {
          "name": "computer",
          "life": 20,
          "counters": {}
        },
        {
          "name": "hooptie",
          "life": 20,
          "counters": {}
        }
      ],
      "hand": {
        "425d774f-ee0c-4a9b-8516-c98f886943f0": {
          "name": "Springleaf Drum",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "425d774f-ee0c-4a9b-8516-c98f886943f0"
        },
        "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff": {
          "name": "Blade of the Bloodchief",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff"
        },
        "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806": {
          "name": "Ornithopter",
          "power": "0",
          "toughness": "2",
          "loyalty": "",
          "manaCost": [
            "{0}"
          ],
          "convertedManaCost": 0,
          "type": 0,
          "paid": false,
          "id": "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
        },
        "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64": {
          "name": "Springleaf Drum",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64"
        },
        "91239f4f-9003-4c48-8ca1-4c318f892489": {
          "name": "Cranial Plating",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{2}"
          ],
          "convertedManaCost": 2,
          "type": 0,
          "paid": false,
          "id": "91239f4f-9003-4c48-8ca1-4c318f892489"
        },
        "feb268d8-0535-4a9c-8915-83dd92a08c4c": {
          "name": "Arcbound Ravager",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{2}"
          ],
          "convertedManaCost": 2,
          "type": 0,
          "paid": false,
          "id": "feb268d8-0535-4a9c-8915-83dd92a08c4c"
        }
      },
      "canPlayInHand": [
        "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
      ],
      "stack": {},
      "combat": [],
      "phase": "PRECOMBAT_MAIN",
      "step": "PRECOMBAT_MAIN"
    },
    "message": "Play spells and abilities.",
    "options": {
      "queryType": "SELECT"
    }
  }
}
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-678483-je42ycva-1-je42ycw2-4",
  "type": "SEND_PLAYER_UUID",
  "value": "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
}
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-678483-je42ycva-1-je42ycw2-4",
  "type": "GAME_CHOOSE_PILE",
  "value": {
    "choices": {
      "1ecf8671-be4c-4060-a76b-af614235a5b7": "Cast Ornithopter"
    }
  }
}
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-3v2cj2-je43178o-1-je43179f-4",
  "type": "GAME_INIT",
  "value": {
    "priorityTime": 3000,
    "players": [
      {
        "name": "computer",
        "life": 20,
        "counters": {}
      },
      {
        "name": "hooptie",
        "life": 20,
        "counters": {}
      }
    ],
    "hand": {
      "425d774f-ee0c-4a9b-8516-c98f886943f0": {
        "name": "Springleaf Drum",
        "power": "0",
        "toughness": "0",
        "loyalty": "",
        "manaCost": [
          "{1}"
        ],
        "convertedManaCost": 1,
        "type": 0,
        "paid": false,
        "id": "425d774f-ee0c-4a9b-8516-c98f886943f0"
      },
      "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff": {
        "name": "Blade of the Bloodchief",
        "power": "0",
        "toughness": "0",
        "loyalty": "",
        "manaCost": [
          "{1}"
        ],
        "convertedManaCost": 1,
        "type": 0,
        "paid": false,
        "id": "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff"
      },
      "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806": {
        "name": "Ornithopter",
        "power": "0",
        "toughness": "2",
        "loyalty": "",
        "manaCost": [
          "{0}"
        ],
        "convertedManaCost": 0,
        "type": 0,
        "paid": false,
        "id": "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
      },
      "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64": {
        "name": "Springleaf Drum",
        "power": "0",
        "toughness": "0",
        "loyalty": "",
        "manaCost": [
          "{1}"
        ],
        "convertedManaCost": 1,
        "type": 0,
        "paid": false,
        "id": "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64"
      },
      "91239f4f-9003-4c48-8ca1-4c318f892489": {
        "name": "Cranial Plating",
        "power": "0",
        "toughness": "0",
        "loyalty": "",
        "manaCost": [
          "{2}"
        ],
        "convertedManaCost": 2,
        "type": 0,
        "paid": false,
        "id": "91239f4f-9003-4c48-8ca1-4c318f892489"
      },
      "feb268d8-0535-4a9c-8915-83dd92a08c4c": {
        "name": "Arcbound Ravager",
        "power": "0",
        "toughness": "0",
        "loyalty": "",
        "manaCost": [
          "{2}"
        ],
        "convertedManaCost": 2,
        "type": 0,
        "paid": false,
        "id": "feb268d8-0535-4a9c-8915-83dd92a08c4c"
      }
    },
    "canPlayInHand": [
      "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
    ],
    "stack": {},
    "combat": [],
    "phase": "PRECOMBAT_MAIN",
    "step": "PRECOMBAT_MAIN"
  }
}
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-3v2cj2-je43178o-1-je43179f-4",
  "type": "GAME_SELECT",
  "value": {
    "gameView": {
      "priorityTime": 3000,
      "players": [
        {
          "name": "computer",
          "life": 20,
          "counters": {}
        },
        {
          "name": "hooptie",
          "life": 20,
          "counters": {}
        }
      ],
      "hand": {
        "425d774f-ee0c-4a9b-8516-c98f886943f0": {
          "name": "Springleaf Drum",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "425d774f-ee0c-4a9b-8516-c98f886943f0"
        },
        "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff": {
          "name": "Blade of the Bloodchief",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "dd41bb4b-7fc3-4a3c-a69c-d18e281a1bff"
        },
        "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806": {
          "name": "Ornithopter",
          "power": "0",
          "toughness": "2",
          "loyalty": "",
          "manaCost": [
            "{0}"
          ],
          "convertedManaCost": 0,
          "type": 0,
          "paid": false,
          "id": "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
        },
        "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64": {
          "name": "Springleaf Drum",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{1}"
          ],
          "convertedManaCost": 1,
          "type": 0,
          "paid": false,
          "id": "a2f9cc13-e71a-4c9c-96aa-5424ea1a6b64"
        },
        "91239f4f-9003-4c48-8ca1-4c318f892489": {
          "name": "Cranial Plating",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{2}"
          ],
          "convertedManaCost": 2,
          "type": 0,
          "paid": false,
          "id": "91239f4f-9003-4c48-8ca1-4c318f892489"
        },
        "feb268d8-0535-4a9c-8915-83dd92a08c4c": {
          "name": "Arcbound Ravager",
          "power": "0",
          "toughness": "0",
          "loyalty": "",
          "manaCost": [
            "{2}"
          ],
          "convertedManaCost": 2,
          "type": 0,
          "paid": false,
          "id": "feb268d8-0535-4a9c-8915-83dd92a08c4c"
        }
      },
      "canPlayInHand": [
        "06eb0a6c-1e70-4dc0-bd1c-93b6ea444806"
      ],
      "stack": {},
      "combat": [],
      "phase": "PRECOMBAT_MAIN",
      "step": "PRECOMBAT_MAIN"
    },
    "message": "Play spells and abilities.",
    "options": {
      "queryType": "SELECT"
    }
  }
}
{
  "gameId": "2cede8c5-ff8e-4f8c-b9ac-66af53c0a254",
  "sessionId": "5c4o149-678483-je42ycva-1-je42ycw2-4",
  "type": "SEND_PLAYER_UUID",
  "value": "1ecf8671-be4c-4060-a76b-af614235a5b7"
}
```
2018-02-26 19:23:00 -05:00
spjspj
871b035bb4
Merge pull request #4551 from spjspj/master
Adding in way to render Zendikar full art lands.
2018-02-26 15:31:10 +11:00
spjspj
afeb1c16ac Adding in way to render Zendikar full art lands.
Things still to do:
1) Get everyone to download the full art Face images
2) Add in the collector number to the Face images (<ImageDirector>/FACE/ZEN/Island.<numberneeded>.jpg for example)
3) Add in the ability to draw say BFZ / HOU full art lands as well.
4) Maybe even add in an UST (Unstable) way of rendering lands (with the swoosh of opaque full art down the bottom).
2018-02-26 15:22:59 +11:00
spjspj
576c1aec57 Adding in way to render Zendikar full art lands.
Things still to do:
1) Get everyone to download the full art Face images
2) Add in the collector number to the Face images (<ImageDirector>/FACE/ZEN/Island.<numberneeded>.jpg for example)
3) Add in the ability to draw say BFZ / HOU full art lands as well.
4) Maybe even add in an UST (Unstable) way of rendering lands (with the swoosh of opaque full art down the bottom).
2018-02-26 12:47:18 +11:00
Oleg Agafonov
e5ef545d8f * UI: fixed wrong feedback panel color for non active turn; 2018-02-23 18:21:08 +04:00
LevelX2
1ef84278c2
Merge pull request #4419 from rsypen/master
Fixed local server time in client's chat messages
2018-02-15 15:16:52 +01:00
L_J
3dbd5a72c4
Merge branch 'master' into Zzooouhh-banding-final 2018-02-15 00:49:08 +01:00
L_J
3f1499ef76
Adjusted banding arrow position 2018-02-14 23:44:31 +00:00
L_J
cb63931d35
Adjusted banding arrow position 2018-02-14 15:26:03 +00:00
LevelX2
3b19304f64 * Fixed that soulbond arrow to paired card was not shown and improved soulbond text on permanent. 2018-02-14 12:41:44 +01:00
L_J
e7301e2c08
Implemented banding (#41) 2018-02-13 20:36:25 +01:00
LevelX2
6d848e2059 * Fixed a bug that turn rollback did not work correctly, if player was in a buy cost process that included possible rollback (fixes #4510). 2018-02-12 11:41:01 +01:00
LevelX2
fc8604e449 Added proxy handling to tokens.mtg.onl image download. 2018-02-12 11:39:18 +01:00
LevelX2
c9603d1994 * Some fixes to token image downloading. 2018-02-11 23:30:15 +01:00
LevelX2
ac9b03d277 * Changed the connect/disconnect button to include the text directly in the menu button. 2018-02-09 23:27:35 +01:00
Oleg Agafonov
5c44bef2ea Fixed "all attack" button position 2018-02-05 10:45:07 +04:00
Oleg Agafonov
ae7620918e Fixed wrong hint for rarity button in deck editor 2018-02-04 23:05:38 +04:00
LevelX2
cafd251e74 * Fixed client filter not showing MTGO 1v1 Commander tables. 2018-02-04 18:34:54 +01:00
Oleg Agafonov
ff6ec8222a UI: added settings to setup battlefield panel colorizing (default is multicolor; preferences -> main -> battlefield; see #1201) 2018-02-04 21:06:06 +04:00
Oleg Agafonov
ec5c8a01df UI: added different colors for current turn phase (same as buttons -- see #1201) 2018-02-04 12:48:50 +04:00
Oleg Agafonov
5947326a4f UI: added green colorized panel on player's priority (see #1201) 2018-02-04 12:09:21 +04:00
Oleg Agafonov
5fa20278b0 UI: improved ask dialog (same size for all buttons) 2018-02-04 09:53:40 +04:00
LevelX2
82defb2ab8 * Removed land set restriction on limited add land dialog (fixes #4373). 2018-02-03 18:35:47 +01:00
Oleg Agafonov
66eb1de7f1 Fixed v1 server incompatible with v0 clients (freezes on game startup) 2018-01-28 17:57:55 +04:00
spjspj
71a1097b1c Update connection dialog to point to Xmage.us from xmage.woogerworks.com 2018-01-27 11:28:46 +11:00
spjspj
0c63fc04b4 Update connection dialog to point to Xmage.us from xmage.woogerworks.com 2018-01-27 01:52:31 +11:00
Oleg Agafonov
321a45140b UI: added more info on card's tooltip delay/disable 2018-01-25 08:15:12 +04:00
spjspj
8db20dbe8d
Merge pull request #4430 from spjspj/master
Fix M15 colors for GW (was WG), GU (was UG), RW (was WR)
2018-01-19 22:20:03 +11:00
spjspj
b26cd21f02 Fix M15 colors for GW (was WG), GU (was UG), RW (was WR) 2018-01-19 20:33:17 +11:00
spjspj
af48b17451 Fix M15 colors for GW (was WG), GU (was UG), RW (was WR) 2018-01-19 20:30:12 +11:00
Oleg Agafonov
89f5967441 * [RIX] Added missing tokens (tokens.mtg.onl is updated with 150+ images too); 2018-01-18 07:02:02 +04:00
rsypen
ccd121277a
Fixed local server time in client's chat messages 2018-01-15 09:17:35 +01:00
LevelX2
2e3ba7e104 Added designation names to player tooltip. 2018-01-13 18:55:07 +01:00
LevelX2
b10182ab29 Activated RIX download from WOTC source. 2018-01-13 10:24:12 +01:00
Oleg Agafonov
8e3b610a0c Tests: fixed performance problem (x20 speed up, no need to call full garbage collector manually) 2018-01-09 19:27:25 +04:00
Oleg Agafonov
c07e3d327c Fixed wrong images download for two side cards (clean cards*.db and images needed) 2018-01-07 22:29:37 +04:00
LevelX2
690c04f5fc [RIX] Added 3 cards. 2018-01-07 15:05:20 +01:00
Oleg Agafonov
1280565928 Fixed images downloading from scryfall (two sided cards) 2018-01-07 04:41:07 +04:00
Oleg Agafonov
f80aae5161 Updated tests 2018-01-05 02:21:56 +04:00
Oleg Agafonov
0c38fffdef Fixed not working PickAmount window (not visible) 2018-01-04 07:53:38 +04:00
LevelX2
2672bd36d5 [Rix] Added Jouney to Eternity and Jadelight Ranger. 2018-01-03 11:40:44 +01:00
Oleg Agafonov
050a70b7db UI: fixed #4329 - errors on card selection in linux (debian) 2018-01-02 19:38:08 +04:00
Oleg Agafonov
9009d72c82 UI: increased tooltip time before hide (60 secs) 2018-01-02 00:15:44 +04:00
Oleg Agafonov
c1bf846973 UI: added new memory statistics, warnings and hints (see #4324) 2018-01-02 00:14:29 +04:00
Oleg Agafonov
1ad8529df8 Fixed chrismas time fail on new year :-( 2018-01-01 20:51:56 +04:00
Oleg Agafonov
56d214f0b2 UI: added set search button in new tournament dialog 2018-01-01 18:02:20 +04:00
Oleg Agafonov
78d036b6bb UI: fixed windows layer problems when old window overlapped new window (see #4318, #4320 and other) 2018-01-01 18:00:42 +04:00
Jonathan Skeate
32cdd3b1ea
Add rarity filters to deck editor 2017-12-31 12:03:31 -05:00
Oleg Agafonov
54e7c3cc99 Added new UI icons for rarity buttons (20 and 32 sizes) 2017-12-31 17:41:00 +04:00
Oleg Agafonov
b697346cb6 Fixed fast search compatibly with non string data models 2017-12-31 00:26:54 +04:00
Oleg Agafonov
d0250f1cc1 UI: added set search button in add land windows (deck editor) 2017-12-30 23:15:36 +04:00
Oleg Agafonov
f9ef1388da Fixed #4305 - too big card numbers in viewer for some sets 2017-12-30 23:06:19 +04:00
LevelX2
529a38a96f Fixed some card download problems. 2017-12-30 18:36:03 +01:00
LevelX2
88b06137be Fixed handling of cards that exist multiple times for Unstable. 2017-12-30 18:35:47 +01:00
Oleg Agafonov
6b52f2efc3 UI: added set search button in viewer 2017-12-30 17:04:58 +04:00
Oleg Agafonov
a32b4b75af UI: added set search button in deck generator (but it bugged and disabled); 2017-12-30 16:03:49 +04:00
Oleg Agafonov
bb6482d7c2 Fixed typos 2017-12-30 07:26:37 +04:00
LevelX2
5d5c724565 Fixed land download from Gatherer source. 2017-12-29 11:33:56 +01:00
LevelX2
9325a5d311 Added Duel Decks: Merfolk vs. Goblins set. 2017-12-29 11:30:47 +01:00
Oleg Agafonov
35ba9dc493 About updated: added L_J and JayDi85 to devs list 2017-12-29 07:56:54 +04:00
Oleg Agafonov
1239592c2e UI: added fast set/expansion search button in deck editor 2017-12-29 06:13:01 +04:00
Oleg Agafonov
af0c77a409 UI: added custom sorting in choice dialog 2017-12-29 06:11:10 +04:00
Oleg Agafonov
72aef2638c UI: added close choice window with ESC button (if not required) 2017-12-29 04:03:31 +04:00
Oleg Agafonov
17bed090f0 UI: fixed inner country combobox data types; 2017-12-29 03:44:08 +04:00
Oleg Agafonov
800c0d20fc UI: added search flag button to connection dialog; 2017-12-28 22:39:10 +04:00
Oleg Agafonov
e4dfa5925b UI: added start selection value on choice dialog popup; 2017-12-28 22:38:18 +04:00
Oleg Agafonov
9d1f6ed48e Updated connection dialog (icons, hints and size fixes) 2017-12-28 03:53:10 +04:00
Oleg Agafonov
4654be5a7d Fixed card's round corner render (more like real card); 2017-12-28 03:45:32 +04:00
Oleg Agafonov
531b5bc569 Added auto enabled search for all pickup dialogs with many items; 2017-12-25 12:47:30 +04:00
Oleg Agafonov
749ca59ad6 Added new choose dialog (creature types and etc):
* added incremental search;
 * added keyboard hotkeys (up/down for select, enter for choose);
 * added choose by mouse double click;
 * added source card name;
 * fixed cancel button on required choice (#4230);
 * fixed text sizes form messages (now it's auto size);
2017-12-25 08:12:02 +04:00
Oleg Agafonov
42d3d558ff little fix 2017-12-23 19:48:00 +04:00
Oleg Agafonov
a80030e8aa Added new christmas logo (auto-enabled from december 15 to january 15) 2017-12-23 19:38:18 +04:00
Oleg Agafonov
39ca5a13f4 Added new set: Explorers of Ixalan (47 cards, 1 token) 2017-12-22 09:18:41 +04:00
Oleg Agafonov
a24c61079b Added new set Pro Tour Promos 2017-12-20 20:14:04 +04:00
Oleg Agafonov
c64da6abd9 World Magic Cup Qualifier: removed wrong cards, fixed card numbers, fixed download from scryfall 2017-12-20 19:51:19 +04:00
Zzooouhh
7d86fe2d76
Fixed Nemesis image downloads from MythicSpoiler (fixes #4260) 2017-12-16 19:32:34 +01:00
spjspj
2a810e898f
Merge pull request #4251 from spjspj/master
Add UST cards
2017-12-16 09:22:38 +10:00
Oleg Agafonov
7a42ea416b Fixed #4252 (errors on paths with $ symbol) 2017-12-16 03:19:32 +04:00
spjspj
f4cc88bf2a Storm Crow 2017-12-15 22:04:42 +11:00
Oleg Agafonov
f39e4fd4ee - added card download for unstable set from scryfall;
- changed client version from 9 to 10b;
2017-12-10 17:43:37 +04:00
Oleg Agafonov
5fc0393bc7 Deck editor:
+ added warning messages dialog after load/import decks with errors (instead throw exception);
 + added loading cursors on import-load decks;
 - fixed null exception error on empty/error deck loading;
2017-12-08 00:20:18 +04:00
Oleg Agafonov
1efc062f66 Decks importer:
+ added support for new decklist text format from deckstats.net (see #4228);
  + added new checks to text format (too many empty lines, too big card number: more then 100);
  + fixed double window popup on cancel/close import from clipboard window;
2017-12-07 23:14:22 +04:00
Oleg Agafonov
5b7ab0de7a typo 2017-12-07 08:41:59 +04:00
Oleg Agafonov
66a70dd116 - Fixed #4220 - card viewer raise error with alternative card numbers;
- Fixed potential error on getCardsByRarity;
- Added inner checks for wrong booster max card numbers settings;
2017-12-07 08:01:54 +04:00
spjspj
35aa92ac72 Fix face images. 2017-12-06 00:03:12 +11:00
Oleg Agafonov
89fae4f33e Add svg symbols download from scryfall 2017-12-03 20:33:32 +04:00
LevelX2
b3a3e17aa2 [RIX] Activated Mythicspoiler as RIX image download source 2017-12-03 09:45:02 +01:00
Oleg Agafonov
77d31b37f0 Fix wrong images path in zips (compatible with old versions). 2017-11-30 01:56:41 +04:00
Oleg Agafonov
e3a1051499 UI changed:
+ added default sorting for completed table (last ended on the top);
 + added "duration" column for completed table;
 - fix sorting for start, end and duration columns on completed table;
 + added new password and rated text for columns (more convenient for search);
2017-11-28 01:44:05 +04:00
Oleg Agafonov
f706f9351d UI changed:
+ added default sorting for tables on open (last created on the top);
 + added "time ago" format for created date column;
2017-11-27 21:19:53 +04:00
Oleg Agafonov
6b4000bfe2 - small render fix 2017-11-27 09:27:40 +04:00
Oleg Agafonov
ab7d386689 - fixes 2017-11-27 08:35:21 +04:00
Oleg Agafonov
c29bac08d8 Refactor and fixed and images downloading and paths loading:
- Added new images and symbols downloading;
 - Fixed user defined images path (now work for all images: cards, symbols, temp downloading);
 - Fixed not working cancel button at download window (it close window, but tasks is working, download and didn't save);
 - Fixed temp files trash all around images folder (on cancel button);
 - Fixed not saving new downloaded cards on cancel button (zip file didn't close on cancel);
2017-11-27 08:09:52 +04:00
Oleg Agafonov
efee0b5328 Merge branch 'master' into svg-mana-icons-support 2017-11-26 18:44:48 +04:00
Oleg Agafonov
37dc9bf73c Added svg support: generate HQ png files for HTML texts 2017-11-26 18:37:29 +04:00
Oleg Agafonov
a5df082720 Added svg support: render empty mana symbols (by text) 2017-11-26 16:54:05 +04:00
Oleg Agafonov
7a1def128b Added svg support: new render for mana icons in tables (deck editor, draft) 2017-11-26 16:51:57 +04:00
Oleg Agafonov
f400cd5231 Refactor resource paths and constants:
- delete duplicate consts;
 - correct paths and it uses;
 - fix loading icons from user defined dir;
2017-11-26 16:50:42 +04:00
Oleg Agafonov
5cda60270c Added svg support: new render for mana icons in tables (deck editor, draft) 2017-11-26 00:50:25 +04:00
Oleg Agafonov
471f49c9c8 Added svg support: new lib, new icons for cards 2017-11-26 00:48:28 +04:00
spjspj
830874bc50 Fix exception 2017-11-26 01:15:24 +11:00
spjspj
00eb481004 spjspj - Add a version of Freeform Commander (any creature or legendary permanent can be commander, no ban list) 2017-11-25 22:14:20 +11:00
spjspj
8ab422f55c
Merge pull request #4191 from JayDi85/viewer-more-info
Add more card's info to viewer (mage book)
2017-11-24 21:02:47 +10:00