Oleg Agafonov
275e996c08
* Performance: memory usage optimization for deck editor (removed bloated usage of ManaCosts -> ManaColor objects, see #7515 );
2021-02-12 22:00:16 +04:00
Oleg Agafonov
f9b840e3b5
* Images: added download support of localized images for double faces cards;
...
* Images: fixed wrong second side image after localized images download (you must re-download KHM and ZNR sets to fix it);
2021-02-11 09:15:55 +04:00
Oleg Agafonov
c9f4e949fa
* Images: added more download stats (now you can see a progress of prepare stage);
2021-02-11 08:12:55 +04:00
Oleg Agafonov
ea577e2070
GUI: fixed booster tooltip in deck editor;
2021-02-08 19:38:57 +04:00
Oleg Agafonov
b2b88bf2e8
Improved card icons (fix ambiguous interpretation of vigilance, first and double strikes, #7471 );
2021-02-07 23:11:35 +04:00
Oleg Agafonov
03952ae0d6
[KHC] added tokens and download support;
2021-02-06 20:54:32 +04:00
Oleg Agafonov
f7bc745f10
[KHM] added tokens and download support;
2021-02-06 20:30:19 +04:00
Oleg Agafonov
abe65411b6
GUI: fixed errors in card viewer for some combinations of emblems and tokens, simplified draw code;
2021-02-06 20:28:54 +04:00
Oleg Agafonov
c256aa59f7
GUI: fixed error on closing dialogs/games ( #7507 );
2021-02-05 20:54:21 +04:00
spjspj
b64806606c
Adding in Jumpstart Custom (requested fixes)
2021-02-06 00:19:36 +11:00
spjspj
1e428105d5
Adding in Jumpstart Custom
2021-02-04 23:55:59 +11:00
Oleg Agafonov
4b9de96a6b
Test framework: added support to put mdf cards on battlefield by cheats or unit tests;
2021-02-03 14:23:50 +04:00
Oleg Agafonov
be77ecea84
GUI: fixed not working single and double clicks on the card's second side (draft, deck editor, see #7472 );
2021-02-03 11:32:15 +04:00
Oleg Agafonov
3b7e01d687
GUI: fixed that the playable card mark is not displayed for the second side after day/night button click;
2021-02-03 11:30:24 +04:00
Oleg Agafonov
f5bb3a3b9a
[KHC] added images download
2021-02-03 10:37:47 +04:00
Oleg Agafonov
5f2e06e1ff
Game: improved wrong charset logs on startup
2021-02-03 10:30:34 +04:00
Oleg Agafonov
bc72384f0d
* GUI: added cards and mana amount info to player's panel hint (example: move mouse over mana icons);
2021-02-02 04:43:49 +04:00
Oleg Agafonov
ebbff82f82
Merge pull request #7335 from ddzn/feature/eurolanderDecks
...
Add new deck type European Highlander
2021-01-31 20:06:00 +01:00
Oleg Agafonov
2fe2f05b60
GUI: added preferences settings for card icons (enable abilities icons and playable icon);
2021-01-30 17:34:10 +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
dacf30f4b9
Refactoring subtypes to make Maskwood Nexus work (ready for review) ( #7432 )
...
* removed and renamed SubTypeList
* updated subtype test
* refactored Changeling to be an ability that actually does something
* moved isAllCreatureTypes into SubTypes class
* renamed copyTo method to copyFrom
* added removeAllCreatureTypes where usable
* replaced some subtype methods
* replaced some more subtype methods
* replaced subtype mass add/remove methods
* updated more subtype methods
* fixed some errors
* made common shared creature type predicate
* refactored another card involving subtypes
* Added usage of object attribute in subTypes's write operations;
* Refactor: use same param styles in subtype methods
* Refactor: simplified usage of copy appliers;
* Refactor: fixed code usage in CopyApplier
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-01-26 08:52:35 -05:00
ddzn
dd8e489fcb
Add new deck type European Highlander
2021-01-07 13:31:08 +01:00
Oleg Agafonov
fed97c040a
* GUI: fixed that cast/played card can be visible in hand zone until end of the game or re-connect ( #7297 );
2020-12-27 01:39:18 +04:00
Oleg Agafonov
b8b2dd2c9b
* GUI: fixed that abilities and triggers on the stack were not highlighted as valid target;
2020-12-24 21:43:17 +04:00
Oleg Agafonov
dd7c1939d3
* Game: fixed that Snow-Covered lands can be added to auto-generated or submitted/timeout decks ( #7222 );
2020-12-23 10:26:49 +04:00
Oleg Agafonov
b506c7fb53
Merge fix
2020-12-22 17:33:36 +04:00
Oleg Agafonov
0ac4a9d87a
* Activate spell's ability on the stack - fixed that it can't be activated by humans (example: Lightning Storm);
2020-12-22 17:13:00 +04:00
Oleg Agafonov
d5377599cc
* Images: updated Duels of the Planeswalkers Promo sets (year incremented; 2011 -> 2012, etc);
2020-12-21 11:10:54 +04:00
Oleg Agafonov
9dd09c970a
[CMR] added tokens support, added tokens download
2020-12-19 21:42:31 +04:00
Oleg Agafonov
74d96b98cf
[KHM] added images download
2020-12-17 03:30:31 +04:00
Oleg Agafonov
db239a1055
Refactor: replaced sourceId by source and introduced source param in some methods;
2020-12-12 20:23:19 +04:00
Oleg Agafonov
ae4f84655e
Changed error report link to github
2020-11-20 17:59:12 +04:00
MusaBrt
e078644caf
removing unnecessary condition
...
L152, null checking for initialized final field
2020-11-18 01:11:31 +03:00
Oleg Agafonov
5578437dde
* GUI: increased ignore list max size from 100 to 500;
2020-11-09 00:42:43 +04:00
Oleg Agafonov
8fa0ba1cfd
[ZNC] Added images and tokens support/download
2020-11-05 12:55:08 +04:00
Oleg Agafonov
6bc040ef6c
[ZNR] Added tokens support and download
2020-11-05 12:22:55 +04:00
Oleg Agafonov
4893c5b1ac
[ZNR] Improved modal double faces cards in GUI ( #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
898d271c36
[ZNR] Improved GUI for modal double faces cards ( #7012 )
2020-11-01 10:03:09 +01:00
Oleg Agafonov
c60bf3ccef
[ZNR] Added images download for modal double faces cards ( #7012 )
2020-11-01 10:03:09 +01:00
Evan Kranzler
5c65506720
[SLD] consolidated PSLD into main set
2020-10-05 21:39:53 -04:00
Gösta
43dcd13d16
added option to hide ability text overlay
2020-10-02 00:32:35 +02:00
Oleg Agafonov
cb2ae0295f
* Performance: improved memory usage for images (now xmage will not eat all available memory on 2GB+ settings, see #6375 );
2020-09-09 16:47:45 +04:00
vyacheslav.raskulin
b3dc0f5eca
excessive lambda usage
2020-09-09 15:06:49 +03:00
vyacheslav.raskulin
8b31333d9d
Collection creation is simplified
2020-09-09 15:03:01 +03:00
vyacheslav.raskulin
7da043afd0
comparation simplified
2020-09-09 15:00:30 +03:00
vyacheslav.raskulin
022c1407ed
C-style arrays declaration should be replaced to java-style
2020-09-09 14:53:03 +03:00
vyacheslav.raskulin
b23ccb8191
since these branches are identical we may collapse them
2020-09-09 14:48:21 +03:00
vyacheslav.raskulin
e03b446601
explicit parameters are not needed
2020-09-09 14:47:47 +03:00
vyacheslav.raskulin
96b2094370
equals method can be simplified
2020-09-09 14:46:46 +03:00
Oleg Agafonov
5831ba81fc
Merge pull request #7030 from BrunoChevalier/master
...
Additional fixes for pvs-studio report, see #7021
* Rename BasicSaheekiSublimeArtificerTest.java to BasicSaheeliSublimeArtificerTest.java
* S3Uploader.java: Remove redundant null check
* Effects.java: remove redundant check. When in the else part, the lastRule already is guaranteed to not end on a dot
* TableController.java: change warning message when match == null to avoid nullpointer exception
* Reverted already fixed line from, see #7021
Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2020-09-08 23:04:30 +02:00
Oleg Agafonov
9f0772fb65
Additional image files check after download
2020-09-08 18:23:11 +04:00
Oleg Agafonov
f670de09d9
* Images: added cleanup routine on startup (app will fix and delete all broken or temporary images files, see #6267 );
2020-09-08 17:58:46 +04:00
Bruno Chevalier
9b89eecab5
S3Uploader.java: Remove redundant null check
2020-08-31 13:50:23 +02:00
Oleg Agafonov
1967f9f6fa
* GUI: added Historic set filter in deck editor;
2020-08-29 23:32:37 +04:00
Oleg Agafonov
ede06098e0
Fixed typos in tests and additional refactor
2020-08-29 19:04:26 +04:00
Oleg Agafonov
ab8a4eb26a
Little fixes and code refactor
2020-08-29 18:09:44 +04:00
Oleg Agafonov
c67e937dfb
GUI: fixed wrong options in download images dialog for some sources
2020-08-29 18:07:14 +04:00
Oleg Agafonov
a0c16dc4e1
Added charset check and hint in startup logs (related to #7020 )
2020-08-28 08:34:01 +04:00
Oleg Agafonov
b610d0a31a
Added default charset information in startup logs
2020-08-28 07:33:42 +04:00
Evan Kranzler
eff5f40c79
added Zendikar Rising
2020-08-26 16:22:12 -04:00
Evan Kranzler
9dadc12149
added Commander Collection: Green
2020-08-26 11:09:24 -04:00
Thomas Winwood
e01a03fa79
Add Signature Spellbook: Chandra ( #7004 )
...
* Add Signature Spellbook: Chandra
* Update ScryfallImageSupportCards.java
* dangit
* Update SignatureSpellbookChandra.java
2020-08-26 11:02:30 -04:00
Oleg Agafonov
8ce5c7f907
Fixed NPE on game.getState() usage
2020-08-26 13:34:08 +04:00
Oleg Agafonov
40fe3b137e
* GUI: fixed that Historic games aren't visible in lobby list (now it visible under "other" filter);
2020-08-23 21:54:34 +04:00
Oleg Agafonov
994254e98c
Added Historic in deck legality check
2020-08-23 02:06:24 +04:00
Oleg Agafonov
7aac355f4a
Tests: added many verify checks for missing cards, names, numbers, download settings:
...
* check wrong card numbers in sets;
* check missing cards from set;
* check wrong full art settings;
* check missing and unknown sets in scryfall download settings;
* check missing and unknown direct download links in scryfall download settings;
* improved ability text check results;
* removed unused tests for word checks;
2020-08-22 15:16:30 +04:00
LevelX2
c16fb75668
* replaces all [source} by {this}. ATTENTION !!!: Only supporting [this} from now on in rule text.
2020-08-22 12:52:49 +02:00
LevelX2
d51acbf090
* Removed unused imports.
2020-08-22 11:51:34 +02:00
LevelX2
445f824424
* Added column hints to the headers of the list of active tables. Added some more details to the info column about rollback, spectators or planechase activated.
2020-08-22 00:48:13 +02:00
Oleg Agafonov
f0df880b17
Reverted wrong formated code
2020-08-17 05:22:59 +04:00
Oleg Agafonov
486c0d7c2c
GUI: added problem cards selection on legality label clicks ( #6854 )
2020-08-17 05:15:31 +04:00
Oleg Agafonov
fcaacd8c1e
GUI: deck legality improves:
...
* Fixed wrong sorting;
* Added tooltip errors limit (#6854 );
* Added tooltip size restrictions (#6854 );
2020-08-17 02:55:51 +04:00
htrajan
30348908dc
fix tests
2020-08-15 00:50:46 -07:00
Oleg Agafonov
994dea99b3
Images: enable images download for Double Masters
2020-08-10 18:36:15 +04:00
Oleg Agafonov
c5d7a3e9f9
* GUI: added auto-fix for deck files on usage (if deck contains wrong card numbers then it will be fixed and saved automaticity);
2020-08-08 21:27:20 +04:00
Oleg Agafonov
9652d83aec
Fixed tests
2020-08-08 19:08:38 +04:00
Oleg Agafonov
712af3152a
Images download:
...
* Fixed broken direct links download;
* Fixed outdated card numbers in some sets;
* Fixed all non-downloadable images from scryfall source;
2020-08-08 18:55:10 +04:00
Oleg Agafonov
66a8994318
Tests: added sets implementation statistics in test_checkMissingSets
2020-08-08 14:02:28 +04:00
Oleg Agafonov
735588cc0d
Sets refactor:
...
* Duels of the Planeswalkers Promos set split to multiple sets (scryfall style);
* Fixed Masterpiece Series sets name;
2020-08-08 13:17:49 +04:00
Oleg Agafonov
7599acf1c8
Removed duplicated sets that was split into multiple (Champs, Game Day, Launch Party, Media Inserts, Super Series)
2020-08-08 11:00:07 +04:00
Oleg Agafonov
f746d4d8d2
Images download:
...
* removed duplicated set (Clash Pack);
* added images download for Eighth Edition Box, Ninth Edition Box;
2020-08-08 10:14:17 +04:00
Oleg Agafonov
450646ca5e
* Images download: added threads settings in download dialog;
2020-08-07 12:41:17 +04:00
Oleg Agafonov
401d468494
Images download: decrease default images threads to 3 instead 10 (scryfall IP ban workaround for massive download)
2020-08-07 11:48:40 +04:00
Oleg Agafonov
3bf0f80033
Images download: fixed broken download dialog
2020-08-07 11:29:49 +04:00
Oleg Agafonov
2954bbaf04
Images download: removed outdated source mtgimage.com
2020-08-07 11:28:03 +04:00
Oleg Agafonov
ffd98d5c3c
Merge fixed
2020-08-07 11:08:30 +04:00
Oleg Agafonov
9e6a348cb1
Merge branch 'master' into refactor_promo_sets
2020-08-07 02:48:40 +02:00
Oleg Agafonov
e95b9f145c
GUI: deck legality improves:
...
* Added partly valid status for deck legality panel (if all cards are fine but user must add more cards to complete, see #6854 );
* Improved legality errors sorting (important errors visible at the top now, e.g. commander's errors);
2020-08-03 02:03:54 +04:00
Oleg Agafonov
309b3f5636
GUI: deck legality and themes improves:
...
* Improved formats list in deck legality panel (#6854 );
* Added hide button to deck legality panel (#6854 );
* Fixed themes names and added theme info in startup logs;
2020-08-03 00:07:13 +04:00
Oleg Agafonov
c9c1bc2b90
GUI: added info about combat arrows bug on re-connect
2020-08-02 14:22:59 +04:00
Oleg Agafonov
00411b4a9b
* Regeneration abilities improved:
...
* Fixed that regeneration shield isn't added to permanent on aura sacrifice cost (example: Stamina, Carapace, see #2221 );
* Fixed that regeneration shields accumulated in attached aura instead permanent (bug example: re-attached aura gives old shields to new permanent, see #6846 );
* Added card hint with regeneration shields amount (#6846 );
2020-08-02 14:01:58 +04:00
Oleg Agafonov
2b82785e4a
* GUI: improved attackers draw (if attacker was blocked then arrow colorizes with gray color);
2020-08-01 22:32:33 +04:00
Oleg Agafonov
610baac6ab
GUI: improved feedback needed sound notifications (plays only for inactive game or app, see #6853 );
2020-07-31 20:00:36 +04:00
Oleg Agafonov
1045f352bc
GUI: fix that cheat button shows for all players instead current user only (related to #5289 );
2020-07-29 20:22:25 +04:00
Oleg Agafonov
02aa3b333f
Removed db-files from client distribution;
2020-07-28 04:56:33 +04:00
Oleg Agafonov
857d888b76
GUI: fixed that deck validate from deck editor available in draft/sideboarding mode ( #6854 );
2020-07-25 15:39:43 +04:00
Oleg Agafonov
24aacaafe8
* GUI: fixed missing horizontal scrollbar in deck editor for small screens, fixed overlapped deck validate panel for small screens ( #6881 , #6854 );
2020-07-25 15:27:17 +04:00
Oleg Agafonov
e07dd273f2
* GUI: fixed that deck editor doesn't restore settings after games (cards list hides after draft/sideboarding, see #4350 );
2020-07-25 13:29:51 +04:00
Oleg Agafonov
5585e1d878
GUI: deck editor improves:
...
* Fixed broken DeckArea form (form/java files synced);
* Improved panel sizes and scrolls fixes (small screens support, see #6881 );
2020-07-25 12:12:05 +04:00
LevelX2
881f727ec7
* Fixed visibility of buttons with empty text ( fixes #6841 ).
2020-07-20 11:12:33 +02:00
18ths
99d5eafc8a
GUI enchancements (themes, sound notification, deck validation) ( #6755 )
...
GUI enchancements (themes, sound notification, deck validation)
2020-07-17 19:15:02 +02:00
Oleg Agafonov
656e4304ae
* Images: fixed images download of special or promo cards without english version (example: Mysterious Egg, see #6829 );
2020-07-11 06:35:55 +04:00
Oleg Agafonov
ac0bb713d7
* GUI: fixed auto-generated names for AI in new tournament dialog;
2020-07-10 17:57:56 +04:00
Oleg Agafonov
c011ff92ad
GUI: fixed that jumpstart tournament don't show up in the tables list ( #6816 );
2020-07-10 11:51:26 +04:00
arcox
9c7982e8f6
Update *.sh and *.java files to use Unix line endings
2020-07-09 13:07:26 -04:00
Oleg Agafonov
6c3162f140
Optimized sql for deck editor
2020-07-09 03:08:44 +04:00
Oleg Agafonov
99ceeb5076
Tokens improves:
...
* [M21] added tokens;
* [M21] added tokens download support;
* Fixed wrong images for some tokens (Angel, Beast, Bird, Cat, etc);
2020-07-09 02:38:37 +04:00
Oleg Agafonov
e69a021c71
Fixed missing locale param in string operations ( #4634 )
2020-07-03 02:00:58 +04:00
LevelX2
84370ee5ab
* Allow to addd hint texts to stack abilities. Swicthed to html text format for text box of stack abilites.
2020-07-02 00:53:46 +02:00
Oleg Agafonov
eaae0ce256
[JMP] added images download support
2020-06-30 08:32:35 +04:00
Oleg Agafonov
d5616a86f9
Merge pull request #6669 from hitch17/jumpstart-tournament-formats
...
Add jumpstart swiss and elimination tournament formats.
2020-06-30 06:29:33 +02:00
Oleg Agafonov
aeef4e1193
Fixed some tokens image
2020-06-25 09:52:54 +04:00
Oleg Agafonov
dea739ecb0
Merge pull request #6683 from gp66/fix-iko-tokens
...
Fix iko tokens
2020-06-25 07:35:17 +02:00
LevelX2
0b00ae8b9d
Merge pull request #6522 from emerald000/oldVersions
...
UI: Add a button on the deck editor to change your cards to the oldest versions.
2020-06-24 21:53:42 +02:00
18ths
40036271da
Implemented Allosaurus Shepherd and Blessed Sanctuary ( #6711 )
...
* added allosaurus shepherd and blessed sanctuary
* fixed nonascii apostrophes
* added continuous effect dependency
2020-06-24 10:17:32 -05:00
LevelX2
3d2c452e3f
* Pick choice Dialog - Increased default window size. Window size is changable now by the user.
2020-06-21 11:31:43 +02:00
gp66
23cb5274f5
cat lifelink token
2020-06-20 14:11:31 -05:00
LevelX2
f6f5aa0473
* Fixed broken rarity sorting in card grid ( fixes #6508 ).
2020-06-19 10:54:11 +02:00
John Hitchings
1695e6767d
add jumpstart swiss and elimiation tournament formats.
2020-06-18 23:45:02 -07:00
LevelX2
0e81b8fd78
* Adding M21 to Scryfall Image support sets.
2020-06-16 10:43:26 +02:00
Oleg Agafonov
d9d7dd49ba
Merge fix
2020-06-15 23:36:17 +04:00
LevelX2
3df7e84fe7
Merge origin/master
2020-06-15 21:12:32 +02:00
LevelX2
2788eab082
* Fixed card type displaying order ( fixes #6055 ).
2020-06-15 21:11:54 +02:00
Oleg Agafonov
9df32a571b
* Images: added embalm ability tokens and missed Insect token from Amonkhet (see #3201 );
2020-06-15 22:57:29 +04:00
Oleg Agafonov
4006e9e909
* Images: fixed that some tokens uses wrong images of Elemental ( #5834 );
2020-06-15 21:30:23 +04:00
Oleg Agafonov
f2f1abd0f3
* Images: fixed wrong Wurm token image for some sets ( #5604 );
2020-06-15 20:59:53 +04:00
Oleg Agafonov
c2487aec7d
[C20] tokens support and fixes:
...
* Added tokens for C20;
* Added tokens images download for C20;
* Fixed that some tokens uses wrong images or images from wrong set (example: Elemental);
2020-06-15 20:29:52 +04:00
Oleg Agafonov
2b21298377
* UI: fixed that tokens in M15 render mode did not use a variety of images (all same named tokens uses same image);
2020-06-15 20:21:30 +04:00
htrajan
a897df7c79
Implement 6 cmc pws (except Teferi) and rin ( #6611 )
...
[M21] Implement 6 cmc pws (except Teferi) and rin
2020-06-07 06:13:20 +04:00
LevelX2
1deb1106b0
Merge pull request #6568 from johnmeat/ComputerDefaultName
...
Default unique name for AI.
2020-05-26 23:00:26 +02:00
Oleg Agafonov
37f7389c17
* Images: fixed Star Wars download from grabbag images source;
2020-05-26 11:30:47 +04:00
johnm
adcd9d84c6
Single setPlayerName method.
2020-05-25 16:49:12 +01:00
johnm
9df5c9ba68
Default unique name for AI.
2020-05-24 13:52:48 +01:00
Oleg Agafonov
0be7d6579b
* UI: split cards - fixed wrong card names in rules text and hints ( #6549 );
2020-05-18 08:24:17 +04:00
Oleg Agafonov
dcd6cf34f3
Merge pull request #6546 from johnmeat/RangeOfInfluence
...
Default range of influence is now all players rather than one.
2020-05-17 17:45:03 +02:00
johnm
937b7f72ee
Default range of influence is now all players rather than one.
2020-05-17 14:35:41 +01:00
Oleg Agafonov
9424009721
Merge pull request #6394 from Craigacp/look-and-feel-fix
...
Change the nimbus look and feel name (OpenJDK support)
2020-05-10 09:44:28 +02:00
gp66
da1c9cc38e
missing token images in thb and war
2020-05-07 12:34:47 -05:00
emerald000
75bc19d4a7
Add a button on the deck editor to change your cards to the oldest versions.
2020-05-05 01:24:34 -04:00
Oleg Agafonov
2739391b1d
Merge pull request #6510 from gp66/completed-suggestions-iko-tokens
...
Completed suggestions iko tokens
2020-05-03 20:10:11 +02:00
gp66
f3bde1dbab
completed suggestions for IKO tokens
2020-05-03 12:52:51 -05:00
gp66
eba1980a9a
added IKO tokens
2020-05-02 21:52:33 -05:00
SpeedProg
325d96f6db
display ToolTipMarkTags in card renders in blue instead of leaving the closing </font> tag in the text
2020-05-01 17:47:00 +02:00
Tim Haering
17c40ead3c
add import support for mtgjson deck files
2020-04-29 20:29:15 +02:00
Adam Pocock
26d94db661
Update Mage.Client, Mage.Server.Console, and AbilityPicker LaF to use the supported class name.
2020-04-25 14:02:14 -04:00
Oleg Agafonov
1468f89ce6
* Images: added scryfall download support for Mystery Booster set;
2020-04-19 10:14:58 +04:00
Oleg Agafonov
75d145c7e5
Images: added scryfall download for IKO and C20 sets
2020-04-19 01:49:34 +04:00
Evan Kranzler
8494e98693
Implemented Yorion, Sky Nomad ( #6407 )
...
* Implemented Yorion, Sky Nomad
* Implemented Yorion, Sky Nomad (but for real this time)
* updated game creation to use the correct deck size for limited
2020-04-16 08:10:18 -04:00
Oleg Agafonov
80b7f8493b
UI: fixed font size in what's new button
2020-04-16 11:10:50 +04:00
Oleg Agafonov
ba46233dd1
UI: added euro server button;
2020-04-16 10:44:35 +04:00