Commit Graph

850 Commits

Author SHA1 Message Date
Crystalwarrior
ca83573d1b
Objections no longer force you into preanimations (#697)
* 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
2022-03-25 16:01:39 +03:00
Crystalwarrior
7af4d285c2
Fix aoimage masking being enabled by default (#703) 2022-03-25 16:00:20 +03:00
stonedDiscord
e0c67124a6
Midi music (#614)
* 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
2022-03-25 15:58:59 +03:00
Crystalwarrior
70230a6e61
for music, stop checking if future was cancelled due to a horrible race condition with an unknown reason why it happens (#700) 2022-03-25 14:31:10 +03:00
oldmud0
9dd1407103
Merge pull request #674 from AttorneyOnline/pausechar
Add \p for "pause", which lasts 0.1 seconds
2022-03-24 08:10:51 -05:00
Crystalwarrior
c3fd82eacc
Fix SFX dropdown regressions, make dropdown play sound if custom sound is listed regardless of Pre (#656)
* 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
2022-03-24 03:05:27 +03:00
Crystalwarrior
35fcbdeea8
Add showname and selfname colors to courtroom_fonts.ini (#672)
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-03-19 17:21:24 -05:00
Crystalwarrior
aa2a29f091
Fix demoserver max_wait skips happening even when they're not supposed to (#680)
* 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>
2022-03-19 17:18:27 -05:00
Crystalwarrior
df1c8ccd83
Add blip rate of 0 which only plays a single blip sound per message (#659)
* Add blip rate of 0 which only plays a single blip sound per message

* don't have copy-pasted code I GUESS
2022-03-19 15:31:38 -05:00
Crystalwarrior
fa6eef8eba
Allow character select list to refresh even if client is already loaded in (#655)
* 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>
2022-03-13 18:29:42 +03:00
stonedDiscord
92633e5ff2
try this reviewer (#668)
* 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
2022-03-01 21:37:11 +01:00
Alex Noir
d424020f42 Add \p for "pause" similar to \s and \f, which will pause the text for 0.1 secods 2022-02-23 21:35:07 +03:00
Crystalwarrior
ad460ceaff
Fix pos dropdown failing to get properly populated with bg pos (#661)
(caused by bc49b3e976
2022-02-20 23:03:36 -06:00
oldmud0
bcbbb899f9
Merge pull request #657 from AttorneyOnline/icons-for-all
Add icons for iniswaps and emotes in the dropdown
2022-02-20 23:00:04 -06:00
oldmud0
d0336c1035
Merge pull request #654 from AttorneyOnline/fix-bg-bug
Fix backgrounds getting messed up, closes #635
2022-02-20 22:51:35 -06:00
oldmud0
b5908ad5e6
Merge pull request #660 from AttorneyOnline/fix-evidence
Fix evidence system, improve evidence user experience
2022-02-20 19:47:09 -06:00
oldmud0
f3d2e7078c
Merge pull request #664 from AttorneyOnline/fix-music-segfaults
Don't run the base content vpath shenanigans if music path is HTTP
2022-02-20 19:17:11 -06:00
oldmud0
7ecb43d3a2
Merge pull request #665 from AttorneyOnline/background-ini-overlays
Add [Overlay] overrides to background design.ini
2022-02-20 19:13:17 -06:00
Salanto
e4779f09eb
Effects follow offset, add ini option to disable offset for effect (#663)
* 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.
2022-02-20 18:56:10 -06:00
Alex Noir
57ff1b9d2c Add background overlay overrides so you don't have to copy-paste the same file if you're just using it across multiple pos 2022-02-20 02:23:26 +03:00
Alex Noir
17b6f63268 Fix editing the image name not showing the "ok" button 2022-02-19 18:19:22 +03:00
Alex Noir
42b2a8af95 Fix evidence image button getting set to disabled 2022-02-19 17:59:56 +03:00
Alex Noir
39fbd4a881 Don't run the base content vpath shenanigans if music path is HTTP 2022-02-19 16:48:31 +03:00
Alex Noir
798617fc22 Polish up the evidence system so it's a single-click editing
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
2022-02-19 00:40:26 +03:00
Salanto
dd53b01ffd
Address potential source of race confition inside the play function (#658)
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.
2022-02-18 22:51:27 +03:00
Alex Noir
0e2bd0b110 Add icons for iniswaps and emotes in the dropdown
Fix iniswap list not recognizing a name that's different from a character folder when switching to that character
2022-02-18 22:02:18 +03:00
Alex Noir
737d581b73 Fix backgrounds getting messed up, closes #635 2022-02-18 18:27:56 +03:00
Salanto
e6f06d8959
Add server description to favourites, if supported by server. (#648)
* Allow servers to directly set the server description

* Hijack PN packet to add description.

* Update lobby.cpp

Apply suggested change
2022-02-15 08:15:57 -06:00
Salanto
5e60f277e9
Add demo_append to WT/CE part of the "RT" packet handler. (#649)
* Add demo_append to WT/CE part of the "RT" packet handler.

* Fix indentation + put demo recording outside the if else chain
2022-02-15 08:14:42 -06:00
oldmud0
549ceddfaa
Merge pull request #631 from AttorneyOnline/fix/application-version
Fix Qt application version being empty
2022-01-08 15:28:40 -06:00
oldmud0
7389b5071b Don't restart background if background is unchanged 2022-01-08 14:52:08 -06:00
oldmud0
7bf200a437 Fix Qt application version being empty 2022-01-08 14:21:56 -06:00
oldmud0
ba08ec0379 Fix more race conditions in AOLayer loading
- Uninitialized exit_loop variable
- Previous load task should stop completely before starting new load task
2022-01-08 12:55:10 -06:00
oldmud0
3ec3d3a121 Fix wrong precedence order for effects
This was causing the realization.png UI button to be loaded instead of the effect.
2022-01-08 12:51:49 -06:00
oldmud0
c07ff35897 Fix static effects not appearing
Static effects should be treated as infinitely looping animations.
2022-01-08 12:04:57 -06:00
oldmud0
c80a019574
Merge pull request #619 from AttorneyOnline/feature/http-ms
Switch to HTTP-based server list
2022-01-07 20:17:02 -06:00
oldmud0
9f09af1c39
Merge pull request #628 from AttorneyOnline/fix/msvc-aolayer-freeze
Fix MSVC builds freezing due to AOLayer concurrency issue
2022-01-06 08:23:41 -06:00
oldmud0
77b017a083 Fix MSVC builds freezing due to AOLayer concurrency issue
Variables accessed across threads should be atomic.

Also gave AOLayer its own thread pool and switched some lock calls to use QMutexLocker semantics.
2022-01-05 21:39:23 -06:00
oldmud0
7b4d1e96c6 Disambiguate settings with lobby_settings and courtroom_settings 2021-12-31 10:40:21 -06:00
oldmud0
e29a41b58f Remove AO1 MS code
You won't be missed :')
2021-12-30 21:47:41 -06:00
oldmud0
8822db8e82 Remove lobby chat
Goodbye, lobby chat :(
2021-12-30 21:46:24 -06:00
oldmud0
5d79a83fb5 Prevent old/bad "backup MS" values from preventing connection 2021-12-30 21:26:28 -06:00
oldmud0
6e1e847750
Add and refine debug log messages (#625)
Since these are going to be visible to the user now, at least let's properly format them and make them somewhat helpful.
2021-12-30 20:44:59 -06:00
oldmud0
ee76c2ce61 Merge branch 'master' into feature/http-ms
# Conflicts:
#	src/networkmanager.cpp
2021-12-30 20:31:44 -06:00
oldmud0
593bd54000
Merge pull request #624 from AttorneyOnline/feature/nicer-notice-timer
Polish appearance of "OK" button on notice
2021-12-26 13:18:33 -06:00
oldmud0
a180600bf4
Merge pull request #623 from AttorneyOnline/feature/debug-log
Remove MS chat and add debug log
2021-12-25 22:57:51 -06:00
oldmud0
dcff063f19 Don't hide "OK" on message timer, just disable it 2021-12-25 20:40:39 -06:00
oldmud0
ecfe6f2542 Change master chat in courtroom to debug log
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.
2021-12-25 19:17:27 -06:00
Salanto
c57afe821e
Sanity check before removing the ui element (#612)
Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2021-12-24 14:36:41 -06:00
Salanto
5ce0e6416e
Fix animation freeze when loading music files (#609)
* Implement async music loading

* Simplify music filename parsing and fix "missing" on streams

Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2021-12-24 14:05:01 -06:00
oldmud0
d1fb7fde16
Merge pull request #622 from AttorneyOnline/fix/emote-button-gen
Fix emote buttons not generating due to bad VPath lookup
2021-12-24 09:09:43 -06:00
oldmud0
efeaf429e7
Merge pull request #621 from AttorneyOnline/split-demo-option
Split logging option into text and demo
2021-12-24 09:09:12 -06:00
oldmud0
f44f3f9fd4
Merge pull request #620 from AttorneyOnline/remove-clientside-wait
Remove client-side send waiting
2021-12-24 09:09:04 -06:00
oldmud0
3c7f5619db Fix emote buttons not generating due to bad VPath lookup 2021-12-23 20:45:57 -06:00
oldmud0
2eed786c77 Split logging option into text and demo
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.
2021-12-23 17:29:17 -06:00
oldmud0
bcbe9a8a67 Remove client-side send waiting
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.
2021-12-23 17:05:11 -06:00
Pyraqq
26851be536
Add version to window title (#613)
Also updated the translation files for missing strings and updated the Polish translation.
2021-12-23 16:53:26 -06:00
oldmud0
d9e69cca06
Merge pull request #578 from AttorneyOnline/fix-desk-mods-again
Handle expanded desk modifiers on chat ticking start rather than on preanim complete signal
2021-12-22 00:59:48 -06:00
oldmud0
ecfb791e48 Roll back unintended changes 2021-12-18 22:41:45 -06:00
oldmud0
b0e9f8dbe5 Merge branch 'master' into feature/http-ms 2021-12-18 22:34:04 -06:00
oldmud0
cf12168ebd Qt 5.9 compat; remove dead code 2021-12-18 22:22:30 -06:00
oldmud0
d137022174 Remove another markdown thing 2021-12-18 22:02:30 -06:00
oldmud0
133b3b58d9 Remove markdown thing 2021-12-18 21:40:11 -06:00
oldmud0
f1107aeac5 Finish out feature
- Add periodic timer for heartbeat
- Add option to settings for opting out from heartbeat/player metrics
- Change base URL to permanent URL
2021-12-18 20:29:55 -06:00
Salanto
641cca6504
Add compiler flags to ensure correct signal is used in older versions (#617) 2021-12-14 20:32:05 -06:00
Salanto
bc49b3e976 Update slots/signals to Qt5 connection style and eliminate some clazy warnings 2021-12-11 02:09:27 +01:00
in1tiate
658a1ae624 Add an explicit check for empty string to dir_exists 2021-11-15 17:03:36 -06:00
in1tiate
101a5e506f Fix all files being allowed past the suffix check for images 2021-11-15 16:48:46 -06:00
Salanto
1f985c65c7 Resolve compile error due to enum first introdcued in Qt 5.14
Could Linux distros please update their Qt version? Thanks.
2021-10-12 07:27:06 +02:00
Salanto
2a923ac86f
Purge most clientside-OOC commands (#599)
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>
2021-10-11 17:53:44 -05:00
Rosemary Witchaven
3c3b88f05c
Fix paired character only playing animations once (#603) 2021-10-10 17:59:07 -05:00
Rosemary Witchaven
273ae64535
Add missing check for anim_state 5 (#601) 2021-10-09 10:29:15 -05:00
Rosemary Witchaven
c163aab671
Allow user to configure log timestamp format (#590)
* 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
2021-09-22 18:59:59 -05:00
Rosemary Witchaven
b2a4a41fd7
Fix background positions with no desk inheriting the previous position's desk (#598)
* kill bglayer if file not exist

* kill ALL layers if file not found
2021-09-18 09:33:00 -05:00
Salanto
97b1757da9 Remove /pair as a client-side command
Who was using this anyway?
2021-09-08 22:13:22 +02:00
Salanto
74d01e81fb
Fix VPath lookup ignoring possibility of remote files (#588)
* Fix VPath lookup ignoring possibility of remote files

* Use more formal URL check

Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2021-09-02 18:25:28 -05:00
Rosemary Witchaven
7ce4dd6f61
Use event filters instead of subclassing QLineEdit and QPlainTextEdit (#587)
* replace aolineedit and aotextedit with event filters
* use a button to make evidence editable instead of double click
2021-08-30 21:23:11 -05:00
Rosemary Witchaven
8b82f5d592
Fix an infinite hang when loading the pair character, fix strange undesired behavior of the pair character (#586)
* sanity check if the frame we're waiting on isnt nonexistent

* consolidate conditionals
2021-08-24 19:37:13 -05:00
in1tiate
3bcf01bb21 asynchronously load animations for bigly performant gainz 2021-08-13 03:23:12 -05:00
in1tiate
2a18c1cdec wait for thread to finish before starting new one 2021-08-11 20:14:35 -05:00
in1tiate
d84194871e comment out debug_movie 2021-08-11 09:38:05 -05:00
in1tiate
51698ca6ac debug_movie fixes 2021-08-11 09:28:59 -05:00
in1tiate
ce94cd2d1e preload next frame before ticking over 2021-08-11 09:20:00 -05:00
in1tiate
6bbb45a6d1 handle expanded desk mods on chat ticking start 2021-08-01 11:13:52 -05:00
in1tiate
15f0ee3838 swap out custom UNUSED macro for Q_UNUSED 2021-07-29 08:54:34 -05:00
in1tiate
2d3cab82c8 Fix custom objections not playing sounds 2021-07-22 12:26:57 -05:00
Rose Witchaven
5190490a07
Set BASS_CONFIG_DEV_DEFAULT to 1 to enable automatic reinitialization of the default device when it is lost (#564)
fixes #561
2021-06-18 23:58:46 -05:00
Rose Witchaven
65f812cf73
Extend /pair command to work with character names as well as IDs (#562) 2021-06-16 23:58:39 -05:00
oldmud0
b682d69e49 Use new HTTP-based master server client 2021-06-13 22:16:41 -05:00
oldmud0
9e0a964af8
Merge pull request #554 from AttorneyOnline/feature/mounting
Add support for mounting multiple base folders
2021-06-09 19:41:09 -05:00
oldmud0
2f50cd5528 Clear case sensitive cache as well on vpath cache flush 2021-06-08 23:12:19 -05:00
oldmud0
2cb7ca7895 Move global stylesheet to lobby and courtroom
This way, it will not affect the options dialog.
2021-06-08 22:50:32 -05:00
oldmud0
fbce4937ef
Merge pull request #557 from AttorneyOnline/minor-optimize
Fix excessive calls to arup_append
2021-06-08 22:08:04 -05:00
oldmud0
7cbd343ce9 Fix excess calls to arup_append
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!
2021-06-06 23:42:51 -05:00
oldmud0
b0a0926d35 Fix minor memory leak with configini 2021-06-06 23:39:19 -05:00
oldmud0
dcce175052 Fix clazy-range-loop-detach warning 2021-06-06 23:31:48 -05:00
oldmud0
e576a8b23d Fix bug with case-sensitive vpath lookup 2021-06-06 23:27:30 -05:00
oldmud0
9ecd7c453c Merge branch 'master' into feature/mounting 2021-06-06 23:23:33 -05:00
in1tiate
4fe4e6ad54 remember past search term when switching between area and music list 2021-06-06 22:54:14 -05:00
oldmud0
2ef7b206e2 Scan themes in all mount paths 2021-06-06 22:42:16 -05:00