Files
crystall-punk-14/Content.Shared
keronshb f885075d2e DoAfter support for Actions (#38253)
* Adds Action DoAfter Events

* Adds DoAfterArgs fields to DoAfterComp

* Adds a base doafter action

* Adds Attempt action doafter logic

* Adds doafter logic to actions

* Changes Action Attempt Doafter and action doafter to take in Performer and the original use delay. Use delay now triggers when a repeated action  is cancelled.

* Readds the TryPerformAction method and readds request perform action into the action doafter events

* Adds a force skip to DoAfter Cancel so we can skip the complete check

* Adds a Delay Reduction field to the comp and to the comp state

* Fixes doafter mispredict, changes doafter comp check to a guard clause, sets delay reduction if it exists.

* Cancels ActionDoAfter if charges is 0

* Serializes Attempt Frequency

* Comment for rework

* Changes todo into a comment

* Moves doafterargs to doafterargscomp

* Adds DoAfterArgs comp to BaseDoAfterAction

* Removes unused trycomp with actionDoAfter

* Replaces DoAfterRepateUseDelay const with timespan.zero

* Removes unused usings

* Makes SharedActionsSystem partial, adds DoAfter partial class to ActionSystem, moves ActionDoAfter logic to the SharedActionsSystem.DoAfter class

* Cleanup and prediction

* Renames OnActionDoAfterAttempt to OnActionDoAfter, moves both to Shared Action DoAfter

* Removes ActionAttemptDoAfterEvent and moves its summaries to ActionDoAfterEvent. Converts OnActionDoAfterAttempt into TryStartActionDoAfter

* Removes Extra check for charges and actiondoafters

* Sloptimization

* Cleanup

* Cleanup

* Adds param descs

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-09-08 12:55:13 +03:00
..
2025-09-05 12:45:48 +03:00
2025-09-05 12:45:48 +03:00
2025-06-03 13:51:50 +02:00
2025-04-25 16:53:50 -04:00
2024-07-01 02:20:57 +10:00
…
2025-06-25 15:13:03 +02:00
2025-09-05 12:45:48 +03:00
…
2025-09-05 12:45:48 +03:00
2024-08-25 22:18:42 +10:00
2025-09-05 14:22:49 +02:00
2024-07-13 16:09:19 +10:00
2025-03-28 09:29:02 +11:00
2025-09-05 12:45:48 +03:00
2025-05-10 01:06:19 -04:00
2025-07-16 02:21:18 +02:00
2025-02-14 16:46:25 +01:00
2025-08-06 16:25:24 +02:00
2025-08-23 15:15:28 -07:00
2025-08-21 03:10:07 +02:00
2025-08-15 16:06:51 +02:00
…
2025-08-03 21:20:37 +02:00
2025-09-01 18:24:37 +03:00
2025-09-01 18:24:37 +03:00
2025-08-15 16:06:51 +02:00
2025-07-30 12:57:50 -07:00
2025-09-05 12:45:48 +03:00
2025-08-03 21:20:37 +02:00
2025-07-07 14:23:45 +02:00
…
2025-05-18 14:02:52 +10:00
2025-04-25 16:53:50 -04:00
2025-08-13 15:45:51 -07:00
2024-06-09 15:18:54 -04:00
2025-09-05 14:22:49 +02:00
2024-09-07 00:05:53 +10:00
2025-08-03 21:20:37 +02:00
2025-09-05 12:45:48 +03:00
2025-08-03 21:20:37 +02:00
2025-09-06 02:19:19 -07:00
2025-04-26 19:24:25 -04:00
2025-05-20 23:14:10 +02:00
2024-06-05 10:32:58 +03:00
2025-07-03 20:48:04 +02:00
2025-06-21 20:59:37 +03:00
2025-08-11 21:57:39 +03:00
2025-08-21 03:10:07 +02:00
2025-09-05 12:45:48 +03:00
2025-08-12 13:09:00 -07:00
…
2025-04-19 00:01:52 +02:00
2025-08-14 22:33:37 -07:00
2025-07-17 12:34:00 -04:00
2025-08-03 21:20:37 +02:00
2025-09-05 12:45:48 +03:00
2025-09-05 12:45:48 +03:00
…
2025-08-03 21:20:37 +02:00
2025-04-16 08:23:40 -04:00
2025-08-26 20:04:10 +02:00
2025-08-21 03:02:54 +02:00
2024-04-28 21:38:23 -07:00
2024-08-10 11:08:56 +10:00
2025-02-18 23:27:30 +11:00
2025-05-20 01:08:55 -04:00