Commit Graph

527 Commits

Author SHA1 Message Date
oldmud0
fd1855b8d0 Merge KFO source unconditionally into AO2 2020-05-22 19:17:55 -05:00
oldmud0
8928aa2718 Perform clang-format
If you don't want to see this commit on blames, use the hidden
whitespace option on GitHub, or use `-w` in git-blame.
2020-05-22 17:13:37 -05:00
oldmud0
156a760eba Full revert to tag 2.6.2
Due to a countless number of changes made to the core that were not
fully understood, tested, or documented, it was decided to roll
everything back to the last known stable version (2.6.2).

Changes dropped include:
 - Witness needed
 - Shake
 - Frame SFX
 - Multiple custom objections
 - Multithreaded thumbnail generation
 - Looping
 - Various translation additions
 - "Mirror IC"
 - Color in IC log
 - An invocation of clang-format

Next time, work together and split your big fork into independently
testable feature branches.
2020-05-22 17:02:32 -05:00
Crystalwarrior
a5868aa380 Fix looping frame SFX not working w/ AOV's definitions 2020-05-22 04:53:19 +03:00
Crystalwarrior
88de4cde04 clang 2 electric boogaloo
{ BasedOnStyle: LLVM, BreakBeforeBraces: Stroustrup}
2020-05-22 02:14:54 +03:00
Crystalwarrior
c8e12558cd Clang-ify the code with this styling using Visual Studio Code:
{ BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Stroustrup, AllowShortIfStatementsOnASingleLine: false, IndentCaseLabels: false, ColumnLimit: 0, AccessModifierOffset: -4, NamespaceIndentation: All }
(this is the Visual Studio preset with only "BreakBeforeBraces" changed from Allman to Stroustrup)
2020-05-22 01:18:24 +03:00
sD
992c0b14e1 what is this, c++ for ANDs
this kept it from buildinf with MSVC
2020-04-24 12:54:48 +02:00
cents
896c4e4dbc Fixed wrong name being written in mirror mode 2020-04-23 11:57:27 -07:00
cents
8fa96535ef Hooked up the new settings
Did you know you could scale the iclog with ctrl + mouse wheel?
2020-04-20 12:37:28 -07:00
cents
5b6d58bd02 Added additional customization options.
I didn't format anything tho that is at the end
2020-04-20 07:51:42 -07:00
likeawindrammer
58b7725406 Change second exclamation to period on tooltip
No need for two exclamations
2020-04-18 02:40:46 -06:00
oldmud0
13942345c6 Run clang-format on entire project
Indentation fixed to 2 spaces per tab. Braces set to Stroustrup style.
Lines reflow at 80 characters. One-line method bodies are on the same
line as the signature. Space always after `//`. No indentation
on preprocessor macros. Includes are sorted lexicographically.

If you don't want to see this commit on blames, use the hidden
whitespace option on GitHub, or use `-w` in git-blame.
2020-04-17 21:57:16 -05:00
oldmud0
faac191f0b Mega-merge of CR fork
CR likely stands for "CentsRaidensnake." Like the Case Cafe mega-merge
before it, this was not a clean merge, and it had to be split up into
two parts: the actual changes, and the attempt it made to reformat the
entire code via clang-format.

