aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-01-12Allow user themes to customize ui_music_list's indentation and animation (#395)in1tiate
* add music list indent property * add "animated" property to musiclist * switch from qstring to int
2021-01-12Better place to check invalid ID'sCrystalwarrior
2021-01-12Didn't notice I removed this from the mergening when I resolved merge ↵Crystalwarrior
conflicts, oops
2021-01-12Merge branch 'master' into feature/timerclockCrystalwarrior
# Conflicts: # include/courtroom.h
2021-01-12Desynchronize viewport from the IC chat log so that users have a smooth ↵Crystalwarrior
viewing experience as an option (#385) * Begin trying to understand handle_chatmessage monstrosity Rearrange some functionality to be more consistent with what the particular handle_chatmessage is *supposed* to be responsible for Single responsibility principle doesn't apply not just to script files but even functions in this goddamned program apparently. * Fix some oversights relating to "has presented evidence" logs * Fix an edge case crash with negative evidence, idk why this didn't happen before. * Completely refactor handle_chatmessage hell and split it up into single-responsibility-principle functions like a sane and organized coder would. This will break any PRs that touch handle_chatmessage and will have to conform to the new standard, but it's very good in the long run. Functions have also been meticulously commentated to make sure that everyone can understand at a glance what everything does. This refactor is done to pave way for smooth viewport, making characters no longer randomly interrupt each other when speaking. * Rename confusingly named "handle_chatbox" to "handle_ic_speaking" Add a new function "handle_callwords" * Parse blankposts in the packet unpacking phase log_chatmessage is now an argument-based funciton instead of using m_chatmessage monstrosity Commentate the heck out of log_chatmessage Fix showname displaying logic being bonkers for log entries Fix -1 char_id most likely crashing client, even tho they're supposed to be system messages Fix [CHARID] being referenced instead of [OTHER_CHARID] in the pair display func Fix chat message color being used for "has played a song" even though it shouldn't * Move setting emote_mod from the objection thing to the packet unpacking thing handle_emote_mod has become argumented * Make display_pair_character take in only vars it needs * Add functionality for message stacks (does not handle logging separately yet) Currently segfaults at line 1823 if stacking behavior actually occurs. Plz help I'm poopie brain at this * Make sense of pointers and dereference some pointers to prevent wacky errors Replace _stack with _queue, and turn it into a QQueue * Implement a minimum text delay queue timer so that each msg must stay on screen for a specified amount of time Chat_arrow only shows up when the minimum text delay has expired Check if target is muted in the enqueueing, as well as the validity of the character id, so we don't even bother adding it to the queue Add a settings option to set text stay time (minimum amount of time to pass before displaying the next message). TODO: Handle queued interjections in a cooler way * Adjust default option for stay_time to be 200ms Make the stay_time setting of 0 disable the queue system entirely * Make interjections force-clear the message queue Use interjections to instantly process those messages - objections are usually extremely important and must have everyone's immediate attention. TODO: Add a settings option for interjection behavior * Clear message queue when bg display packet is received * Add an instant objection setting which, when enabled, will interrupt and skip the message queue on objections (effectively bypassing text_delay system) * Stop using AOPacket for the queue and use QStringList instead (packet contents, we don't care for the header) Implement objection threshold which works in a queue if instant objections are disabled (not exposed to the settings yet) Modify packet contents directly instead of waiting for m_chatmessage shenanigans (we should deprecate this soon) Rename isinstant_objection_enabled options check to be more consistent * Make it so objections display as soon as the message is over if instant_objection is disabled * Remove emote_mod = "1" thing that had no real purpose Implement desynchronized logs settings option, which is false by default, meaning users' messages and display IC logs are going to be in sync. Split up display and logging behavior, meaning IC logs will be saved with accurate timings on the .logs file, while display can be slower. Remove dumb "System" showname thing cuz it was dumb * Bring back minimum packet size safety check * Make sure shouts are properly logged. I am very sorry for this horrible amount of code duplication though. * fix compile errors * fix html parsing error * Rearrange the order of logging so IC messages go like this: * shouts go first * evidence goes second * chat message goes last * Fix No Interrupt coming back, go away you foolish beast * fix borked options dialog * Crank down "press enter delay" from 600ms to 200ms so it's not as harsh Co-authored-by: in1tiate <radwoodward@vikings.grayson.edu> Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2021-01-11Update creditsoldmud0
2021-01-11Remove raidensnake from credits per requestoldmud0
Who knows what's up with him.
2021-01-11Bump version to 2.9.0oldmud0
2021-01-11Merge pull request #396 from skyedeving/fix-spectator-muteoldmud0
Set music and objection players to volume slider in update_character
2021-01-11Allow button generator to generate both on and off buttons (#320)in1tiate
We'll see how cursed this is.
2021-01-11Merge pull request #397 from skyedeving/rename-logoldmud0
Set log filename to a more sortable format
2021-01-11Screw it, let there be clock_0Crystalwarrior
2021-01-11Add "id" variable to the clock functions and properly parse the IDCrystalwarrior
Implement scalable maximum clock count, right now it's at 5 clocks a theme can have max Theme "clock_" starts from 1 instead of 0 since users don't know when stuff starts at index 0 TODO: testing lol
2021-01-11Set log filename to a more sortable formatSkye Deving
2021-01-11Set music and objection to volume slider in update_characterSkye Deving
2021-01-10Merge pull request #393 from skyedeving/fix-empty_sm_packet-crasholdmud0
Add arup_clear() and clear arup when fetching new areas
2021-01-10Trivial comment changeoldmud0
2021-01-10Add arup_clear() and clear arup when fetching new areasSkye Deving
Theoretically fixes #313 The "FA" packet from the server invalidates the client's previous area list so it makes sense for the arup information tied to that list to be invalidated as well (especially seeing that the area and arup share the same index). As we repopulate the client's area list, we do the same for the arup list.
2021-01-10Merge branch 'master' into feature/timerclockCrystalwarrior
# Conflicts: # include/courtroom.h # src/courtroom.cpp
2021-01-09Merge pull request #392 from AttorneyOnline/in1tiate/label-truncationoldmud0
Reimplement #149 (label truncation)
2021-01-09more commentsin1tiate
2021-01-09i barely had to modify thisin1tiate
2021-01-09Remove redefinition of variable in same scope (#391)Skye Deving
2021-01-09Merge pull request #387 from AttorneyOnline/feature/immediateoldmud0
Rename noninterrupting bonanza to consistent and short "immediate" instead
2021-01-09Add desk_mods 2 -5 for more flexibility in emotes (#353)in1tiate
2021-01-09correct my widdle fucky wucky (#390)in1tiate
2021-01-09Fix segfault in server list without a server selection (#374)Skye Deving
Also bumps C++ version to C++17 (C++1z).
2021-01-09Rename noninterrupting_preanim and all its associated bullshit with more ↵Crystalwarrior
cooler and nicer bro immediate In themes, pre_no_interrupt old-style name is still supported if we cannot find "immediate" Resolves https://github.com/AttorneyOnline/AO2-Client/issues/64
2021-01-09replace "gender" with "blips" (#386)in1tiate
Co-authored-by: Crystalwarrior <Varsash@Gmail.com>
2021-01-09Populate non-default background positions from design.ini, allow 2.8-style ↵in1tiate
default positions (#352) * populate pos dropdown from design.ini * add sane default, remove hardcode bs
2021-01-09Log objections IC, overhaul custom objections context menu, add more ↵in1tiate
configuration options per-character (#356) * initial commit * The Quick-Fix is a secondary weapon for the Medic. It is a prototype Medi Gun with a group of three gauges on one side, a (cosmetic) ÜberCharge gauge on the other side, and what appears to be a blender for a body. The main gun is coupled with a medicinal reactor backpack with glowing portions that replaces Medic's default backpack. * fixed settings dialog * slightly less stupid custom objection default Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com> Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>
2021-01-09only play expanded songs, music_random (#376)in1tiate
2021-01-09Resolve https://github.com/AttorneyOnline/AO2-Client/issues/275 by adding a ↵Crystalwarrior
"Nothing" option to play no SFX even when playing a preanimation that behaves similar to the Default option (#383)
2021-01-09Move user-made iniswaps to a global configuration file and make character ↵in1tiate
folder iniswap files immutable (#350) * add default iniswap file * switch to using base/iniswaps.ini for user iniswaps
2021-01-09Define IC Log colors independent of character, define message colors ↵in1tiate
according to character (#323) * IC Log colors now defined independent of character * Fix regression causing incorrect colors in the viewport * fix goof that broke chat scrolling * Only regenerate color vector when it's needed
2021-01-09Rework timer and ping logicoldmud0
The timer's time as received by the server is clarified to be the actual numerical time, in milliseconds, to be shown on the clock.
2021-01-08Merge pull request #382 from skyedeving/fix-more-leaksoldmud0
Fixing more leaks from orphaned QWidgets
2021-01-07Adopt the orphaned msgBox's and add delete on close attributeSkye Deving
2021-01-07Set delete on close attribute for orphaned widgetsSkye Deving
2021-01-07Adopt the scroll widget in the options dialogSkye Deving
2021-01-07Adopt the poor orphaned QWidgetsSkye Deving
2021-01-07Add QMenu delete on close attributes (#381)Skye Deving
Fixes a minor memory leak with context menu creation.
2021-01-07Set emote format to apng if png supports animation (#379)Skye Deving
2021-01-06Merge pull request #316 from AttorneyOnline/messageboxoldmud0
add BB packet for a MessageBox popup
2021-01-06Use call_error() for character load error messageoldmud0
2021-01-06Merge pull request #364 from AttorneyOnline/issue-templateoldmud0
Update issue templates
2021-01-06Merge pull request #362 from skyedeving/fix-casedoc-loadingoldmud0
Encode doc contents with hash sign
2021-01-06Merge pull request #377 from skyedeving/fix-has-apngoldmud0
Checking for apng should be lower case
2021-01-06Checking for apng should be lower caseSkye Deving
2021-01-05Merge pull request #369 from skyedeving/fix-showname-toggleoldmud0
Fix timestamps when toggling showname