Commit Graph

114 Commits

Author SHA1 Message Date
oldmud0
de3533fbf2 Rework timer and ping logic
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-09 01:18:19 -06:00
oldmud0
d308fc83de
Merge pull request #316 from AttorneyOnline/messagebox
add BB packet for a MessageBox popup
2021-01-06 12:41:52 -06:00
scatterflower
29f8733dba
FL toggle for Y offset (#360)
Use "y_offset" to enable the Y offset protocol extension.
2021-01-03 19:23:01 -06:00
stonedDiscord
0c382eea7d move enter courtroom to the PV packet instead of just doing it when you click a character 2020-11-16 15:13:33 +01:00
oldmud0
2d398c3237
Merge pull request #312 from AttorneyOnline/fix-doubleclick
fix doubleclick server being buggy
2020-11-07 19:11:43 -06:00
scatterflower
a46c7ca8f6 reset doubleclick flag on connect 2020-11-01 13:35:57 -06:00
stonedDiscord
5ab50c8431 add BB packet for a MessageBox popup 2020-10-06 12:43:50 +02:00
scatterflower
f91fc5739c fix doubleclick server being buggy 2020-10-04 01:41:23 -05:00
Crystalwarrior
610510eb7b move "check" to the very end instead of very start in packet_distribution 2020-08-25 13:00:00 +03:00
Crystalwarrior
ee3bad44c7 Implement clock pausing
Implement clock setting w/o starting or stopping
Both of these should make it possible for the server to start/stop/pause/resume the clock with perfect synchronization to the true time.
2020-08-25 12:48:09 +03:00
Crystalwarrior
7e9c5726e0 Introduce the timer packet - "TI".
This timer will start the clock accounting for latency! Cool, right?
Remove useless qDebug() for music looping
2020-08-25 12:21:10 +03:00
Crystalwarrior
febfbeafc1 Actually make use of the completely useless CHECK and CH keepalive timer and use them to determine the client's ping.
Display ping in the application window title.
keepalive timer now fires every second instead of every minute
Remove meme clock starting on set_widgets()
implement get_ping() on w_courtroom
2020-08-25 12:18:49 +03:00
scatterflower
565a3cce89 remove slow loading 2020-08-21 15:52:07 -05:00
scatterflower
3f999455a9 remove remaining traces of fantacrypt 2020-08-21 15:36:31 -05:00
scatterflower
c0316ded85 remove fantacrypt 2020-08-21 15:30:54 -05:00
scatterflower
ecb0ee42a3 clang format 2020-08-16 21:59:44 -05:00
scatterflower
8b44d4ae95 Only regenerate the area list once per ARUP packet 2020-08-15 19:40:52 -05:00
windrammer
36b5af3cb9
Add option for automatic logging (#203)
Just so we're on the same page, this is enabled by default.

Co-authored-by: Cents02 <Cents02@Cents0.me>
2020-07-31 15:14:39 -05:00
Crystalwarrior
29f0e06bc8
Make 'FL' packet reset settings to default and take the new settings in (#186)
* Fix colors in ic logs not parsing HTML properly when log_goes_downwards=false and colorlog=true

* Restore KFO branding

* Reset the settings values when receiving the 'FL' packet. This allows enabling/disabling features at runtime, such as ARUP system.

* Revert "Restore KFO branding"

This reverts commit 7f19b6257a0d75ec1d392b9b8c02a384c8dba43d.
2020-07-23 19:32:34 +02:00
oldmud0
3d3de26140 Fix connect button not enabling
Apparently this had never been staged, and while everyone was having
problems with the connect button, everything was working just fine for
me.

This enables the connect button a bit earlier in the handshake process
than in 2.6, since there are some older servers out there that don't
send FL (and so the connect button would never get enabled). This might
lead to race conditions, and sometimes the progress bar does hang,
but you can just cancel and reconnect - I haven't encountered a crash
so far.
2020-06-12 16:45:50 -05:00
sD
ba9aebec57 translate stuff that got run over 2020-05-23 18:32:05 +02:00
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
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
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
sD
dd2daf55f3 it's basically the same packet minus requesting the next list 2020-03-15 13:20:33 +01:00
sD
beb469cd80 Merge branch 'master' into pr/104 2020-03-15 13:12:52 +01:00
sD
1b0930b977 move area list detection algorithm into a seperate function 2020-03-13 16:29:01 +01:00
sD
ba03fb03e2 musictime is a bad name for this 2020-03-13 16:22:41 +01:00
sD
2701fab91f indentation 2020-03-06 17:14:49 +01:00
stonedDiscord
b668bb2276
Merge branch 'master' into music_list_update 2020-03-06 16:43:03 +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
ea099a5141 loading lost in translation 2020-02-23 12:59:20 +01:00
sD
444b0ff60f replace music loading 2020-02-23 11:43:41 +01:00
sD
16bd89b6ad detect == as music start 2020-02-23 11:35:32 +01:00
sD
9f5343e0bd put the old char loading back 2020-02-21 17:18:39 +01:00
sD
6c154841c3 area count got renamed 2020-02-21 16:54:06 +01:00
stonedDiscord
7d55ff01f5
Merge branch 'master' into 2.7 2020-02-21 16:39:32 +01: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
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
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
9911aeb5e6 Fix an issue with AOCharmovie hanging on frame1 animations
Fix an issue with the logger screwing up the server folder name string if character ' was used
2019-09-24 13:29:08 +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
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
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
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
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
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
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
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
177c56e2b8 move button enabling to ID because not all servers understand FL 2019-08-20 18:28:25 +02:00
stonedDiscord
47eb36789e numbered arguments for kick and ban torture 2019-08-06 21:25:33 +02:00
oldmud0
762702aff8 Make all strings translatable 2019-07-28 19:00:34 +02:00
David Skoland
5eccabcad1 Less insane debugging; minor refactoring (!75) 2019-07-12 23:00:25 +00:00
iamgoofball
0649e7b28e Case Announcer: Witness Support also some other shit 2019-01-23 07:35:29 -08:00
iamgoofball
f9406d0a7f multithread the music **harder** 2019-01-23 01:56:56 -08:00
iamgoofball
edbd67c2dc multi-threaded music 2019-01-23 01:40:57 -08:00
iamgoofball
1043699214 Suffix-independent Music, Mod Music List, looping bugfixes, easter eggs, etc. 2019-01-19 21:01:19 -08: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
115fc0ff15 Show ban reason with BD packet
This fully fixes issue 39 with tsuserver3
(https://github.com/AttorneyOnline/tsuserver3/issues/39)
2019-01-03 16:51:33 -06:00
David Skoland
00cfd2750d moved headers into include and cpp files into src + logo into resource 2018-12-26 16:43:08 +01:00