Commit graph

4735 commits

Author SHA1 Message Date
Dennis Felsing 454194489b
Merge pull request #7319 from furo321/reset-zoom-on-change
Reset zoom when adjusting default zoom in settings
2023-10-07 22:09:43 +00:00
furo 8c9597667a Reset zoom when adjusting default zoom in settings 2023-10-07 23:24:36 +02:00
dobrykafe 0838fd9d04 fix requested changes 2023-10-07 15:52:36 +02:00
dobrykafe fc23f451b2 show clanmates in different color 2023-10-07 15:05:36 +02:00
Robert Müller 076a902684 Overhaul demo browser UI
Improve layout of demo browser buttons, search and checkbox. Use icons for most buttons. Decrease size of UI elements.

Move demo details from below the file browser to a side panel on the right, which is the same size as the server browser side panel. Use ellipsis to truncate the SHA256 instead of rendering only half of it with reduced font size. Show "map not included" instead of "0.00 KiB" for the map size of demos that don't include a map.

Remove the "Markers" column, as it is not very useful to see for all demos and sort by.

Closes #7275.
2023-10-06 21:46:13 +02:00
Robert Müller 706f021f68 Add CUIRect::Margin with vec2 argument
To more conveniently create different margins in horizontal and vertical directions at the same time.
2023-10-06 18:08:03 +02:00
Robert Müller 5a10ef049a Fix clang-tidy readability-static-accessed-through-instance
The crash that was occurring with this check was fixed in clang 15.
2023-10-06 14:07:02 +02:00
Robert Müller 48a92f1eac
Merge pull request #7303 from Marmare314/refactor-env-editor
Refactor `CEnvelope` class
2023-10-06 11:29:08 +00:00
marmare314 1ccb83b2ae make IEnvelopePointAccess destructor virtual 2023-10-05 22:34:51 +02:00
Robert Müller c0b8bf313c Fix selected demo index being desynced with selected demo name
When using the demo filter and the selected demo name does not match any visible demo item, temporarily reset the selected demo index instead of keeping an incorrect demo index. This makes the behavior consistent with the server browser.
2023-10-05 21:29:34 +02:00
Robert Müller 48ba1f463a Ensure CDemoItem member variables are initialized
The variable `m_Valid` was not initialized in all cases.
2023-10-05 21:29:33 +02:00
Robert Müller 39057d7b87 Fix demo render complete popup opening on error, improve layout
The popup to show the completed demo rendering was also shown when the demo to be rendered could not be loaded or if the demo render popup was cancelled. Now the popup is only shown when the demo rendering was successful.

The layout of the popup is made consistent with other message popups. Long text is wrapped over multiple lines instead of decreasing the font size.
2023-10-05 11:58:48 +02:00
Dennis Felsing 2e5ee8287e
Merge pull request #7008 from Robyt3/Datafile-String-Util
Add functions for reading/writing strings from/to datafile, minor refactoring of datafile/map reader
2023-10-03 20:54:40 +00:00
Dennis Felsing fb3c32a31f
Merge pull request #7292 from Robyt3/Client-Encapsulation
Encapsulate/move `IClient` member variables
2023-10-03 20:53:33 +00:00
Dennis Felsing 1c88adf4fd
Merge pull request #7294 from furo321/angle-paused
Don't use mouse position for angle if paused.
2023-10-03 20:53:11 +00:00
furo a08e306aa4 Don't use "direct input" if paused. 2023-10-03 20:59:12 +02:00
Robert Müller 6f1e08b6f4 Encapsulate/move IClient member variables 2023-10-03 17:56:17 +02:00
Robert Müller 7acf2c1573 Add functions for reading/writing strings from/to datafile
Simplify the usage of datafile reader and writer by adding utility functions to read and write zero-terminated UTF-8 strings.

Improve validation of string data read from datafiles. It is ensure that string data is null-terminated, has no internal NUL-characters and is valid UTF-8.

Fix loading of external sounds in the editor. The wrong path variable was being used, so the sound files would not be loaded from correct folder.

Add tests for new datafile reader/writer functions.
2023-10-03 16:07:15 +02:00
Robert Müller 589b047ee4 Track team killmessage victims separately, ensure initialization
Store client IDs of all victims for team killmessages instead of storing only the first victim ID, so the render info for all victims can be properly restored when skins are updated.

Ensure all killmessages are properly initialized.
2023-10-02 15:39:12 +02:00
Robert Müller 96ef1fbc88 Fix client render info not being updated when skin not found
The skin info was always updated, but the render info was only being updated for skins that can be found. Now the render info is also always updated.
2023-10-02 15:37:49 +02:00
Robert Müller 6094061a81 Add CTeeRenderInfo::Reset, ensure everything is initialized 2023-10-02 15:37:30 +02:00
Robert Müller e41b3a9b57 Use bool instead of int for m_GotAirJump 2023-10-02 15:37:26 +02:00
Robert Müller 1dedde542a Refactor ghost skin updating, ensure current ghost is updated
Rename function for consistency.
2023-10-02 15:35:12 +02:00
Robert Müller 9029fb9593 Remove CTeeRenderInfo member variables of CPlayers
The variables can be local variables in `CPlayers::OnRender`.
2023-10-02 15:34:39 +02:00
Dennis Felsing fe77f63a58
Merge pull request #7278 from Robyt3/Menus-Images-Scan-Refactoring
Refactor menu image scan
2023-10-01 22:22:24 +00:00
Robert Müller fa07f64982 Improve performance of menus checker background, refactoring
Avoid duplicate `SetColor` calls in loop.

