Commit graph

1229 commits

Author SHA1 Message Date
def b57ffa429e Use scancodes instead of keycodes for input (fixes #796, please test) 2017-07-21 19:53:49 +02:00
HMH bfc5700314 Yes the Kernel and Interfaces need to be deleted too... 2017-07-21 19:46:31 +02:00
HMH ae411710ba unload fonts that are not in use anymore 2017-07-21 19:10:50 +02:00
HMH 7f7fa06dd6 free the Client created by CreateClient 2017-07-21 16:46:29 +02:00
HMH 7486ee867e also Unload Sound 2017-07-21 16:37:23 +02:00
def bf6c91a25c Oops, update4 2017-07-17 00:08:15 +02:00
def a30323d986 oops 2017-07-16 21:27:18 +02:00
def 4a8f3b083d Use new update server that runs on Let's Encrypt 2017-07-16 11:46:38 +02:00
def e4364983ab Use https for map downloads by default 2017-07-16 11:29:10 +02:00
def 191eefbb2f Only trust our own custom-selected CAs for our maps download server 2017-07-16 11:25:38 +02:00
def c7c9c3c4dd Possible to use https:// for map downloads, but still use http:// by default 2017-07-16 10:45:41 +02:00
def f9170fd031 ugly workaround for dummy input when frozen with grenade and getting hammered 2017-07-15 18:59:33 +02:00
def 5ad633ef26 No success with Windows fixes, have to delay until someone with a
Windows computer can look into it
2017-07-15 17:29:57 +02:00
def fba3815ddc Only send password on connection when explicitly asked to (fixes #788) 2017-07-15 17:29:20 +02:00
def 49eb0128f2 Windows cleanup 2017-07-15 16:38:40 +02:00
def 1e3476e8bd Opposite manifest setting 2017-07-15 16:18:18 +02:00
def 78dc5aa959 Another Windows DPI try 2017-07-15 15:31:53 +02:00
def f627a72ebb Refcount IME usage (fixes #577 and #738) 2017-07-15 15:25:36 +02:00
def ff8d22e335 Audio volume on right speaker should depend on x coordinate, not y... 2017-07-11 22:10:23 +02:00
Dennis Felsing 38eacf21b7 Next try for Windows 2017-07-11 14:37:12 +02:00
Dennis Felsing 6a90b00b0b Types 2017-07-11 14:25:53 +02:00
Dennis Felsing d6f6095358 Types 2017-07-11 14:24:28 +02:00
Dennis Felsing 81c6d0b33c Who doesn't enjoy fixing Windows stuff? 2017-07-11 14:08:03 +02:00
def d0f4ffdaad SDL_HINT_VIDEO_HIGHDPI_DISABLED 2017-07-09 19:53:02 +02:00
def 53565aa937 fixes 2017-07-09 14:56:57 +02:00
def afe8b4dfbe Or we just disable stupid highdpi... 2017-07-09 14:50:10 +02:00
def 46cedf3a8c Compiler warnings 2017-07-09 10:27:58 +02:00
def 66f6f16e81 Windows DPI fixes #2 2017-07-09 09:44:07 +02:00
def 2a1bf93165 Try to fix Windows DPI issue 2017-07-09 09:24:08 +02:00
def 35dcb4d6cf Don't open map file again if we have it open already 2017-07-08 22:09:03 +02:00
def f3e3d57a90 Always close files, cleaner demo recording, fix some other stuff 2017-07-08 13:39:20 +02:00
heinrich5991 409bc0e019 Ensure null-termination in str_escape
This also fixes a couple of potential buffer overflows. The affected
code is still buggy (doesn't do the right thing on potential buffer
overflow), but at least it won't result in crashes/out of bound writes
anymore.
2017-07-08 13:06:03 +02:00
def 36d5c8d608 string toggling supports escaped strings; also some code cleanup 2017-07-08 11:03:51 +02:00
def 73c61e4169 Let's not save maps that are ok already 2017-06-11 20:18:28 +02:00
def 2bd6316ce7 Add code for fixing old maps by removing unused tiles 2017-06-11 19:53:55 +02:00
heinrich5991 743c58e4ae Revert "Fix OSX cmake build"
This reverts commit 3406f01ff9.
2017-06-09 19:34:01 +02:00
Learath2 3406f01ff9 Fix OSX cmake build
A little crude but it works.
2017-06-09 16:05:04 +02:00
eeeee 2797227063 also remove references to CGameContext from CServer 2017-06-05 22:31:56 -07:00
def b592d6af55 ms not µs for thread_sleep 2017-06-02 23:28:47 +02:00
def 7e503a306b Revert "Back to cl_cpu_throttle_inactive"
This reverts commit c217040319.
2017-06-02 23:27:35 +02:00
def c217040319 Back to cl_cpu_throttle_inactive 2017-06-02 23:18:14 +02:00
def 8553ed727b Replace cl_cpu_throttle with cl_refresh_rate 2017-06-02 21:33:45 +02:00
def 4125941896 Disable dbg_stress in release builds (fewer confused kids that think they hacked the server, less useless code in cache) 2017-06-02 20:45:09 +02:00
def 814feede33 Don't copy strings into themselves 2017-06-02 18:37:29 +02:00
heinrich5991 5ae37e6c72 Add protocol extension with UUIDs
This system can easily be extended by independent authors without
collisions, something the old system with plain increasing integers did
not allow.

Do this by utilizing the previously unused message code `NETMSG_NULL`
which has a value of 0.

This works for engine and game messages, snapshot items and events.
2017-05-25 00:52:43 +02:00
Dennis Felsing 728e548f55 Merge pull request #754 from SheikhZayx/master
CSV file instead of statboard screenshot
2017-05-14 11:49:46 +02:00
def 6d81f1f188 Fix cl_cpu_throttle_inactive 2017-05-14 11:01:48 +02:00
SheikhZayx ea0e4948b4 CSV file instead of statboard screenshot
En-/Disable statboard being saved as csv
2017-04-26 05:10:31 +02:00
Dennis Felsing 40d3b4071d Merge pull request #729 from Learath2/dd_pr_friendcoll
Strict checking for friends
2017-04-12 11:16:20 +02:00
Learath ec1581f13a Strict checking for friends. Fixes #539 2017-04-12 11:04:20 +02:00
Learath2 568b5e5603 Pointers should be set to NULL 2017-04-12 01:20:39 +02:00
Learath 389b432758 Take a blind stab at #718 2017-04-11 21:47:27 +02:00
heinrich5991 1d81d56850 Introduce new, vanilla-compatible server info protocol
This means that we have a reliable and fast way to query for extended info,
while also not wasting network bandwidth.

The protocol is designed to be extensible, there's four bytes space for
encoding more request types (currently zeroed), and there's one string in each
response packet and one string for each player available (currently the empty
string).

The protocol itself has no problems with more than 64 players, although the
current client implementation will drop the player info after the 64th player,
because it uses a static array for storage.

Also fixes #130, the player list is just sorted each time new player info
arrives.
2017-03-29 12:56:13 +02:00
necropotame b8e4e5beea Fix style in several places 2017-03-22 19:45:14 +01:00
heinrich5991 f5446ca3b0 Fix unsigned/signed comparison warning when interacting with freetype 2017-03-19 17:19:59 +01:00
heinrich5991 d91cca728d Partially revert warning-fixing, it caused warnings on other systems 2017-03-12 16:47:37 +01:00
Ryozuki 84726547aa Fix warning also for server.cpp, and fixed client.cpp 2017-03-12 14:49:18 +01:00
Ryozuki 79f5b26cf7 Moved _WIN32_WINNT to the top instead 2017-03-12 14:45:57 +01:00
Ryozuki 1614e59e8f Fix some warnings 2017-03-12 12:12:39 +01:00
heinrich5991 f2b2eb8639 Allow easier login for passwords with spaces 2017-03-10 12:30:41 +01:00
Dennis Felsing 761c3c9be1 Merge pull request #646 from heinrich5991/pr_ddnet_brace_style
Fix the brace style in some places
2017-03-09 13:31:21 +01:00
Learath2 4101acd747 Add rcon_login 2017-03-06 10:31:05 +01:00
heinrich5991 ba5af42b1f Fix the brace style in some places 2017-03-04 15:43:49 +01:00
heinrich5991 e3f2316106 Revert "Revert "Refactor dummy input and demo filtering""
This reverts commit 187560c8c0.
2017-02-28 10:08:14 +01:00
Dennis Felsing 187560c8c0 Revert "Refactor dummy input and demo filtering"
This reverts commit 8375f4888e.
2017-02-28 08:15:35 +01:00
Dennis Felsing eb36f421c5 Merge pull request #630 from heinrich5991/pr_ddnet_cmake_basic
Add overly simple CMakeLists.txt
2017-02-27 16:28:19 +01:00
heinrich5991 8375f4888e Refactor dummy input and demo filtering
Remove references to src/game/ from src/engine/
2017-02-23 14:13:14 +01:00
Learath2 09552a6d9f Get rid of trailing whitespaces 2017-02-21 19:11:43 +03:00
Dennis Felsing c21399c4c5 Merge pull request #567 from d3fault/master
dummy copyMoves/hammer disabling when dummy connecting
2016-11-07 10:20:11 +01:00
Dennis Felsing ab6ed4c589 Discard invalid snaps 2016-11-04 13:26:46 +01:00
def 34531c0696 cleanup 2016-11-03 22:10:31 +01:00
d3fault d6b732113e dummy copyMoves/hammer disabling when dummy connecting 2016-10-26 15:00:02 -07:00
heinrich5991 fce9ec6cda Replace UI elements for the timeout code
Now you can regenerate your timeout seed with the click of a button.
2016-10-03 13:56:15 +02:00
heinrich5991 89b6d0c3da Fix C89 compilation and a copy&paste mistake 2016-10-03 12:31:11 +02:00
heinrich5991 7ca2697135 Generate server-specific timeout codes
This way, servers can no longer hijack the timeout codes of clients.
Timeout codes are generated from md5(seed + dummy + server address).

If `cl_timeout_seed` is set to the empty string, the old config options
are used instead.
2016-10-02 11:36:42 +02:00
gjdaniel1999 142ae25e5d Fix #267
Fixes crashes caused by dns timeout.
2016-09-28 10:48:51 +05:30
Dennis Felsing 98a2f459b6 Merge pull request #533 from BannZay/openCurrentMap
Load Current Map button added
2016-09-05 18:27:54 +02:00
BannZay 66c44cea79 MAX_PATH_LENGTH instead of pure magick 2016-09-05 18:54:35 +03:00
ACTom 363d0f81a4 Fix editor cannot input
fix bug that press ctrl+shift+e enter editor and cannot input anything.
fixed by TsFreddie
2016-08-27 02:29:57 +08:00
BannZay c658411f15 Load Current Map button added 2016-08-23 14:29:53 +03:00
Freddie Wang e5f23cd87c Added full IME support
Now with display of editing text.
2016-08-14 22:16:06 -07:00
Freddie Wang 51a7b01190 temporary ime fix
Fixed Asian IMEs which need to press enter to confirm candidate text.

Disabled keyinput while editing candidate in IME.
2016-08-14 21:01:31 -07:00
def 28f50e4440 Revert "Implement comma in search and exclude queries to separate search terms"
This reverts commit 3341e18d13.
2016-08-07 00:52:00 +02:00
def 3341e18d13 Implement comma in search and exclude queries to separate search terms 2016-08-02 22:16:02 +02:00
def 866ffe8ef2 Fix mouse when opening editor with cl_editor 1 2016-07-03 23:16:43 +02:00
def 4681f69b1b Introduce cached ticks for client again, this time with workaround for
particles. Hopefully not many other parts of the code will need this.
2016-06-28 23:36:34 +02:00
def 19feacb2ad Revert "Cache time on client as well"
This reverts commit 987fad55cd.

Broke too many graphics animations, couldn't find a fix
2016-06-28 02:51:26 +02:00
def 987fad55cd Cache time on client as well
- Fixes FPS for me after suspend from 40 to 500 fps
- Should generally improve performance
- Might lead to a few problems where we need to call set_new_tick() in a
  few more positions, so test please
2016-06-28 02:16:55 +02:00
def aeec3c6396 Add support for mousewheelleft and mousewheelright 2016-06-21 15:31:28 +02:00
def 8753620e42 Also use cl_reconnect_timeout on 'Too weak connection' 2016-06-19 02:17:23 +02:00
Tim Schumacher 96bcedec29 just set first char of ddnet filter to zero 2016-05-19 15:54:52 +02:00
Tim Schumacher dae855ee9f clear ddnet filter strings before appending 2016-05-19 15:51:48 +02:00
def bb634d7641 Reconnect to last server address, not the one selected in browser 2016-05-17 18:56:33 +02:00
def 695bf346ac Make gfx_refresh_rate functional (fixes #255) 2016-05-10 17:43:27 +02:00
def 2fc2515e0f Fix DDNet server browser to refresh only once on start, not twice 2016-05-10 12:40:33 +02:00
def 461a09451d Improve handling of multiple screens and missing screens 2016-05-07 23:19:46 +02:00
def 642e7f7671 Still hide window at start (fixes fullscreen in Gnome) 2016-05-07 21:16:31 +02:00
def 9bd30ce447 Make high-dpi screen support optional 2016-05-07 17:47:05 +02:00
def 4631a7cfa6 Try to enable HighDPI (untested) 2016-05-07 16:35:31 +02:00
def 340c4d2398 Leave it up to the WM where to position windows 2016-05-07 15:59:40 +02:00
def c325b08087 Add inp_mouseold for warped mouse input 2016-05-07 15:59:13 +02:00
def f2100fbad7 Change window focus handling (disable input grab when focus lost) 2016-05-06 11:29:34 +02:00
Ryozuki 82d2a994ed Fixed cl_showping (now cl_showpred) 2016-05-05 18:07:00 +02:00
def 1b668047c8 Clean up auto reconnect and make it independent of rendering 2016-05-04 18:23:00 +02:00
def 21ac41bfae Clean up fifo console 2016-05-02 23:36:21 +02:00
def 61e47422f6 Clean up debug messages a bit (lower case, no useless errors) 2016-05-02 21:35:32 +02:00
def a8ce73dffa Comment m_InpuIgnoredModifiers a bit 2016-05-02 18:21:54 +02:00
def a9ed7035ee Add inp_ignored_modifiers to ignore set of keyboard modifiers 2016-05-01 23:07:19 +02:00
def 28571e9cb5 Damn Windows XP 2016-05-01 20:23:14 +02:00
def 0bab90aa20 ALT modifier has no special meaning for key input 2016-05-01 19:57:38 +02:00
def 487de16200 Anotehr WinXP fix 2016-05-01 19:56:18 +02:00
def dc45ecbe6d Try to fix du.bat 2016-05-01 19:56:13 +02:00
def a4840cdfd3 Fix ed_showkeys with mousewheel 2016-05-01 19:34:16 +02:00
def faa576e73d Another mouse fix try 2016-05-01 15:34:36 +02:00
def 981533e177 More mouse fixes with SDL2 2016-05-01 15:20:52 +02:00
def 143fd88c2a Ignore relative mouse movement when in absolute mouse mode 2016-05-01 15:02:08 +02:00
def 644a23ba57 Fix folder creation 2016-05-01 14:45:47 +02:00
def ab13a0086d Updater: Support downloading files into new directories 2016-05-01 14:20:55 +02:00
def 779c6d2508 Only move cursor when window has mouse focus 2016-05-01 14:00:53 +02:00
def 32db2e6915 Updater: Support DLLs for win32 and win64 2016-05-01 13:11:51 +02:00
def 88780b8fbc Use new ddnet update server 2016-05-01 12:09:02 +02:00
def 15fa9f7b74 minor fix: false instead of SDL_FALSE 2016-05-01 11:39:40 +02:00
def 6b3e0981a1 Case-insensitive 2016-05-01 11:23:56 +02:00
def 53a7623191 Updater special handling for ttf files (same as dll) 2016-05-01 11:23:32 +02:00
def cc002d244d Fix gfx_resizable to be on by default with X11 2016-05-01 03:28:41 +02:00
def 72a6e20ba8 Split CInput::NextFrame() from CInput::Update() (fixes #444) 2016-05-01 00:18:25 +02:00
def d1b87e6794 Fix resolution on Mac OSX (fixes #445) 2016-04-30 23:10:09 +02:00
def f79bdf69a5 typo 2016-04-30 22:55:21 +02:00
def 0385c3b520 Workaround for global hotkeys causing SDL keydown events 2016-04-30 20:27:47 +02:00
def 4761608329 Input fixes from TW master for mouse wheel 2016-04-30 20:11:26 +02:00
def 1446adee2c Window resizing only with X11 (not on Windows and Mac OS X) 2016-04-30 19:19:19 +02:00
def 644fec7e55 Resize window without restarting client 2016-04-30 17:59:58 +02:00
def 74f4ad77d6 fixed utf8 text input from tw master 2016-04-30 04:02:32 +02:00
def 502c5aa3cb Ignore keys after window regained focus 2016-04-30 03:32:23 +02:00
def 26c9c39004 Disable HighDPI displays 2016-04-30 03:32:01 +02:00
def 9b20d3a0ad Fix relative mouse 2016-04-30 02:06:41 +02:00
def 2a7aa33830 Normal mouse speed again 2016-04-30 00:52:43 +02:00
def 7a5b79e48a More SDL2 graphics goodness, partially from TW master 2016-04-30 00:43:11 +02:00
def 11e3fd55db seperated ingame input handling from rendering (from TW master) 2016-04-29 23:05:20 +02:00
def 1727dd5a72 Some early SDL2 Android fixes 2016-04-29 22:56:13 +02:00
def e8965bee68 Some keyboard input changes from teeworlds master 2016-04-29 21:56:38 +02:00
def 354696afb7 switch between fullscreen and windowed mode without restarting the client (by oy) 2016-04-29 21:56:38 +02:00
def 6c4e6c5c44 setlocale for XOpenIM with compose key 2016-04-29 21:56:38 +02:00
def 8e3550f9c6 Fix keyboard segfault 2016-04-29 21:56:38 +02:00
def 10d6f69d32 Fix Mouse buttons 4 and 5 2016-04-29 21:56:38 +02:00
def 0155c75cf4 Keyname for mouse9 2016-04-29 21:56:38 +02:00
def a089d3d36d Fix issue with keys not being recognized on non-English keyboards 2016-04-29 21:56:38 +02:00
def bd2b61f0e5 Initialize m_pClipboardText 2016-04-29 21:56:38 +02:00
def c5db3ef5f4 Use SDL_free instead of free 2016-04-29 21:56:38 +02:00
def ea45173612 Fix NotifiyWindow on Windows 2016-04-29 21:56:38 +02:00
def 3e9b8a62ce Add includes for windows' getenv/putenv/free 2016-04-29 21:56:38 +02:00
def 632db36fe4 Add clipboard copy&paste support (by swick) 2016-04-29 21:56:38 +02:00
def 9918ada2d8 Add comment about mouse sensitivity on X11 2016-04-29 21:56:38 +02:00
def 4111acd309 Add WIP 2016-04-29 21:56:38 +02:00
def 8bfc0008b7 Hide window until OpenGL context is created
Fixes aspect ratio distortion when using multiple screens with different
aspect ratio and switching between them while starting the client
2016-04-29 21:56:38 +02:00
def 6efd028393 Make NotifyWindow work with SDL2 2016-04-29 21:56:38 +02:00
def 38cfe32385 Fix stuck mouse 2016-04-29 21:56:38 +02:00
def 5cdb36ecb0 Debugging with text input handling 2016-04-29 21:56:38 +02:00
def ff2a7272fa Improved window grabbing: only when relative mouse mode is active 2016-04-29 21:56:38 +02:00
def 63a4c804de Grab window, fixes mouse moving out of window and losing control 2016-04-29 21:56:38 +02:00
def 2d70c3e292 Try to get SDL2 on Windows working 2016-04-29 21:55:48 +02:00
def db8a126315 Merge swick's SDL2 branch 2016-04-29 21:55:48 +02:00
Dennis Felsing 12fa78ca75 Merge pull request #316 from Learath2/pr_dllupdate
Allow for the update of dll files
2016-04-27 22:18:30 +02:00
def ccbdf1d073 Add demo_speed command (fixes #354) 2016-04-27 17:21:40 +02:00
def 0f5611c2f0 Add function to filter chat out of demo when slicing (fixes #382) 2016-04-27 17:05:30 +02:00
def a93e7710e1 Remove hacky security against rcon spoofing because we have a better one now (client-side) 2016-02-22 19:56:30 +01:00
def 52224875b4 Style cleanup 2016-01-23 21:44:45 +01:00
def 51504d2bd2 Switch dummy snapshots as well to prevent snapshot accumulation (fixes #400) 2016-01-23 21:42:35 +01:00
H-M-H e41b4f463d Merge pull request #389 from H-M-H/command_usage
added (console-)command usage fixes #387
2016-01-03 20:59:32 +01:00
def 7223d0ecc1 Use a do-while loop instead 2016-01-02 19:51:22 +01:00
east f3f33904f7 secure_rand() as replacement for client source port generation 2016-01-02 15:37:44 +01:00
H-M-H 8e24ef8020 commanddescription can now be placed directly in
the commandparamsstring: "s[file]"
2015-12-28 16:19:52 +01:00
H-M-H 11a426c18b added (console-)command usage 2015-12-23 14:29:31 +01:00
timgame 2874e18ce0 dont restore empty config values at start 2015-11-16 20:31:56 +01:00
H-M-H f0d10ac62d better get dummyinput directly from CControls 2015-11-10 20:29:12 +01:00
H-M-H 50c80a1cfb classmembers shall start with m_ ! 2015-11-09 20:27:18 +01:00
heinrich5991 e6959e116e Only update cl_antiping_* if cl_antiping is 0
If cl_antiping is 1, the previous version of the code would have set all
other antiping variables to 1 anyway, so with this commit the user can
retain their antiping config if they configured after the last start of
the old client.
2015-10-06 15:59:11 +01:00
heinrich5991 7512cc10d6 Introduce a mechanism to import old configs and use it for cl_antiping* 2015-09-10 12:31:02 +01:00
east 5dd2169bb0 keep support for map fastdl 2015-09-01 17:55:12 +02:00
east 7720d6bbf2 client exception for NETMSGTYPE_SV_EXTRAPROJECTILE not vital 2015-09-01 13:50:45 +02:00
oy e91d26b8ac force vital check on essential cl/srv messages and added additional sequence checking 2015-09-01 13:50:45 +02:00
Learath2 27d9ad9bfc Get rid of unnecessary debug messages 2015-08-29 23:55:41 +03:00
Learath2 5f4e2511fb Allow updating dll files. Replace vectors with map. 2015-08-29 23:48:04 +03:00
Learath2 8504dbc058 Create directories if they are missing 2015-08-29 23:47:55 +03:00
Learath2 d08bd06610 Fix variable naming 2015-08-29 23:46:22 +03:00
def 043d718698 Fix dyncam mousesens 2015-08-27 21:52:10 +02:00
def 1dddf42cbb Simplify Dyncam and fix #311 2015-08-27 20:26:05 +02:00
def 12f55eb76c Try FreeConsole() instead 2015-08-26 15:12:27 +02:00
def fe22edadaa Hide console window on Windows by default 2015-08-26 12:40:50 +02:00
def 902e4b7487 Also use map name by default for manual demo recording 2015-08-22 17:36:47 +02:00
def 83be8af082 Change auto demo recorder format (fixes #297)
- auto/MAP_TIME.demo instead of the old auto/autorecord_TIME.demo
- Made CFileCollection usable with a wildcard to include the entire
  directory and not just files with a specific file name
2015-08-22 17:22:46 +02:00
def db2256e827 Fix a few whitespace-at-end-of-file issues 2015-08-22 15:27:41 +02:00
Dennis Felsing 37256d6e2c Merge pull request #283 from savander/DDRace64
Improvements for demoplayer (pause/unpause demo is bindable) + you can hide scoreboard after death
2015-08-13 17:25:57 +02:00
Adam Jaworski 41620b1a36 Con_DemoPlay instead of Con_PlayDemo and demo_play instead of playdemo 2015-08-12 14:26:48 +02:00
def 8f532aad9f Use autoexec_client/server.cfg by default, fall back to autoexec.cfg for both 2015-08-12 13:49:16 +02:00
Adam Jaworski 18fae123ab Playdemo - Check if demo is played 2015-08-12 12:17:19 +02:00
Adam Jaworski 8d4aea8a00 Added: playdemo command to start demo via console, bindable 2015-08-12 11:59:34 +02:00
Nikita Zyuzin 0b9e2f144c Add prefix Cl to dummy and player variables 2015-08-07 00:16:33 +04:00
def eb29a21142 Improve friends and foes feature
- Add friends and foes commands to list them
- Make clan optional for adding and removing
2015-07-28 16:13:29 +02:00
def e97c8ac08f Add foes (permanently ignored players) 2015-07-22 22:16:49 +02:00