This branch had a complicated set of changes that would be difficult to
describe in this commit message. It would be better described in a
proper changelog.
2020-04-17 21:48:34 -05:00
Crystalwarrior
dfac0652c8 Add possibility for custom use text besides just "played music"
Implemented "presented evidence" message
2020-04-13 17:16:26 +03:00
in1tiate
901012eb28
Remove dumb memes (#141)
* remove memes

* Update courtroom.cpp
2020-04-12 15:43:39 -07:00
in1tiate
ed9632f220 fix dropdown bug, add minor feature 2020-04-11 20:04:41 -05:00
Crystalwarrior
e0ae7c0eb5 Fix evidence display viewport element being a FUCKING JACKASS 2020-04-02 23:10:54 +03:00
Crystalwarrior
71ebdac1c1 Fix collapse all rightclick option being annoying in its behavior. Now it's *smart*! 2020-04-01 20:01:00 +03:00
Crystalwarrior
c49c9cdd77 Fix weird behavior with area list and arup system + wrong column being used for 'metadata' 2020-04-01 19:48:58 +03:00
Crystalwarrior
8007b1d1b9 Add courtroom_design.ini partial parsing for misc/ folder (only chat_arrow and showname atm)
Initialize chat arrow n stuff
this is still pretty gay because you can't ignore size and set pos or something like that
2020-03-31 18:12:15 +03:00
Crystalwarrior
7816c8ab23 Add legacy fallback for "chatbox.png" name if chat.png doesn't exist 2020-03-31 17:09:00 +03:00
Crystalwarrior
feaf04a5c4 Fix custom chatboxes not working at all 2020-03-31 17:03:41 +03:00
Crystalwarrior
4aa1ae62e1 Fix wrong pos being shown when entering area due to index signal being called in the wrong place 2020-03-28 19:29:46 +03:00
cents02
558fa55be8
Made the shake button useful.
Apparently nobody tested it before.
2020-03-27 21:11:33 +02:00
Crystalwarrior
614522bc0c Quality of Life improvements
Fix a bug where IC view received focus as soon as you receive the BG image update (it made navigating using /area commands a pain in the ass)
Make music search behave better and not reset when server sends us music list update (todo: remember which elements were/weren't expanded)
2020-03-27 15:48:16 +03:00
Crystalwarrior
1634db7864 Make backgrounds preserve aspect ratio when used with different aspect ratio themes
(e.g. a 16:9 theme would not stretch a 4:3 bg and instead have a letterboxing effect. A 4:3 theme using a 16:9 BG will not stretch the BG but instead center it, making it look like the BG is 4:3 all along.)
2020-03-26 14:41:56 +03:00
Crystalwarrior
f668d70ac5 Change @ and $ to \s and \f standing for s[hake] and f[lash].
This is done because @ is used very often to refer to people, and $ is used to indicate cash money.
2020-03-25 00:42:20 +03:00
sD
beb469cd80 Merge branch 'master' into pr/104 2020-03-15 13:12:52 +01:00
in1tiate
64f18ee632 add placeholder to OOC chat message box 2020-03-14 23:00:50 -05:00
Crystalwarrior
7aa24bf501 Add a search bar for server list
Add options for sticky sounds, sticky effects and sticky preanims
Optimize the search for areas and music (previously, area search also searched for music in the background, causing lag with huge music lists)
2020-03-12 18:09:56 +03:00
in1tiate
a2f1a79bc9 add theme support 2020-03-08 05:44:49 -05:00
sD
369cc298e4 rename fallback chatbox 2020-03-07 21:45:27 +01:00
in1tiate
cc1afbe30e add support for 2.4-style chatboxes 2020-03-07 01:49:54 -06:00
Crystalwarrior
e4b90d36a9 Fix the rightclick options for editing files not working 2020-03-06 23:29:26 +03:00
stonedDiscord
b668bb2276
Merge branch 'master' into music_list_update 2020-03-06 16:43:03 +01:00
Crystalwarrior
ee9de222ad Fix a bug where you couldn't join servers from your favorites list
Make column 0 the area index instead so that the areas take the full width of the treewidget
2020-03-06 01:14:05 +03:00
stonedDiscord
d276f14766 full music path in log 2020-03-01 15:59:44 +01:00
Crystalwarrior
a4e448576b Make pos dropdown more abstract and actually useful by letting servers send only pos you can actually access.
Pos dropdown system also reads the actual bg folder of the current BG to see all the created pos.
2020-02-24 22:20:43 +03:00
sD
a6f980f444 rename modcalls 2020-02-23 20:12:41 +01:00
sD
ea099a5141 loading lost in translation 2020-02-23 12:59:20 +01:00
sD
4af8ba9c38 what was graphmeme even fot 2020-02-23 12:28:07 +01:00
sD
0b16ac863c the charselect works again 2020-02-23 02:56:57 +01:00
sD
2716416b62 only load bass plugins when bass is included 2020-02-21 18:00:23 +01:00
sD
87e359487d combine these conditions 2020-02-21 17:57:46 +01:00
sD
f93459ed0e remove fuck 2020-02-21 17:18:25 +01:00
stonedDiscord
7d55ff01f5
Merge branch 'master' into 2.7 2020-02-21 16:39:32 +01:00
Crystalwarrior
43c4e3e9d7 Network effects folder so you don't need to modify your own char.ini to see custom effects 2020-01-17 18:41:27 +03:00
Crystalwarrior
6138bb107b Separate screenshake options button from effects options button
Add a color logging option button
Update version to 2.8.2
2020-01-15 16:42:44 +03:00
Crystalwarrior
8791109c66 Remove borders for chatlogs 2020-01-03 22:34:22 +03:00
Crystalwarrior
59e8a72a50 Allow colors in server chatlogs 2019-12-28 05:47:33 +03:00
Crystalwarrior
7518ed8a00 excuse me what the fuck 2019-12-27 01:20:15 +03:00
Crystalwarrior
819d091171 UGH I BROKE BACKWARDS COMPATIBILITY NOW I'M SCRAMBLING TO FIX IT 2019-12-27 01:04:48 +03:00
Crystalwarrior
eb014a9778 Add a message delay modifier when punctuation is reached to simulate Ace Attorney 1 chat parsing (replicating the effect where characters would make a short pause, as if saying the line out loud)
TODO: Make this a configurable thing
2019-12-05 22:46:26 +03:00
Crystalwarrior
07763c5ac0 actually fix the chat instead of breaking it 2019-11-22 00:31:17 +03:00
Crystalwarrior
34848c4eaf Fix a bug where user would be unable to speak if the BG changed when someone else was speaking
Make it so blip sounds are accessed in base/sounds/blips/* if such a path exists
2019-11-18 20:27:37 +03:00
Crystalwarrior
886ec26e20 "temporarily" simplify code by stripping long since botched and unused AO1 backwards compatibility 2019-11-04 17:14:46 +03:00
Crystalwarrior
9939637dda Fix the sound bonanza so they actually play
sfx player and blip player now both account for extension-less sound paths and also correctly handle paths that do provide the extension.
2019-11-04 17:13:52 +03:00
Crystalwarrior
d402921257 Fix screenshaking only shaking down right 2019-11-04 16:31:42 +03:00
Crystalwarrior
963e321095 If def/pro/jud/hld/hlp are missing, put the character in pos wit instead of showing broken bg. 2019-11-04 15:38:54 +03:00
Crystalwarrior
773a61f3d4 Make the music search bar search in music metadata instead of just the displayed name (aka the filepath)
Make sfx player able to play sfx without the file extension provided
Allow blipsounds to seek in blips/ folder to allow better categorization, as well as direct sound references
add get_emote_blip for detecting the blipsound used by an emote. Currently unused.
Less strict/hardcoded custom objection detection system
Allow system (charid -1) messages, and don't do the same message detection on blankposting
Allow objection, hold it, take that and custom sound players to detect sounds that are not exclusively .wav
2019-11-04 15:32:01 +03:00
Crystalwarrior
bef368e986 Allow gender (blip sounds) that don't use sfx-blip naming convention
Fix "prezoom" packet being ignored
Allow char.ini's to indicate a zoom w/ preanimation by using emote_mod=4

((ALL OF THESE ARE UNTESTED - TESTING NEEDED!))
2019-10-23 05:08:20 +03:00
Crystalwarrior
3605f223d2 Fix input bg's not being transparent
FIx chat_tick_timer not stopping when you receive a bg
2019-10-20 01:44:54 +03:00
Crystalwarrior
a9a0f65ddb Allow area list to contain metadata (as well as categories for future expansion)
Fix backwards compatibility breaking when you join a server that doesn't support effects after previously joining a server that does
2019-10-12 17:57:18 +03:00
Crystalwarrior
330aa97550 Properly handle "true song name" even with folders/categories and file formats (paving way for folder-categorized music lists set up by servers)
Prevent BG's from falling back on default BG path (this isn't really user-convenient and causes more trouble than its worth, e.g. stands appearing on BG's that dont' want stands to appear)
Implement Case Cafe's method of categorization for (a) and (b) emotes
2019-10-12 01:43:48 +03:00
Crystalwarrior
990f653e4a Allow -1 charid messages to be sent (system/server messages) UNTESTED 2019-10-08 01:35:10 +03:00
Crystalwarrior
ec02078b4d Fix music display not displaying a stripped down version of the song name 2019-10-06 23:23:52 +03:00
Crystalwarrior
91eeffb959 Courtroom Fonts can now have the "sharpness" setting (pixelated/no anti alias) 2019-10-06 13:47:36 +03:00
Crystalwarrior
85f33e13c7 Fix some edge cases where the AOChar qlabel is moved around in weird ways (reload theme still puts qlabel at 0,0 without centering)
Fix a full message of speed 0 not properly displaying itself
2019-10-06 13:27:11 +03:00
Crystalwarrior
2956a183b4 Merge branch 'bass-hell' 2019-10-05 20:32:41 +03:00
Crystalwarrior
9f543f9ef7 I HAVE CONQUERED BASS HELL
BEHOLD, LOOP_START AND LOOP_END MUSIC POINTS! It reads the songname.mp3.txt file, looking for loop_start, loop_length and loop_end in samples
MUSIC EFFECTS SYSTEM THAT CAN ***COMMUNICATE WITH THE SERVER***, WOAHHHHHHHHH!
RIGHT-CLICK CONTEXT MENUS TO ENABLE/DISABLE SPECIFIC MUSIC EFFECTS
MUSIC EFFECTS ENUMS
Fix an issue with music looping
2019-10-05 20:32:19 +03:00
Crystalwarrior
bc8158cc96 Meme fix to <>, ~~ and ~> parsing (does not fully solve the issue but at least hides it from the user)
Allow ascii characters to be used for color dropdown symbols
2019-10-05 16:47:59 +03:00
Crystalwarrior
9451822e09 Fix move func making characters slowly move to the left every frame on animated chars which are sized differently from viewport
Add a new get_qfont function
Fix message box font being different from every other font due to incorrect font loading scheme
Fix ui_evidence_save and ui_evidence_load tooltips being wrong
2019-10-03 23:17:21 +03:00
Crystalwarrior
bdef10ace5 Remove /rainbow as clientside slash commands are cursed. I shall purge all clientside slash command memery soon...
Fix /save_case iterating from last to first instead of first to last
Implement private evidence saving/loading to and from an .ini file
2019-10-03 17:01:41 +03:00
Crystalwarrior
6f5b3d2462 Add support for backgrounds outside of predefined positions, grabbing the overlay from X_overlay.png/.gif/.webp/etc. 2019-10-03 01:00:15 +03:00
Crystalwarrior
e3ddc41cc8 Add rightclick context menus to sfx dropdown, iniswap dropdown and effects dropdown to open the ini's and respective folders
try to fix settings menu (I failed)
2019-10-02 20:28:42 +03:00
Crystalwarrior
4c23e15935 Rewrite pairing character ordering logic to instead operate based on a user-accessible drpodown menu (it's a dropdown for the future when there's more options)
Fix current charmovie breaking offsets
Make pairing offsets applicable even without a pairing partner, making it a generic offset
Fix the chat message hardcoding max colors to 8 (when it should be max_colors)
Come up with a way to convey the ordering information without creating an extra new packet in a cool way (backwards compatibility AND less clutter!)
More info on the evidence_x and evidence_ok tooltips
Don't mute music when you switch to CSS anymore
2019-10-02 01:20:00 +03:00
Crystalwarrior
0eccf1ba22 Make screenshakes work with preanim delays 2019-10-01 01:38:38 +03:00
Crystalwarrior
4f738bfe34 Fix some read_file errors on effect loading
Make FM packet only fetch music, and new FA packet to fetch areas (this way you don't have to reload the entire music list just to get new areas)
Fix a possible segfault with emote lists if emote list size is bad
Hide casing button if server doesn't support casing
Hide the remove buttons by default for iniswaps and sfx list so they're not clickable when they shouldn't be
Prevent background from being displayed unless the server asked us to
Fix some redundancy surrounding current_side
Rework music list so list_music doesn't care about search bar and the hiding is actually done in the search function
Implement text centering, rightening and justifying
Fix text scrolling meme that happened with \n and skipped chars
Fix the pos dropdown not actually caring if you selected jur and sea pos.
Fix the pos dropdown sending like a million packets when scrolled through.
Prevent characters from being incorrectly resized if a different-scaled character speaks
Fix character select screen letting you choose characters that the server doesn't want us to be
2019-10-01 01:07:03 +03:00
Crystalwarrior
1f72205716 Mysterious super-similar-to-AA font, please don't elude me. 2019-09-29 04:43:28 +03:00
Crystalwarrior
d5cbb085db Update Bass.dll headers to newer version
Remove a bunch of comments
Add lqapng and lqwebp to try and get apng and webp support to fuckin load already
2019-09-29 03:27:36 +03:00
Crystalwarrior
30c02221d2 Make the client select a default font that resembles classic AA font the most (cleartype off, MS Sans)
Create a better method to replace trailing whitespace with proper HTML representation
Don't bother rendering the string character-by-character to prevent any latency happening with instant text speed
2019-09-29 03:26:16 +03:00
Crystalwarrior
b0f11e53df Strip out QRandomGenerator because it's "too new" of a module (linux build does not compile with it)
Add QPluginLoader checks for qapng and qwebp
2019-09-28 22:00:16 +03:00
Crystalwarrior
709ebb7e18 Fix AOEvidenceDisplay not respecting the size of the viewport properly and breaking if a static image was used for evidence appearance
Fix an issue with chat message being resized before the chat box is in reload theme
2019-09-28 20:43:19 +03:00
Crystalwarrior
d3a58770d3 Overhaul the evidence system:
You can now press the checkmark to save evidence. The checkmark only appears when your edited evidence differs from evidence on the server.
You will now be alerted if you try to exit out of the evidence with unsaved changes (pressing "X")
Fix double-clicking on image name not doing anything
You will now be alerted if the evidence changed as you were editing it
Add tooltips
Make an evidence_close function that can be referred to from multiple places
2019-09-28 20:22:38 +03:00
Crystalwarrior
8c9275c497 Add cute color icons to color dropdown ui
Fix current_side not using the character's preferred one after changing character
Add cool tool tip describing how to do cool select+color thing
Fix chatlogpiece not appending ": " in the log files
2019-09-27 15:52:51 +03:00
Crystalwarrior
3c27988423 Fix ic chatlogs displaying escaped html 2019-09-27 15:48:35 +03:00
Crystalwarrior
1a3d3281a7 Display the first character of the ic message right away instead of having a delay 2019-09-27 15:12:09 +03:00
Crystalwarrior
a3d1d5bf9d i did it
i did the thing

Final overhaul of filter_ic_text
Fix spoken colors not being actually spoken
Fix a message of ()()()() spamming idle/talking animations (instead it just does the idle animation until you feed it an actual character)
Prevent spamming of play_idle and play_talking on the fastest text speed
Properly escape html and construct a message that works with characters &, <, >, ", etc. for filter_ic_text
Turn whitespace into html entities to prevent html from eating it up (alternative/better solution would be to erase excessive whitespace entirely but yaknow, some niche applications, whatever)
Fix filter_ic_text not displaying the best string it could in ic logs (strip html, display newlines as \n, etc.)
Scroll the scrollbar of the message box correctly according to some real wacky magic stuff I'm doing here. Let's hope there's no situations where it desyncs from the actual text.
2019-09-27 15:11:46 +03:00
Crystalwarrior
c38061a990 help me jesus
HTML gotta be like escaped n shit
2019-09-25 04:58:38 +03:00
Crystalwarrior
0649884d3c Fix issue with ao line edit not correctly preserving selection
Resolve a segfault with text formatting
Implement ability to color text inline by selecting text and using the color dropdown

TODO: allow html characters to be used for coloring text, oof
2019-09-25 04:45:45 +03:00
Crystalwarrior
b67f083506 Optimize color markdown stuff properly by creating lists and preloading things 2019-09-25 03:40:44 +03:00
Crystalwarrior
923548c997 Hellcommit of doom and suffering
Create two new helper functions - get_chat_markdown and remake read_char_ini_tag to be read_ini_tags for more general purpose
Modify aolineedit to support preserving selection after unfocusing (building this for using dropdown list for setting colors), as well as remove the setReadOnly functionality and use it in signals instead
Overhaul the color system to get rid of inline colors, allow full customization of colors and usage of configuration files for every facet of how a color functions (should we be talking, should we remove that markdown char, etc.)
Complete overhaul of color markdowns system

TODO: Make this thing not lag to hell, fix chat messages hogging the IC as the animation never ends apparently
2019-09-25 02:05:52 +03:00
Crystalwarrior
7097053723 Change all instances of "colour" to "color" for consistency's sake
Overhaul inline colors system to properly support additive text and further expansion
Add two new colors - Gray and Blank, the latter being used for IC parsing.
Instead of adding text symbol by symbol, reveal more of the already-rendered text instead so that it properly anticipates words that need to be on the newline.
Changed the append_ic function slightly so it appends ": " to text only after it's no longer needed.
Made gray color less inconsistent with everything else
2019-09-24 21:24:25 +03:00
Crystalwarrior
fb6c5076aa Fix some tooltips
Workaround for music list updates forcing the music list to collapse, prioritize expanding it instead. (ISSUE: does not fix the underlying problem of the music list inexplicably collapsing/expanding. Need to preserve info for that somewhere.)
Fix additive chat not showing up for anyone that's not yourself (Todo: update server code to do the proper checking)
2019-09-24 04:15:06 +03:00
Crystalwarrior
1e4f8fc2ac Fix a bug with music search that didn't show the item's parent when it's being searched for 2019-09-24 00:59:12 +03:00
Crystalwarrior
d8857aa2e4 When the background is changed, display it in the correct position as dictated by the server packets
Add a new "set pos" packet
Udpate the pos dropdown according to the current pos
2019-09-24 00:38:26 +03:00
Crystalwarrior
398f37794f Make music list a QTreeWidget instead for easier category searching, etc.
Temporarily allow music suffix until I let the client perform a fileExists check similar to how images are handled (.mp3? play mp3, if not mp3, play .ogg, etc. etc.)
2019-09-23 15:48:35 +03:00
Crystalwarrior
2c265ebc0b Clear the screen and display the background in the correct position when background change func is called 2019-09-21 00:23:01 +03:00
Crystalwarrior
842b829bee Tweak the ambience/crosfade layer to fade in regardless of another sample being there
Fix music not being looped sometimes
Prevent channel less than 0 from being passed
Set up a new music display element with an attached music name, it displays a scrolling text of the currently playing music
Fix music packet processing issues
Make SFX slider responsible for all music channels besides 0 (actual music)

scrolltext.cpp code recipe was taken from https://stackoverflow.com/questions/10651514/text-scrolling-marquee-in-qlabel - thanks to leemes for that one, I only adapted it for newer C++ version and tweaked some stuff.
2019-09-20 22:11:37 +03:00
Crystalwarrior
497901e8c3 Allow realizationflash, prosecution_speedlines and defense_speedlines to be changed in a similar way shouts can be changed from the character, as well as misc folder, etc.
Same for chat indicator
Rename themes/ name of shouts from "objection.gif" to "objection_bubble.gif" naming convention for consistency
Reorganize the default theme a bit as well as to support new elements
Fix the background size not being updated properly due to bad order of reload theme
Set up proper tooltips for sfx dropdown, iniswap dropdown, custom objection
2019-09-20 22:08:36 +03:00
Crystalwarrior
3fd93ab341 Make ui_additive_button insert a whitespace character at the start of the message when you use it (to make it so by default, the added message will have that space, but you can safely remove it if you need to)
Support for aomovie to check inside the character folder for relevant stuff if p_char is provided
2019-09-20 17:26:41 +03:00
Crystalwarrior
3899dbe0bd I dunno what the fuck was I doing for the past 4 hours but I made crossfading music work.
Music packets can receive channel to play the song in and the crossfading option too.
2019-09-20 05:30:07 +03:00
Crystalwarrior
df08ec4be6 Get rid of some debug text 2019-09-18 22:46:10 +03:00
Crystalwarrior
0fe94d5d9f Evidence and emotes reloading when reload_theme is pressed
Update evidence a bit and change the way it sets images to something much better and less confusing
Update the hovering logic a bit so there's less weird occurences happening e.g. evidence button is deleted
2019-09-18 17:34:22 +03:00
Crystalwarrior
04daff7446 When the realization button is pressed, update the Effects thing too. 2019-09-18 15:46:43 +03:00
Crystalwarrior
f8d3d5d8fd Fix a bug with sound effect from misc/ folder not being read
Make an "effects_icon_size" entry in courtroom_design.ini for scaling the buttons in the effects list
2019-09-18 14:28:26 +03:00
Crystalwarrior
9b0f07d125 Make effects stop when next message is received 2019-09-18 05:24:40 +03:00
Crystalwarrior
ad057c6f7a make icons for effects n shit
they're grabbed from the effects/icons/*same name as effects*
gotta be .png or w/e
i need my sleep
2019-09-18 05:22:00 +03:00
Crystalwarrior
605e15bb8c Implement effects system that reads your folder in theme/effects, or misc/<folder name>/<effects>
Add an effect packet
Allow aomovie to be fed a direct path
Add some really terrible helper functions that shouldn't exist, sorry.
2019-09-18 04:14:52 +03:00
Crystalwarrior
e151964785 Add a sfx list that allows you to choose custom sfx from a list. Allows the same amount of customization as the iniswap list.
It tries to read soundlist.ini in the character folder first. If it can't find it, it will fall back to the theme's character_soundlist.ini.
It will only save the soundlist.ini if it differs from the character.soundlist.ini.
There is currently no way to dynamically change sound delay atm but the function for it is there.
Add more tooltips, my favorite!
2019-09-17 23:50:01 +03:00
Crystalwarrior
8409b71611 Tool tips! Tool tips for everyone!
Change the way AOButton loads images into itself (stylesheet broke tooltips)
2019-09-17 21:17:30 +03:00
Crystalwarrior
9d20cf0322 Streamlined ini swapping so the user can set up multiple character folders associated with a character.
This will save to the character folder's iniswaps.ini. You can click on the dropdown and edit the text inside to add an iniswap, and press the [X] button that'll appear next to it to remove the ini swap.
Recode the enter_courtroom and add a new update_character feature - the two are now separate and responsible for different things. The courtroom will reload the whole theme and widgets while the character is only responsible for all ui elements related to the character. This drastically improves performance when switching characters using /switch or something
Add a set_char_ini helper function that allows you to modify the character variables. For now only used to set name= field when iniswapping
2019-09-17 18:51:40 +03:00
Crystalwarrior
6747bfdd5e Allow lobby server descriptions to parse links
Fix bad reference to ui_emote_right image
Fix chatbox being part of the viewport (gets cut off if it's outside)
2019-09-17 03:31:18 +03:00
Crystalwarrior
9695c621c2 so this solution doesn't really work. It makes the chat message box appear over the character select screen.
this bug only occurs when the chat box is initialized inside the viewport. Annoying as hell but at least it can be reproduced reliably.
2019-09-17 00:56:39 +03:00
Crystalwarrior
684e26cb77 Change the way sideplayer/playerchar ordering works to be stackUnder instead of Raise so it doesn't break anything (like the chatbox) 2019-09-16 23:54:42 +03:00
Crystalwarrior
19ff6cd5f8 Fix an incredibly obscure bug where if the viewport message is inside the viewport itself it would not let you scroll it up should the message be too long. 2019-09-16 23:53:32 +03:00
Crystalwarrior
13221319b8 Change get_stylesheet to return text of a parsed stylesheet file, its functionality was transferred to get_tagged_stylesheet
Remove some useless/unused ui elements
Implement stylesheet for courtrooms in a way that lets the end user modify a lot of its elements
Use get_image_suffix for evidence_appear images
2019-09-16 23:22:34 +03:00
Crystalwarrior
f3c7beab70 Chat arrow indicator to inform you if the current message stopped being processed
Can be modified from the theme in chat_arrow of courtroom_design.ini
Uses chat_arrow .png/.gif/etc.
2019-09-16 21:10:21 +03:00
Crystalwarrior
b085be5a2a Add two new helper functions - get_design_element and get_static_image_suffix
Modify all set_image calls to utilize said suffix helper function
Dynamically change betweehn chatblank, chat, chatmed, chatbig based on the showname's length
Use char.ini showname if showname is set to whitespace (doesn't yet check if char.ini showname is also whitespace)
2019-09-16 21:08:43 +03:00
Crystalwarrior
b037edc9d8 Add additive text option where your messages are added to your previous one, fully networked and ready for the server
Adjust some pointless static bool casts to be actual logic checks
2019-09-16 18:11:19 +03:00
Crystalwarrior
9b39b7d6aa Allow char.ini to override the chat font and font size with chat_font = and chat_size =
Scream at the coders that decided hard-coding fonts and colors was a good idea (gotta properly let the themes modify that later)
Fix a lot of ui elements not properly respecting the themes and their colors
add a set_qfont method for those situations that need it
Allow the theme to change sender colors for ooc and ms chatlogs
rename url parser variable to something more immediately apparent as to what it is for readability's sake
2019-09-16 06:09:39 +03:00
Crystalwarrior
03ebad6bb6 Add expanded style sheet support
Allow lobby fonts to happen
2019-09-16 04:16:59 +03:00
Crystalwarrior
bf999f195a Add file reading, writing and appending functions that create folders if bool is true
Fix server_address not being properly created in packet distribution
Create a log file when you join a server in the logs/<server name>/<logname>.log and update it every time there's a new chat entry
minor refactor of chatlogpiece
2019-09-16 01:16:37 +03:00
Crystalwarrior
1b36be9dbc Add an option for networking frame-specific effects
I'm starting to realize the options menu/system needs a complete overhaul at this point. (Auto-generating options menu, anyone?)
2019-09-15 21:39:39 +03:00
Crystalwarrior
ba28c244aa Add an opton to enable/disable screenshake + flashing
Fix moderation guard button not doing what it's supposed to (enable/disable modcalls)
Fix moderation guard button appearing with failed logins
Fix the option to toggle looping sfx not doing anything
2019-09-15 21:15:40 +03:00
Crystalwarrior
661ec87646 Implement networking for frame-specific effects data sending/parsing if the server supports it
Reorganize charmovie.h a bit and make some functions private
Add a new helper function "read_char_ini_tag" which returns a qstringlist of all key=value strings associated with the tag
2019-09-15 20:02:24 +03:00
Crystalwarrior
e94640b349 Looping SFX system - Defined this way:
[SoundL]
sfx-roar = 1
2019-09-15 17:44:47 +03:00
Crystalwarrior
a2f9df4042 Finally implement frame-specific effects such as screenshake, realization flash, sound effects, etc.
Fix screenshake animation modifying the default positions of shook elements
Fix aomovie sometimes not playing the last frame and causing lagspikes due to the delay() method
2019-09-15 17:44:02 +03:00
Crystalwarrior
51c97ad51c Allow [Time] to be blank for pre-anims to not be required to use it
play_talking and play_idle reduced in useless code
2019-09-14 19:38:56 +03:00
Crystalwarrior
f225df6f19 Fix objections hiding the character 2019-09-14 14:50:16 +03:00
Crystalwarrior
b608f84100 Resolve a segfault with screenshake, need to determine a better method to finish previous animation (if it exists) properly. 2019-09-14 01:20:01 +03:00
Crystalwarrior
4b452e968d Fix the objection_stop_music option not doing anything
Stop the animation for the side player char in pairing so as not to affect anything
Remove the "DOOM" packet as anyone who has the source code can just remove it anyway
2019-09-14 00:48:07 +03:00
Crystalwarrior
4645d9dd08 Add a blip sound QElapsedTimer so blipsounds don't play more frequently than 60ms to preserve all of our ears.
Adjust the message display speeds to feel more accurate to AA, with }}} speed displaying text instantly for that section
2019-09-14 00:46:46 +03:00
iamgoofball
1139bf5cd0 Bass.dll functionality-based clientside music looping system by using channel loopable flags (no use of QTimer required)
Implement Goofball's AOV loopable music server message where any value that's not -1 when the length of the handle_message packet is longer than 3 will not loop the music (still confused about this but w/e)
2019-09-14 00:28:27 +03:00
Crystalwarrior
f9b3bd5bb5 forgot to actually uncomment the change, oops 2019-09-13 17:57:30 +03:00
Crystalwarrior
f1b3169713 CONTROVERSIAL: Detach ui_vp_message from ui_vp_chatbox to prevent it from being affected by the screenshake. ui_vp_message still sets position relative to the chat box for now (as doing otherwise would break a lot of themes). 2019-09-13 15:13:40 +03:00
Crystalwarrior
040898feff Set up screenshake button ui
Rewrite Goofball's doScreenshake() function to be much more modular and multi-purpose (also rename to do_screenshake() to match other functions)
Add networking needed to make screenshake work. Works with AOV version of tsuserver3 (button screenshake only so far).
Add get_theme_pos helper function, currently unused.
2019-09-13 15:11:30 +03:00
Crystalwarrior
3b3507df60 Fix compilation error
Allow realization flashes to be animated images by making them AOMovies
Eploit the newly added 'duration' system for realization AOMovie

(cherry picked from commit bb98f79083)
2019-09-12 22:46:06 +03:00
Crystalwarrior
5a31516a36 Remove unecessary hard-coded timers for the witness testimony .png
Make the witness testimony use AOMovie instead of AOImage
Remove pointless "testimony_in_progress" variable
CONTROVERSIAL: Make the witness testimony indicator be position-ignorant so as to reduce the amount of hardcoding and allow broader usage of the witness testimony system (For example, Danganronpa investigation indicator, etc.) - This should not affect how the testimony indicator is received currently, as witness testimony usually requires the entire rest of the court to shut up until the cross-examination either way.

(cherry picked from commit 932f430b68)
2019-09-12 22:45:52 +03:00
Crystalwarrior
e76a83ddfe Allow AOMovie to have timers that take priority over the animated image frame count
Set it up so feeding the timer value when playing the AOMovie would use the timer but only in cases where a non-animated image is used
Update shouts and wtce to pass the 'duration' argument which will be used if the image used is non-animated. Otherwise, prioritize the animated image duration.
2019-09-12 22:45:02 +03:00
Crystalwarrior
c2fd3796a9 Add clear_music and clear_areas
Comment out the index as it can be potentially confusing alongside "true" area numbers
Add "FM" to Packet Received that would reload the areas and music list

TODO: Test this with arup systems
2019-09-11 00:49:30 +03:00
stonedDiscord
d94d2fb405 read and store qt audio device 2019-08-19 19:38:47 +02:00
stonedDiscord
c974ab01ca add es and ru to options and translate a lot more strings from the courtroom 2019-08-06 20:29:04 +02:00
stonedDiscord
230b1a7622 numbered arguments and more strings 2019-08-05 22:07:39 +02:00
stonedDiscord
582417a902 german translation 2019-07-28 20:19:09 +02:00
stonedDiscord
319cb0adee translate new features. is i18n dead 2019-07-28 18:43:46 +02:00
stonedDiscord
98389e7e03 1% more readable 2019-07-26 01:37:11 +02:00
stonedDiscord
71d91e5012 fixed copypasta mistake on objection sfx 2019-07-26 01:33:29 +02:00
oldmud0
e0c49ceb07 Merge branch 'bass-optional' into 'master'
Bass+discord optional

See merge request AttorneyOnline/AO2-Client!59
2019-07-20 16:57:27 +00:00
cents02
82db3e2263 Revert "More bug fixing."
This reverts commit ca84ba516fc892deaeafc18b23ad5a06822b29f5
2019-07-20 16:33:33 +00:00
stonedDiscord
4a2a167f7d Merge branch 'master' into 'bass-optional'
# Conflicts:
#   Attorney_Online.pro
#   include/aoapplication.h
2019-07-20 16:20:05 +00:00
David Skoland
5eccabcad1 Less insane debugging; minor refactoring (!75) 2019-07-12 23:00:25 +00:00
Windrammer
b15c6f15f0 Fix bug #82 causing a client crash if /save_case was used without providing a courtroom state 2019-07-11 09:05:26 -06:00
cents02
432069844a Revert "More bug fixing."
This reverts commit ca84ba516fc892deaeafc18b23ad5a06822b29f5
2019-07-07 22:32:57 +00:00
oldmud0
1552f3f19c Merge branch 'master' into 'master'
Fix escaped HTML characters screwing up the grapheme cluster sizes.

See merge request AttorneyOnline/AO2-Client!61
2019-07-07 14:45:16 +00:00
cents02
099fea176c Indentation 2019-06-30 22:09:12 +00:00
cents02
f826ba390b New feature! /save_case . Takes two parameters, name and cr status.
E.g: /save_case case1 lfp . It takes court evidence but leaves the doc and cmdoc options blank to be entered manually(if anybody actually puts anything).
2019-06-30 21:47:48 +00:00
cents02
ae85525780 Resolved requests/issues. 2019-06-03 09:00:24 +00:00
cents02
09d8e9e7a4 Update courtroom.cpp 2019-05-31 21:52:22 +00:00
cents02
1f9a1bdd5d Fixed issues #47 on both client and server 2019-05-31 21:47:47 +00:00
Cerapter
c8a4f69d14 Fix escaped HTML characters fucking up the grapheme cluster sizes. 2019-05-10 20:49:59 +02:00
Cerapter
2e4f0117b0 Text is now advanced based on graphemes, rather than bytes. 2019-05-09 23:49:20 +02:00
iamgoofball
2d9fff2e96 Reverts screenshake on object, was controversial 2019-03-25 11:14:53 -07:00
iamgoofball
e6cb5bd2cf Fixes Objections hiding the current character, instead of overlaying on top of it. Adds screenshake to objects. 2019-03-23 14:33:31 -07:00
stonedDiscord
49938eea0f makes all the bass stuff optional 2019-03-12 00:26:40 +01:00
iamgoofball
fc984fcfe2 bugfixes and shit 2019-02-01 16:28:14 -08:00
iamgoofball
0649e7b28e Case Announcer: Witness Support also some other shit 2019-01-23 07:35:29 -08:00
iamgoofball
13bc82094f >>>>multi-threading the frame sfx/screenshake/flashes 2019-01-23 00:14:47 -08:00
iamgoofball
a7a614482e final commit 2019-01-21 15:45:51 -08:00
iamgoofball
1043699214 Suffix-independent Music, Mod Music List, looping bugfixes, easter eggs, etc. 2019-01-19 21:01:19 -08:00
iamgoofball
c44832a707 guard -> disable modcalls, bugfixes for guard button, etc. 2019-01-19 14:39:42 -08:00
iamgoofball
248444307f Fix bug with simultaneous shakes 2019-01-19 00:13:25 -06:00
iamgoofball
3c0cedbe92 Add screenshake, frame-specific effects, looping SFX, and clientside music looping
Committed by patch since Goof is currently banned on GitHub for no good reason.
2019-01-18 23:08:46 -06:00
perplexedMurfy
d62ff4d3af Fix #57 2019-01-08 18:51:20 -06:00
David Skoland
3965a847c2 fixed opus plugin load for macOS 2019-01-06 12:14:00 +01:00
David Skoland
2a43d56772 muh macos support 2018-12-26 20:04:11 +01:00
David Skoland
00cfd2750d moved headers into include and cpp files into src + logo into resource 2018-12-26 16:43:08 +01:00