Avoid `QuadsDrawTL` calls by batching quads together before drawing.

Use `SetColor` instead of `SetColorVertex`.
2023-10-01 21:01:10 +02:00
Robert Müller b1d90aaaf2 Store number of filtered players when filtering
Only update total number of filtered players when the filter is updated instead of calculating it every frame.
2023-10-01 20:53:29 +02:00
Robert Müller fe27752d40 Refactor menu image scan
Remove unnecessary check for duplicate menu images. Listing directories with the storage now prevents duplicates, so this additional check is not needed anymore.

Ensure menu images are in RGBA format.

Ensure menu image names are not truncated.

Minor code format improvements.
2023-10-01 19:39:04 +02:00
furo f55086f2bf Use m_aInputData for dummy in cl_show_direction 2023-10-01 01:14:35 +02:00
Dennis Felsing 49a5a591d7
Merge pull request #7269 from Robyt3/Serverbrowser-Favorite-Resort-Fix
Fix large FPS drop rendering server details of favorite server
2023-09-30 18:15:50 +00:00
Robert Müller 0025b6c1f3 Fix large FPS drop rendering server details of favorite server
The server list was being resorted every frame when the server details of a favorite server were being rendered, which was causing the FPS to drop by a factor of 5.
2023-09-30 15:48:10 +02:00
Dennis Felsing c731d5345f
Merge pull request #7087 from ChillerDragon/pr_streamer_mode
Add streamer mode to avoid leaks
2023-09-30 13:34:32 +00:00
ChillerDragon ca8d9d4f18 Add streamer mode to avoid leaks 2023-09-30 15:10:44 +02:00
Robert Müller cf35594fa4 Extract UpdateServerFriends function, cache friends on server
Calculate the number of friends on each server when refreshing the friend state of the server info instead of every time the server entry is rendered.
2023-09-30 13:32:36 +02:00
Robert Müller 034962ae24 Add enum ERankState to replace magic numbers 2023-09-30 13:29:28 +02:00
Dennis Felsing 1452b36dc0
Merge pull request #7172 from furo321/render-done-popup
Add a popup for when video render is done
2023-09-30 09:38:01 +00:00
Dennis Felsing 3e2893e638
Merge pull request #7182 from dobrykafe/pr-show-direction
Ability to show local keypresses only
2023-09-30 09:35:20 +00:00
Dennis Felsing aacfc9a357
Merge pull request #7241 from Robyt3/UI-LabelStreamed-HighlightedFix
Fix mangled highlighted text in server browser
2023-09-30 09:24:58 +00:00
Dennis Felsing 5b3738dc17
Merge pull request #7261 from furo321/demo-show-pred
Don't show cl_showpred in demos
2023-09-27 10:31:36 +00:00
furo 23477584d1 Don't show cl_showpred in demos 2023-09-27 11:31:53 +02:00
furo 25101d2cb0 Add missing descriptions of commands. 2023-09-24 23:21:10 +02:00
Dennis Felsing 708b263766
Merge pull request #7249 from Robyt3/Gameclient-ConfigManager-Getter
Add `IConfigManager` getter to `CGameClient` and `CComponent`
2023-09-24 18:38:29 +00:00
Robert Müller 2a17d1b8ac Rename variables containing ForeGround and BackGround
To `Foreground` and `Background` respectively.
2023-09-24 20:01:36 +02:00
Robert Müller 003d96e1c8 Add IConfigManager getter to CGameClient and CComponent 2023-09-24 19:55:20 +02:00
furo e93325b141 Increase freeview radius to kill tile border 2023-09-24 01:19:50 +02:00
Robert Müller 95675a97ad Fix mangled highlighted text in server browser
Refresh UI label text containers when the glyph count of the read-cursor has changed.

Regression from #7203.
2023-09-23 16:34:13 +02:00
Robert Müller 25b110c153
Merge pull request #7236 from furo321/add-is-process-alive
Detect if server started from client is no longer running
2023-09-23 08:50:39 +00:00
VoxelDoesCode c4d325e09b Show if your friend is AFK through friends list
resolve mege conflict

AFK -> Afk (for consistency)
2023-09-23 00:54:13 +02:00
furo 1a36743185 kill_process return true if process doesn't exist 2023-09-22 22:18:20 +02:00
furo 367f06a7f9 Detect if server started from client is no longer running
Add function to check if a process is alive.

Fix requsted changes
2023-09-22 20:17:40 +02:00