-
Notifications
You must be signed in to change notification settings - Fork 557
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
/tg/ Status effects part 1 - fluid status updates (#4828)
![image](https://github.com/cmss13-devs/cmss13/assets/604624/38cdd1a0-e13c-4d69-b893-49cea2a8113f) CM Dev figured it out 9 years ago and nobody listened and kept tacking illogical conditions <!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> # About the pull request <!-- Remove this text and explain what the purpose of your PR is. Mention if you have tested your changes. If you changed a map, make sure you used the mapmerge tool. If this is an Issue Correction, you can type "Fixes Issue #169420" to link the PR to the corresponding Issue number #169420. Remember: something that is self-evident to you might not be to others. Explain your rationale fully, even if you feel it goes without saying. --> Builds on previous "prelude" PRs in the following steps: * Ports /tg/ body_position and mobility_flags * Fixes some interaction requirements to use stun/mobility rather than lying/knocked_down * Ports /tg/ granular status updates, ie. status propagating through handlers and signals. This includes changes to resting, buckling, and lying down human transforms. * Wires our status effect system to it directly * Removes `update_canmove` from existence completely as not needed anymore Because step 1 and 2 require updating all the gameplay logic using them, this PR modifies a lot of files. Part 2 will move the actual status effects to /tg/ status_effects, resolving our timing problems. # Testing Photographs and Procedure <!-- Include any screenshots/videos/debugging steps of the modified code functioning successfully, ideally including edge cases. --> <details> <summary>Testing Checklist!</summary> - [x] Basic Movement - [x] Admin Freeze Prevents Movement - [x] Resting, Getting Up - [x] Xenos change icon when resting - [x] Buckling, including bed rotation and propelled chairs - [x] Crawling Movement including sprite movement - [x] Aggressive, Choke Grabbing, and Fireman carry apply rotation - [x] Xeno Pounce and Abduct properly freeze both target and caster - [x] Double dropship seats density update - [x] Explosive knockout on Humans - [x] Xeno burrow density and movement interactions - [x] Xeno nest interactions, specifically confirm density changes work - [ ] Xeno nest bullet hits doublecheck with snowflake trait check - [x] Combat Xeno ~~knockouts~~ knockdown and sprite updates - [x] ~~Sleeping, Waking up, Usage of items while sleeping~~ - Can't really test this we have almost no sleep code - [x] Arbitrary buckling rotations - [x] Admin-set transforms work with buckling/lying - [ ] All the broken objects that will only be found out in Testmerge </details> # Changelog <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly label your changes in the changelog. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> <!-- If you add a name after the ':cl', that name will be used in the changelog. You must add your CKEY after the CL if your GitHub name doesn't match. Maintainers freely reserve the right to remove and add tags should they deem it appropriate. --> :cl: code: Ported basic /tg/ Status Backend. add: Human transform changes such as lying down, knock down, buckling, are now animated. fix: Some statuses will now take effect immediately instead of waiting for a life tick, notably Resting. balance: Many interaction requirements were changed to eg. fail upon stuns rather than if lying down. /:cl: <!-- Both :cl:'s are required for the changelog to work! -->
- Loading branch information
Showing
219 changed files
with
1,052 additions
and
819 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
/// The duration of the animate call in mob/living/update_transform | ||
#define UPDATE_TRANSFORM_ANIMATION_TIME (0.2 SECONDS) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#define TRAIT_STATUS_EFFECT(effect_id) "[effect_id]-trait" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.