Commit graph

807 commits

Author SHA1 Message Date
Juan Linietsky 1add52b55e Brand new networked multiplayer 2016-08-19 16:48:41 -03:00
Franklin Sobrinho debf574df3 Implemented UndoRedo mergeable modes 2016-08-17 17:14:51 -03:00
Franklin Sobrinho 9f242ed6e5 Added add_property_info function to Globals and EditorSettings classes 2016-08-16 17:10:53 -03:00
Juan Linietsky 3db36684b1 Added high level networked multiplayer to Godot.
It's complete, but absolutely and completely untested, undocumented and NSFW.
Have fun :-)
2016-08-14 18:49:50 -03:00
Juan Linietsky 01bdfe1ff6 Missing some bits, and added connection status. 2016-08-14 14:07:23 -03:00
Juan Linietsky c21aae65b6 -Added an ENet implementation for NetworkedMultiplayerPeer for "a bit higher level" networking. 2016-08-14 14:07:23 -03:00
Johan Manuel 67b29e3b9e Fix some warnings about misleading indentation 2016-08-13 13:21:35 +02:00
Johan Manuel 046f94d3ac Remove some unused variables 2016-08-13 13:21:35 +02:00
Johan Manuel 8c0a050d49 Fix some warnings about unhandled switch cases 2016-08-13 13:21:35 +02:00
Juan Linietsky df6dbadc3e Fixed bug in make_dir_recursive, closes #6016 2016-08-08 18:21:06 -03:00
Rémi Verschelde 5d9967ef00 Merge pull request #6055 from eska014/native-bind-rettype
Allow documenting unexposed return types in bind_native_method
2016-08-08 18:23:36 +02:00
Juan Linietsky 9865650b43 Added a simpler way to do sub-functions in both visual and gdscript with the subcall node.
With this, visual script is almost done (missing registering custom nodes from addon).
All this is probably pretty broken, too and needs a lot of testing.
2016-08-08 01:21:22 -03:00
Juan Linietsky 0b8f0670c5 Automatically turn on process callbacks if relevant callbacks in node exists 2016-08-07 20:08:15 -03:00
Juan Linietsky b77200728e -Added yield nodes to visual script
-Added input selection nodes to visual script
-Added script create icon for those who miss it, will only appear when it can be used.
2016-08-07 19:22:33 -03:00
Juan Linietsky 9714a36e65 Reverted printable null object, seems to cause bugs around and not sure why.
Will have to check better, likely for 3.0
2016-08-06 20:13:27 -03:00
Juan Linietsky 9890c1d2ca Likely with bugs and with some features are missing, as well as profiler support, but VisualScript should be more or less done! 2016-08-06 19:00:54 -03:00
Juan Linietsky 259418f827 VisualScript can now execute visual scripts, but there is no debugger or profiler yet. 2016-08-05 22:48:00 -03:00
eska 4cd246898e Allow documenting unexposed return types in bind_native_method
Document return type of `Object.call` and `GDScript.new`
2016-08-06 02:21:29 +02:00
Juan Linietsky d8af6330e5 More progress on visual script editing 2016-08-03 11:28:43 -03:00
Juan Linietsky 3d1d190dcd Merge branch 'master' of https://github.com/godotengine/godot 2016-08-02 19:11:47 -03:00
Juan Linietsky ad313097eb WIP visual scripting, not working yet but you can check out stuff 2016-08-02 19:11:05 -03:00
Rémi Verschelde 37ce438787 Merge pull request #5976 from allkhor/master
Fix String::is_valid_integer() for single symbols + and -
2016-07-31 20:07:20 +02:00
eska b80c42ef4e Document FuncRef, GDFunctionState, InstancePlaceholder, RID, World2D 2016-07-30 21:27:58 +02:00
allkhor 09c4d65b64 Fix String::is_valid_integer() for single symbols + and - 2016-07-31 00:18:30 +06:00
Ignacio Etcheverry 2d4c4b6ea9 Fix regression with str() improvements for math types 2016-07-28 14:58:12 +02:00
Rémi Verschelde c6c9f29827 Merge pull request #5921 from neikeq/pr-issue-5919
Prettier str() for some math types
2016-07-27 17:23:17 +02:00
Ignacio Etcheverry eefca1ada9 Prettier str() for some math types 2016-07-27 17:00:07 +02:00
Bojidar Marinov 2150855faf
Fix reading of empty StringArray-s in .tscn
Closes #5912
2016-07-27 17:59:42 +03:00
Juan Linietsky 9151eb591d Changed the way the step decimals are computed to a safer way, fixes many issues. 2016-07-26 17:25:10 -03:00
Juan Linietsky c9d0053754 Merge pull request #5524 from pkowal1982/master
Array has(var value) function
2016-07-24 12:21:29 -03:00
Rémi Verschelde 308d405c31 Turn some prints to error logs, remove others
Fixes #5876 in passing.
2016-07-24 00:02:19 +02:00
Gau o fthe Veldt 82d4cb5114 Added slicing operation to DVector via DVector.subarray(int start,int end) method.
Negative indices index from the end of the array.
Indices are range checked before attempting and return appropriate error when out of range.
Binding for RawArray in gdscript to access DVector.subarray() provided.
Documentation of RawArray.subarray() in classes.xml provided.
2016-07-23 12:52:41 -07:00
Johan Manuel 5d52146ff7 Fix warnings in core/variant_op.cpp
Adds default cases in switches where needed, and replaces '0;' with ';;'
in macro expansions (as suggested by @vnen in #5587).
2016-07-23 14:58:37 +02:00
Rémi Verschelde c57b992774 Merge pull request #5847 from 29jm/patch-3
Expose virtual keyboard functions to GDScript
2016-07-22 08:39:07 +02:00
Johan Manuel ec8c6e2c7c Expose virtual keyboard functions to GDScript 2016-07-21 23:58:58 +02:00
Rémi Verschelde d723e5a62f Merge pull request #5560 from vnen/os-request-attention
Add OS.request_attention() for Windows
2016-07-21 17:29:45 +02:00
Juan Linietsky 79a7473cac put text formats for resources and scenes as priority 2016-07-19 21:40:05 -03:00
Juan Linietsky 0988970c1f Fixed properly not save signals that already exist in their base scenes, closes #5656 2016-07-19 21:26:12 -03:00
Rémi Verschelde 87d0515d09 Fix main scene not being saved when set via Play button
Fixes #1134 for real. Also tweaked the engine.cfg template
and the preference order when browsing for the main scene.
2016-07-19 21:35:14 +02:00
Rémi Verschelde 525fb01fd2 Revert "Homogeinize resource formats loaders/savers"
The text format definition needs to stay in `scene/` as it relies
on other scene components, and `core/` must stay self-contained.

This reverts commits a5e27503fd
and 1492fd8460.
2016-07-19 18:15:01 +02:00
Rémi Verschelde c328693e83 Merge pull request #5709 from akien-mga/pr-get-engine-version
OS: Add get_engine_version method
2016-07-18 00:55:29 +02:00
Rémi Verschelde b2953bc1cc OS: Add get_engine_version method
Fixes #5693.
2016-07-18 00:54:56 +02:00
Rémi Verschelde 8de5aedb9e Merge pull request #5718 from jay3d/master
Added gyroscope support to Godot and Android
2016-07-18 00:52:15 +02:00
Rémi Verschelde 22419082d9 Remove some noisy debug prints
Part of #5031
2016-07-17 18:25:21 +02:00
Juan Linietsky 24d86e33a6 Merge pull request #5467 from RandomShaper/enhance-tidy-extensions
Enhance/tidy file extensions management
2016-07-16 09:28:49 -03:00
Rémi Verschelde f07d4f556a i18n: Add missing locale identifiers for Bengali and Urdu
Fixes errors showing up since the addition of those WIP translations.
2016-07-16 13:17:09 +02:00
Jamil Halabi 370ae3512d Added gyroscope support to Godot and Android 2016-07-16 01:43:32 +08:00
George Marques 9a931e333c
Fix binding of File::get_sha256()
Fix #5698
2016-07-14 14:23:22 -03:00
punto- bba89aef3b Merge pull request #5559 from Hinsbart/connected_joysticks
Input: add get_connected_joysticks() method.
2016-07-10 14:00:27 -03:00
Juan Linietsky 9dac41432e Merge pull request #5443 from samuelgrigolato/iterate-string-in-gdscript
Add support to String type in gdscript iteration
2016-07-10 13:32:37 -03:00
Juan Linietsky 28641fd9b8 Merge pull request #5525 from SuperUserNameMan/window_get_latin_kb_variant
windows get_latin_keyboard_variant() implementation and gdscript binding, #5503
2016-07-10 12:41:05 -03:00
Rémi Verschelde 3a70d4a072 Merge pull request #5589 from akien-mga/pr-unused-var
Removing some more unused vars and dead code
2016-07-09 14:33:30 +02:00
Rémi Verschelde a15de80942 classref: Fix arg name for is_action_pressed/released
Also position TEXTURE_SPHERE constant properly.
2016-07-08 23:40:43 +02:00
Rémi Verschelde f40f360a2c Remove unused variables (fourth pass) + dead code
Also fix a potential regression from 3fcb9b1ec1.
2016-07-08 16:47:55 +02:00
Pawel Kowal 96eb97cbbf Array has(var value) function 2016-07-07 11:40:38 +02:00
George Marques 29b62ce5d0
Make sure builtin types' constants remain in order
This adds a list of constants for VariantCall to make sure the order of
register is kept when showing in the editor help and in the documentation.

This also remove the sorting of constants from the doctool, so it keeps
the natural order in classes.xml.
2016-07-05 17:09:16 -03:00
George Marques 5c355a63d3
Add OS.request_attention() for Windows 2016-07-05 12:29:08 -03:00
J08nY 0f767fe8b9
Fixed HQ2x compiler warnings 2016-07-05 16:52:31 +02:00
Andreas Haas 45cfd199a4
Input: add get_connected_joysticks() method.
fixes #5465
2016-07-05 14:08:02 +02:00
SuperUserNameMan 7a142780f0 windows get_latin_keyboard_variant() implementation and gdscript binding 2016-07-03 19:35:13 +02:00
Juan Linietsky eade613dc7 Merge pull request #5522 from neikeq/pr-issue-5519
Prettier str() for arrays
2016-07-02 11:35:30 -03:00
Ignacio Etcheverry 38ed5d9c7d Prettier str() for arrays 2016-07-02 15:54:37 +02:00
Juan Linietsky 72ab3c2236 Do a second stage remap, so it considers translation first, atlas second, closes #5147 2016-06-29 10:18:46 -03:00
Pedro J. Estébanez 1492fd8460 Make text formats preferent over binary ones 2016-06-28 19:25:10 +02:00
Pedro J. Estébanez 92f10a3582 Tidy up population of extensions list 2016-06-28 18:58:40 +02:00
Pedro J. Estébanez a5e27503fd Homogeinize resource formats loaders/savers 2016-06-28 18:27:12 +02:00
Rémi Verschelde bd424d8f73 Fix style bug in event queue
Same fix as for 1f9812ab83
Not sure if this code actually does anything though, `buffer_max_used` seems unused.
2016-06-28 08:00:33 +02:00
Juan Linietsky 1f9812ab83 fix bug in reporting of message queue size 2016-06-27 19:07:58 -03:00
Juan Linietsky efdcf205d2 Make most resources (save for packedscenes and scripts) reload if they change on disk. Closes #4059. 2016-06-27 13:17:20 -03:00
Juan Linietsky 47d6cc08bb Properly deliver localized coordinates when passing gui events through parents, closes #4215 2016-06-27 10:00:36 -03:00
Samuel Grigolato 9ac7eaa89c Add support to String type in gdscript iteration. #5188 2016-06-26 21:13:31 -03:00
Juan Linietsky fb9d1498bf Cleaner way to enable ptrcall 2016-06-26 11:59:25 -03:00
Juan Linietsky 3813160ea0 -Fix crashes with thread_exit()
-Added draft of C script API (still disabled and unused)
2016-06-26 10:54:45 -03:00
Rémi Verschelde 8a5d23c820 Merge pull request #5412 from vnen/dvector-invert-bind
Expose *Array.invert() to script
2016-06-26 09:46:51 +02:00
George Marques a6ec3af349
Expose *Array.invert() to script
Properly solve #4601.
2016-06-25 14:16:28 -03:00
Juan Linietsky 8dac3bf3b1 Added function to notify ScriptLanguage when a thread is created/freed, allows scripts to allocate a stack there via TLS 2016-06-25 10:41:23 -03:00
Juan Linietsky 62dfee768d changed way to return reference 2016-06-24 20:06:07 -03:00
Rémi Verschelde d52fa2e0eb Merge pull request #5380 from vnen/string-canvasitem-docs
Documentation for String and CanvasItem
2016-06-24 21:16:20 +02:00
George Marques f4dfa37a23
Fix bug in String==StrRange comparison
It was comparing the StrRange with itself, always return true if both
were the same length.

Fix #3843
2016-06-24 12:39:58 -03:00
George Marques 98b02209a4
Add sha256_buffer() function to String 2016-06-23 13:59:23 -03:00
Rémi Verschelde 60fa2b9815 Merge pull request #5201 from Hinsbart/quat_op
Expose missing Quaternion operators.
2016-06-23 10:00:05 +02:00
Rémi Verschelde 0f54ab93bc Fix typo to PTRCALL_ENABLED from previous commit
And boo @reduz, those trailing spaces :p
2016-06-23 07:54:30 +02:00
Rémi Verschelde 20112a338d Merge pull request #5338 from J08nY/array-bindings
*Array bindings
2016-06-23 07:21:10 +02:00
Juan Linietsky d6225b1e00 Improved binding system (ObjectTypeDB::bind_method) to be friendlier to statically typed languages, should help in the Mono integration.
Disabled by default.
2016-06-22 23:13:41 -03:00
J08nY 797168e62d
*Array: added bindings for other DVector methods
- affects {RAW,INT,REAL,STRING,VECTOR2,VECTOR3,COLOR}_ARRAY
 - adds bindings for append(),append_array(),remove(),insert()
 - broadens #4245
2016-06-22 11:51:59 +02:00
Rémi Verschelde 0266d752b3 Merge pull request #5333 from J08nY/signal-list-fix
Object: get_signal_connection_list fixed
2016-06-22 07:52:23 +02:00
Juan Linietsky 3edf66477a Fixed error using the same atlas rect for all images, closes #4139 2016-06-21 20:51:41 -03:00
Juan Linietsky d57b09e47b Better support in ScriptLanguage for GC based scripts 2016-06-21 19:36:22 -03:00
Andreas Haas d08092e113 Expose missing Quaternion operators.
Scripts can now evaluate the following cases:
 - (quat * real) and (quat / real)
 - (quat + quat) and (quat - quat)
2016-06-21 23:26:38 +02:00
Andreas Haas 6d09183c44 Set default duration parameter of joystick vibration to 0. 2016-06-21 17:06:41 +02:00
Rémi Verschelde 81a5e4238d Merge pull request #5325 from vnen/doc-file
Add class reference for File class
2016-06-21 16:34:18 +02:00
George Marques 0f20d8756e
Fix File.get_as_text() to return the whole file
It was returning only from the cursor forward.
2016-06-21 11:25:03 -03:00
J08nY 621b8d1324
Object: get_signal_connection_list fixed
now returns only the connections for the signal argument, as specified
fixes #5329
2016-06-21 13:07:50 +02:00
Juan Linietsky fa0d1cd27c fix CanvasItem.get_global_transform() and CanvasItem.get_local_transform(), closes #4075 2016-06-20 21:19:12 -03:00
Juan Linietsky 9d4cdc6d8a fix bug decompressing bc texture, closes #4404 2016-06-20 19:43:06 -03:00
Juan Linietsky 6872139300 Add quotes to .tscn keys, solves #4366 2016-06-20 18:41:59 -03:00
Juan Linietsky e9d2c9ad51 added missing status, closes #4361 2016-06-20 17:54:42 -03:00
Rémi Verschelde 3668768463 Merge pull request #5196 from vnen/similarity-code-completion
Improve code completion search
2016-06-20 13:37:24 +02:00
Juan Linietsky 5e816fd8c8 Property reporty base type when a function fails, fixes #4581 probably also closes other issues 2016-06-20 01:15:02 -03:00
George Marques 1b8d0a16b7
Add similarity comparison to String
Uses the Sorensen-Dice coefficient to calculate similarity. This also adds
String.bigrams() as a convenience function needed by the comparison.
2016-06-19 11:39:01 -03:00
Rémi Verschelde e76f744c36 Merge pull request #5283 from djrm/remove_prints
Removed lots of prints
2016-06-19 13:10:23 +02:00
Rémi Verschelde df202127e3 Merge pull request #5281 from J08nY/useless-preprocessor
Fix #5263: Useless preprocessor condition
2016-06-19 13:09:25 +02:00
Juan Linietsky 7c20c386c5 -Added trigger mode to tracks, useful for properties that work as triggers, such as playing a sample, an animation, etc.
-Better interpolation of discrete tracks, fixes #4417
2016-06-19 01:43:02 -03:00
Daniel J. Ramirez 422fac5066 Removed lots of prints 2016-06-18 18:01:06 -05:00
J08nY 449571b6cd
Remove USE_QUAD_VECTORS unused check 2016-06-19 00:41:52 +02:00
J08nY a95a1f47a4
Remove CHARTYPE_16BITS unused checks
fix #5263
2016-06-19 00:12:31 +02:00
Juan Linietsky 1c541a2bee corrently parse utf8 from zip_io open, closes #1708
this probably failed when exporting or opening android apk files too, should fix that too.
2016-06-18 17:29:41 -03:00
Rémi Verschelde c3bf11d4d4 Drop fully commented-out files
Part of #5272
2016-06-18 20:23:49 +02:00
Rémi Verschelde 80727b6896 Drop empty .cpp files for header-only classes
Part of #5272
2016-06-18 20:00:08 +02:00
Rémi Verschelde b7dbf9207a Drop empty files that are not used anywhere
Part of #5272
2016-06-18 19:46:30 +02:00
Juan Linietsky d8be671313 -Changed how Dir works so it's more user friendly, closes #4705 2016-06-18 12:11:48 -03:00
Juan Linietsky e3905a084e -made get_space_left() return values more homogenous, also for script, converted to mb, closes #4617 2016-06-18 11:32:45 -03:00
Juan Linietsky 61655d6dc2 Fixed make_dir and make_dir_recursive erros, closes #1680 closes #1872 2016-06-18 11:13:03 -03:00
Rémi Verschelde a7fc04626a Add missing license headers in our source files (#5255)
Also removes a couple wrong Godot headers from third-party source files.
2016-06-18 14:46:12 +02:00
Juan Linietsky ebbd705b63 Merge pull request #5250 from bojidar-bg/add-sha256
Add sha256 to String and File/FileAccess.
2016-06-17 10:57:15 -03:00
Bojidar Marinov 7073bb0bb2
Add sha256 to String and File/FileAccess.
Probably does #4166
2016-06-17 10:55:16 +03:00
Juan Linietsky f0d9245ecf -added missing .inc files
-Made it possible to change the editor theme
-Added two options to theme editor plugin to create empty template themes and editor themes
-Make sure that saved themes to .tres keep the null theme fields, to make it easier to keep those when saving/loading the theme
2016-06-17 01:13:23 -03:00
J08nY 6bbc53ee18
Fixed PacketPeer.get_var() return type in docs 2016-06-16 14:15:44 +02:00
J08nY cffdc52482 Classref: Added docs for StreamPeer* (#5216) 2016-06-15 13:32:12 +02:00
Rémi Verschelde 78b745bb0a Merge pull request #5192 from J08nY/issue-5190
Dictionary: rename param in .has() .has_all() .erase()
2016-06-15 11:13:59 +02:00
Rémi Verschelde ee105744e0 Merge pull request #5210 from J08nY/issue-5189
String documentation: .ord_at() returns int not String
2016-06-15 11:08:10 +02:00
Wilhem Barbier f665200df7 Add joystick vibration support on Linux (#5043) 2016-06-15 07:25:35 +02:00
J08nY 58a891265a
String documentation: .ord_at() returns int not String
fixes #5189
2016-06-14 14:52:32 +02:00
Juan Linietsky 5f674bdca1 Merge pull request #5179 from RandomShaper/better-android-export
Enhanced Android export
2016-06-13 15:06:37 -03:00
J08nY 7a19e3c6ae
Dictionary: rename param in .has() .has_all() .erase()
fixes #5190, param should be named key, not value
2016-06-13 19:08:04 +02:00
Juan Linietsky 20b4567829 Merge pull request #5177 from vnen/string-subsequence
Add subsequence search to tools
2016-06-13 13:25:56 -03:00
Juan Linietsky 45443a1651 Changed reload logic to auto-hard-reload scripts on save. It's simpler to use and also fixes #4756 2016-06-13 10:58:32 -03:00
Juan Linietsky 910151a361 -Avoid negative zero from being saved to config files o resource files, fixes #4758 2016-06-13 10:16:43 -03:00
Juan Linietsky 7f02627290 -Add visible IO errors when closing a file fails due to it being locked (most likely on windows), closes #4760 2016-06-13 10:10:50 -03:00
Pedro J. Estébanez e1948d520a Zip-align exported APK 2016-06-13 00:19:45 +02:00
George Marques a6c37d2b5d
Add 'is_subsequence_of' function to String 2016-06-12 14:52:54 -03:00
Juan Linietsky 4bb93c976c Made error when signal calls a method with the wrong number of parameters more detailed, closes #4893 2016-06-12 12:32:45 -03:00
Juan Linietsky 9ddc13a5cc -All variables from script are visible through get_property_list(), not just those with export()
-Added PROPERTY_USAGE_SCRIPT_VARIABLE to identify what comes from script
-closes #5146
2016-06-11 18:34:49 -03:00
George Marques 46b6bb9dc4
Add 'rfind' function to Array 2016-06-10 17:46:57 -03:00
George Marques 269d570420
Add 'from' argument to Array.find() 2016-06-10 15:43:07 -03:00
Juan Linietsky f8f30662d9 -Ability to reload (and soft reload) tool scripts. Please test! 2016-06-08 20:00:52 -03:00
Juan Linietsky 4b893ffeeb Merge pull request #4861 from brakhane/negative-indexing
Add support for Python-like negative indexing
2016-06-07 10:17:00 -03:00
J08nY 8a4eca8aa8
Exposed Image.INTERPOLATE_* 2016-06-07 11:46:07 +02:00
Rémi Verschelde 0729c852b4 Fix indentation issues in last commits
Ping @reduz.
2016-06-07 07:39:40 +02:00
Juan Linietsky c86f1f1737 Merge pull request #4693 from kjohnson0451/dvector_invert
Adds invert() method DVector
2016-06-06 20:54:39 -03:00
Juan Linietsky 82b759d938 Merge pull request #4895 from TheoXD/_fix_interactive_loader_cache
fixed interactive_loader() not returning a cached scene
2016-06-06 20:35:54 -03:00
Juan Linietsky 736b65e566 Merge pull request #4977 from SaracenOne/scripting_expose
Expose extra methods and constants to scripts
2016-06-06 20:27:40 -03:00
Juan Linietsky be830d10c2 Merge pull request #5026 from Geequlim/patch9frame-extension
Enhanced Patch9Frame
2016-06-06 20:15:33 -03:00
Juan Linietsky 7499fa4507 Merge pull request #5048 from J08nY/dictionary
Added Dictionary.values()
2016-06-06 20:09:04 -03:00
Juan Linietsky c42651c39e Merge branch 'master' of https://github.com/godotengine/godot 2016-06-06 19:56:34 -03:00
Juan Linietsky 85f4f39279 Added function get_signals_connected_to_this_this()
should help properly implement #5058
2016-06-06 19:55:50 -03:00
Roberto 04fc62c4e3 Add missing license information (MiniZip) 2016-06-06 12:32:02 +02:00
Juan Linietsky 2420e46b44 vsync support
-works on windows
-may not work on X11, if so please fix
-OSX does not seem to support disabling vsync
2016-06-05 19:14:33 -03:00
Dennis Brakhane 1e068d34f4 Add support for Python-like negative indexing
Negative indexing is a useful feature in Python, especially when combined
with array slicing. Array slicing will hopefully be implemented later, but
negative indexing is useful in its own right.

A negative index is indexing from the end of an array,
"array[-1] == array[array.size()-1]", using a negative index
larger/smaller than the length of the array is still an error.

While primarily useful for arrays and strings, support is also added to
"array like" structures like Vector3 and Color. This is done just
to be consistent; vector3[2] is much clearer than vector3[-1], but disallowing
it while allowing it for an array with 3 elements seems confusing.
2016-06-05 20:00:54 +02:00
Dennis Brakhane 842057e56f Move repetitive code to macros
In preparation for the following "allow negative indexing" commit,
replace the repetitive array "set index" and "get index" code with
macros.

no functional changes were made, the resulting machine code is unchanged.
2016-06-05 20:00:54 +02:00