| Age | Commit message (Collapse) | Author |
|
Introduce start_auth_flow, a function invoked by typing `/auth username`
in OOC. It sends an public-key authentication request to the server,
starting the entire flow.
The flow invoves two dialogs: to select the key, and to enter the
passphrase to unlock the key. For convenience, each successful unlock
also remembers the key for that username on the server, storing this
in `saved_auth.json` (I chose JSON because I wanted it to stay
human-editable; INI would be better, but it suffers from bad platform
quirks in Qt).
|
|
IL packet is a relic from pre-IPID days when moderators used it to get
the "IP list" of connected users.
Its function is to display a list of strings in the OOC chat box. That's
it. Not even some obscure feature that can be revived. Everything IL can
do, CT can do (the "OOC message" packet).
|
|
We have SP and JD to precisely handle positions and judge buttons.
|
|
- For QCheckBox: stateChanged -> checkStateChanged
- QChar(PREANIM) -> QLatin1Char(PREANIM)
- Unused result on demo_file.open()
- QPointer include was missing from lobby.h
- Missing const and override qualifiers
|
|
Instead of waiting for the incoming message and checking that you've
sent it by comparing character IDs, reset it right away after pressing
Enter.
From the network standpoint, there's no reason to wait and acknowledge
the IC message this way because TCP already ensures reliabile delivery.
Removing this avoids sending duplicate messages during lag spikes. It
also subjectively improves responsiveness.
We lose a bit of convenience. The text box will be cleared even if your
message was never broadcast (due to serverside mute, for example), but
Ctrl+Z fixes that, and that's how OOC chat has always worked.
|
|
Server already gives the response to our authentication atttempt,
there's no need for CLIENT to tell us about the "Disable Modcalls"
button (which is actually labeled "Guard").
|
|
|
|
This fixes "Reload theme" button resetting position.
|
|
This obscure feature has been present for years, from sending passwords
to the server to showing `char_passworded` image over character icons.
Servers could already exploit clients sending `PW` with a password every
time they select a character to implement passworded characters. The
clients had no way of knowing which ones were passworded, however, and
couldn't filter them despite "Passworded" checkbox being here all along.
The approach used by this commit is a hack. During loading, server sends
SC which is a list of characters, each one having name, description, and
evidence. In practice, only names were used. Descriptions were stored in
memory but unused, and evidence was ignored altogether. By adding a
magic value "P" in this "character evidence" field, server can mark
passworded characters without breaking Vanilla compatibility.
|
|
Presenting evidence took volume as a parameter which it also set. It's
unnecessary as the evidence uses the same SFX player, the volume of
which is controlled by the player with a slider.
|
|
Additionally, fix the path construction for music tracks that are
requested via asset URI.
|
|
SFX and blip players largely remain the same.
For the music player, we now have to implement network streaming
natively, we no longer have a convenient function that did everything
for us. I introduced QNetworkRequest to download the stream in memory
and signal when it's ready to be decoded and played back. The size is
guarded to prevent the client from accidentally downloading terabytes of
audio.
Delete QFutureWatcher, we no longer need it for concurrency. miniaudio
uses a separate audio thread. Network donwloads and communication with
the track name display are handled by Qt signals.
Also, delete an odd "music.txt" feature. Its purpose was specifying
offsets for loops in a text file per track, but it remained obscure and
unused in practice.
Unsupported:
- Large streams, including unbounded ones (radio). We'll need a ring
buffer for that, and a mechanism to write to it from the network and
feed it to the audio thread.
- Effect flags: fade in, fade out, sync pos. Ignored.
- Audio device selection.
|
|
* Close punishment dialog when the user leaves
Prevents silly moments where the wrong person gets banned/kicked
* Fix formatting
---------
Co-authored-by: stonedDiscord <Tukz@gmx.de>
|
|
|
|
|
|
* remember category expansion state when regenerating musiclist
* don't do file i/o here actually
---------
Co-authored-by: stonedDiscord <Tukz@gmx.de>
|
|
implementation (#1080)
* Move showname switch to settings and fix it
* let the append function handle shownames
|
|
|
|
* Reworked legacy position population
- Changed data structure to a static list of pairs to avoid unnecessary deep copies
- Fixed oversight which caused iteration over the value and not the key of the previous QMap
* clang-format pass :rolling_eyes:
* disambiguate pair order further
|
|
|
|
songlist (#1066)
* add song favoriting
* remove incorrectly placed sort()
* store as qstringlist instead of using keys
|
|
|
|
|
|
|
|
* Fixup evidence presentation code, methink
* Bump RC, because I can
|
|
|
|
|
|
|
|
|
|
calculaiton (#1038)
* Make slides correctly respect X offset
* Bump to RC4 cause I am cute like that
|
|
* Version bump and minor fixes
* Remove unecessary headers
Thanks QtCreator
|
|
* Fix transformation mode for layers
Resolve #997
* always use smooth transform resampling for stretched images
* Used fixed frame size
* Implemented resize mode changes
Resolve #999
* Added alias to pixel resize mode
* Added user option
---------
Co-authored-by: in1tiate <32779090+in1tiate@users.noreply.github.com>
|
|
[Feature] Add support for windows position restore
|
|
|
|
* Commit
* Boyfailure code commit
* Cooking code spaghetti
* Accidental overwrite recursive function call hell
* Implemented player list
* Add partial moderator widget
Sleepy time! Hee-Hoo!
* Moderator Dialog - Step 1 - WIP
* Appease the clang gods
* Clang appeasement policy
* *sacrifices goat to clang*
* Added player report, reworked implementation, ...
* Added player-specific report
* Reworked implementation
* No longer uses JSON.
* Removed preset loader.
---------
Co-authored-by: TrickyLeifa <date.epoch@gmail.com>
Co-authored-by: Leifa <26681464+TrickyLeifa@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
Resolve #985
Co-authored-by: stonedDiscord <Tukz@gmx.de>
|
|
|
|
Co-authored-by: Salanto <62221668+Salanto@users.noreply.github.com>
|
|
|
|
|
|
Fix #978
|
|
* Explicitly set sane line spacing
* Update naming to reflect setting set by Format + fix memory leak
Address memory leak
---------
Co-authored-by: Salanto <62221668+Salanto@users.noreply.github.com>
|
|
|
|
only applicable on servers which send displayable background updates on area switch
|
|
* Added screen slide timer
* Added so that the animation becomes interruptible.
|