* Make objections respect the user's preanim setting
* Replace all magic numbers with the emote mod enum
Fix preanim zoom not toggling the checkbox from char.ini, but deprecated "4" doing it
* Comment handle_emote_mod a bit better to explain some jank
* Fix play SFX logic being inconsistent during narrator chat (emote is "")
* hail clang-tidy
* add bassmidi everywhere but CI
* hello CI please don't ban me from github
* add lib and open midi files with the lib
* overlooked windows CI
* yes, overwrite everything
* add tracker support
* add file formats that bass supports
* forgot .mid smh
* load all plugins in one function
* Fix SFX dropdown not playing a sound despite a sound being selected.
It was waiting on a preanim box to be checked, but that behavior was not intuitive. Plus this is a regression from intended behavior
* Make "default" sfx behavior behave as expected
* Tidy up the network logic for emote_mod and comment all of its behavior
Fix sfx not playing when immeidate is checked on
* make emote_mod an enum so I don't have to go scouring documentation to learn what it does anymore
not adding emote mod for enums 2, 3 and 4 cuz those are planned to be deprecated in a later PR
Make Clang happy with no bracket-less if statements
* Fix demoserver max_wait logic being absolutely bonkers, causing random skips that make no sense
actually comment this piece of code
* Add /debug command to demos which allows you to see the remaining time for each packet, allowing you to visualize wait packets.
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Allow "SC" packet to be used to refresh the character list even if the client is loaded in
Fix tree list of characters not being cleared properly between "SC" packets
Fix client theme breaking when joining a server with empty character select list
* Do my review suggestions on CW's behalf
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
* try this reviewer
* test the reviewer with a very bad piece of code
* it can't handle spaces
* run cmake to find all the files
* file go brr haha
* cmake needs qt installed
* rename file once again
* use windows
* also doesn't like brackets
* can't use windows
* install qt the linux way
* try using cmake this way
* cmon cmake
* install qt before running cmake
* forgot catch2
* need to install as root
* add build dir
* delete test file
* fix 3 warnings
* enable clazy
* Revert "fix 3 warnings"
This reverts commit 7e64d4a546c397b5b69554ccf6765bf0a068f695.
* disable 3 warnings
* add a bracket for readability
* install clazy before
* get qt 5 real
* try lukkas cmake modules
* dupe courtroom again to test clang-tidy
* courtroom.cpp was a mistake
* remove magic number warning
* Effects follow offset, add ini option to disable offset for effect
This is pretty hacky, but the offset data is necessary to move the effect layer in relation to the character.
Fix evidence editing regressions caused by #587
Fix issues with "ok" button detecting itself as "changes from the server"
Fix "ok" button remaining after you press it once, allowing you to spam evidence update packets by spamclicking it
Current working theory is that setting the future opens a brief interval where it deconstructs the old future and returning an invalid QFuture,, causing a segmentation fault.
Since the MS chat has been disabled for quite some time now (and we aren't planning on bringing it back since Discord, Guilded etc. have better chat features), I decided to go ahead and change the pane into a debug log to keep it useful and avoid creating a gaping hole in themes.
Though, maybe it is worth removing the whole switcher and keeping the debug log hidden away where it can't scare people.
* Implement async music loading
* Simplify music filename parsing and fix "missing" on streams
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
Apparently, people don't like logging demos because it takes up too
much space. It's possible to enable NTFS compression for demo files
(or the entire demos folder), though.
This piece of code from another era is not needed anymore thanks
to the message queue and decent server-side anti-flooding. Player
input won't be thrown away since the client waits for an
acknowledgement from the server before clearing the input box.
Remove OOC-Client commands that are already replaced by UI elements that are easily accessible.
Debatable if /save_case and /load_case should stay as they seem unused by most users/servers.
* Maintain backwards compatability with older servers.
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
* user configurable timestamp format
* fix label making the entire settings window move jankily
* add a dropdown for sane timestamp formats
* streamline adding options to log timestamp format
According to profiling results, arup_append was being called around 90k times (!!) because it had been placed in the inner for loop. That's (tracks * areas)^2. Yikes!