aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-08Move global stylesheet to lobby and courtroomoldmud0
This way, it will not affect the options dialog.
2021-06-06Fix clazy-range-loop-detach warningoldmud0
2021-06-06Fix bug with case-sensitive vpath lookupoldmud0
2021-06-06Merge branch 'master' into feature/mountingoldmud0
2021-06-06Scan themes in all mount pathsoldmud0
2021-06-06Don't store key in asset lookup cacheoldmud0
2021-06-05Greatly improve case-insensitive lookup speedoldmud0
By using hash tables, the algorithmic complexity of the case-insensitive lookup has been reduced from O(n * k) to amortized O(k), where n is the number of files in each level and k is the number of directory levels that need to be traversed. This massively improves performance on Linux when loading characters, especially when there are many missing characters, since it is no longer necessary to scan the entire character folder repeatedly.
2021-06-05Use intuitive behavior for loading assets with ambiguous extensionsoldmud0
2021-06-05Finish mounting featureoldmud0
To pull this one off, a new class called VPath was created that denotes "virtual" paths that can exist anywhere among the list of mount points. It is functionally identical to QString, except that implicit conversion between QString and VPath is not allowed. This makes it easy to spot errors in path resolution at compile time, since get_real_path must be called to resolve a VPath into an absolute path that can be passed into a Qt function as a QString. Other functions, such as the get_*_suffix functions, also return an absolute path QString for convenience. As for the rest of the functions that return a VPath, you will need to call get_real_path yourself. Finally, a path resolution cache was added to try to avoid blowing up what is already a massive lookup cost for assets. The cache is invalidated when the mount path list is changed. Currently, this cache isn't bounded. Might need to write an LRU cache if issues arise.
2021-06-02Merge pull request #549 from Salanto/asset-packet-musiclistoldmud0
Music list streaming support over ASSet packet
2021-05-29Partial: Add mount list to options dialogoldmud0
2021-05-16Merge pull request #552 from AttorneyOnline/fix/effects2oldmud0
Account for the difference between theme and misc pathing when getting image and sound data for effects
2021-05-16account for both theme and misc pathing which are different because this ↵in1tiate
program is well made and does not make me want to pull my hair out
2021-05-12Commit suggestionSalanto
2021-05-12Merge branch 'add-asset-packet' into asset-packet-musiclistSalanto
2021-05-12Prevent crash when sending empty ASS packetSalanto
2021-05-05Add musclist streaming supportSalanto
Attempt Nr. 2 - Based on #548 and #501 + Allows client to use a remote source as a last resort if the file can't be found locally. + Adds a check if the target file is missing. This implementation assumed the streaming source to be structured like a webao content respository
2021-05-05Merge remote-tracking branch 'origin/handle-music-refactor' into ↵Salanto
asset-packet-musiclist
2021-05-04Add Asset PacketSalanto
This packet is used to send the client the URL of an online content repository, if available.
2021-04-29Merge pull request #526 from AttorneyOnline/crystalwarrior/demo-reloadoldmud0
Add a /reload command that quickly reloads the current demo
2021-04-29Merge pull request #545 from MangosArentLiterature/default-shownamesoldmud0
Add default shownames
2021-04-29Merge pull request #542 from AttorneyOnline/fix/aolayer-crapoldmud0
Fix AOLayer-related regressions, deprecate BS no one uses and return sane behavior
2021-04-28Add default shownamesMangosArentLiterature
Adds a new setting to config.ini to set a default showname. This works similarly to default username, but for IC shownames, setting the client's showname automatically. Like default username, this has a 30 character limit. * Adds a new option to config.ini, default_showname. * Adds this setting to the options dialog. * Adds get_default_showname() for retrieving this showname. * Sets the showname box to this value upon joining a server.
2021-04-26Merge pull request #543 from AttorneyOnline/fix/effects-pathingoldmud0
Fix effects in misc folders not being detected by get_effects
2021-04-26check for effects without path in p_miscin1tiate
2021-04-25Merge pull request #541 from AttorneyOnline/feature/default-scaling-optionoldmud0
Add setting for default scaling method
2021-04-24fix interfacelayer not applying stretching when load_image is called (reload ↵Crystalwarrior
theme, chat arrows, etc.)
2021-04-24Deprecate tick_ms and use actual milliseconds rather than arbitrary 60ms ↵Crystalwarrior
ticks for char.ini [Time] Fix an extremely weird case where CharLayer::Play() was not called even on the CharLayer class (I don't understand why inheritance was straight up just ignored) Fix using preanims with static images just breaking everything Deprecate weird insanity [Time] with the % sign BS (What was this for again? Literally no one used this nor was aware of it) Fix text_stay_time timer firing even if we're immediate Just in case, stop the text delay timer when start_chat_ticking is called
2021-04-23Add setting for default scaling methodoldmud0
2021-04-23Move other duplicate reset calls to their own methodoldmud0
2021-04-23Expand .css power by giving object names to all AO UI elements (#534)Crystalwarrior
* Fix ic chatlog placeholder text not being translated * Fix inconsistent/nonsensical path resolution for the backwards-compatibility misc/default/config.ini vs themes/current_theme/misc/default/config.ini Co-authored-by: in1tiate <32779090+in1tiate@users.noreply.github.com>
2021-04-23Fix get_court_sfx using latin1 instead of utf-8 (#540)Crystalwarrior
Co-authored-by: in1tiate <32779090+in1tiate@users.noreply.github.com>
2021-04-23Merge branch 'master' into crystalwarrior/demo-reloadCrystalwarrior
2021-04-23Update themes submodule (#539)oldmud0
2021-04-23Fix Cyrillic characters not being read correctly from QSettings inis (#535)in1tiate
* set ini codecs to utf8 * fix color config reading in Latin1 rather than Utf8
2021-04-23Merge pull request #538 from AttorneyOnline/fix/showname-enableoldmud0
Fix shownames disappearing forever if a message is sent while the shownames checkbox is unticked
2021-04-23Merge pull request #533 from AttorneyOnline/fix/regression-charlayer-patholdmud0
Fix regression that won't allow us to give a direct base/ path to a char emote
2021-04-23Automatically fix desynced demo files with issues pre-#496 PR (#532)Crystalwarrior
* Implement a demo auto-fixing solution. If the client detects a pre-2.9.1 demo file, it will prompt the user if they wish to correct it, since otherwise the demo will be desynched from reality. The aforementioned issue was fixed in https://github.com/AttorneyOnline/AO2-Client/pull/496 however 2.9.0 still has incorrect demo recording. Fix potential memory leak by not flushing and closing the demo file after opening it for reading. * backup broken demo file before fixing it * comments ahoy Co-authored-by: in1tiate <radwoodward@vikings.grayson.edu>
2021-04-23make sure we save the shownames even when theyre disabledin1tiate
2021-04-22move timer reset to its own methodin1tiate
2021-04-22Do the same as previous commit for the get_asset_paths func - only check ↵Crystalwarrior
for the direct file path before missingno
2021-04-22Charlayer - only check for direct path after the previous checks fail but ↵Crystalwarrior
before missingno
2021-04-22Fix charlayer regression not allowing us to *directly* refer to an emote we ↵Crystalwarrior
want to use with a file path (base/misc/blank for example) Actually use the helper funcs for searching images instead of reimplementing the same thing
2021-04-21Merge pull request #531 from AttorneyOnline/fix/broken-demosoldmud0
Fix demo playback max_wait -1 incorrect behavior when non-IC is processed
2021-04-21Fix log_chatmessage referring to the global m_chatmessage instead of the ↵Crystalwarrior
local variables that should be sent to it at the point of the func being called. (#530)
2021-04-21Fix last line in the .demo file not being processedCrystalwarrior
Fix timings for OOC being really busted if max_wait is -1 (dunno at which point this bug was introduced)
2021-04-20Reset timers, evidence list and background whenever /load or /reload is usedCrystalwarrior
2021-04-20Merge pull request #504 from AttorneyOnline/fix/css-lagoldmud0
Fix character select screen lag/performance overhead
2021-04-20Merge pull request #529 from AttorneyOnline/crystalwarrior/coolchat-plusoldmud0
Narrator IC chat support
2021-04-20Better logs with OOC logging, [IC] and [OOC] tags (#519)Crystalwarrior
* Add OOC logging to the .log files, making them infinitely more precious to GMs especially of ambitious multi-area RPs Add [IC] and [OOC] tags to distinguish between the types of msg * minor wording change for .log top line to make it clearer that it's the server address and not the user address Co-authored-by: oldmud0 <oldmud0@users.noreply.github.com>