Commit Graph

13 Commits

Author SHA1 Message Date
ShadowCommander db8bc652f1
Fix playtime on player tab getting set to Unknown (#28876)
Update play time on admin panel player tab after db loads
2024-07-05 20:27:59 +02:00
Leon Friedrich dfbcd93745
Fix `playtime_addrole` command printing the wrong time (#28783) 2024-07-05 20:27:53 +02:00
DrSmugleaf eed9c58386
Add job whitelist system (#28085)
* Add job whitelist system

* Address reviews

* Fix name

* Apply suggestions from code review

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* cancinium

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2024-06-01 18:02:43 +02:00
Pieter-Jan Briers 8689c7f90d
Fix preference loading bugs (#27742)
First bug: if an error occured during pref loading code, it would fail. If the person then readied up, it would likely cause the round to fail to start.

Why could they ready up? The code only checks that the prefs finished loading, not that they finished loading *successfully*. Whoops.

Anyways, now people get kicked if their prefs fail to load. And I improved the error handling.

Second bug: if a user disconnected while their prefs were loading, it would cause an exception. This exception would go unobserved on lobby servers or raise through gameticker on non-lobby servers.

This happened even on a live server once and then triggered the first bug, but idk how.

Fixed this by properly plumbing through cancellation into the preferences loading code. The stuff is now cancelled properly.

Third bug: if somebody has a loadout item with a playtime requirement active, load-time sanitization of player prefs could run into a race condition because the sanitization can happen *before* play time was loaded.

Fixed by moving pref sanitizations to a later stage in the load process.
2024-05-18 13:30:09 +02:00
metalgearsloth d49eabc1a5
Partial cherry-pick: Loadouts redux (#25715)
Signed-off-by: NullWanderer <56081759+NullWanderer@users.noreply.github.com>
2024-04-22 03:28:58 +02:00
LordCarve ad35a2fda3
Obsolete refactor - ConnectedClient to Channel (#24409)
(cherry picked from commit 05a2e6b3a21e5fb3198432d885bbe28506d85b9c)
2024-01-27 23:44:02 +01:00
Debug d2b6360e7b Fix missing namespaces and other errors 2023-10-31 19:43:58 +01:00
Leon Friedrich e66c0b5035 Un-revert IPlayerManager refactor (#21244) 2023-10-31 19:00:44 +01:00
Debug 4e714951a1
Whitelist refactor number 5834 (#291) 2023-10-25 16:15:05 +02:00
Debug c37a4d53c8
Role whitelists (#191)
* Add job whitelists

* Redo whitelist system with jobrequirements

* Remove unused function

* Fix linter errors

* Remove unused dependency and whitespace
2023-10-19 00:23:17 +02:00
metalgearsloth 20748cc542
Hotfix round restart loops (#16292)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2023-05-11 11:00:39 +10:00
Kevin Zheng bbfc8ad140
Fix logic error in role timers (#10681) 2022-08-18 17:06:44 -07:00
Pieter-Jan Briers e852ada6c8
Play time tracking: Job timers 3: more titles: when the (#9978)
Co-authored-by: Veritius <veritiusgaming@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-08-07 16:00:42 +10:00