Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NyanoCombat Part 4: MeleeSystem Refactor Part 2, Electric Boogaloo #934

Conversation

VMSolidus
Copy link
Member

@VMSolidus VMSolidus commented Sep 19, 2024

Description

Surprise motherfucker, here's a massive fucking refactor of SharedMeleeWeaponSystem.
The MeleeWeaponComponent now allows for melee weapons to directly configure how and what members of the ContestsSystem they wish to utilize for influencing damage. Additionally, the damage of a melee weapon modified by Contests is now also visible when examined(Although this only reflects damage as per the current condition of the user).

Changelog

🆑

  • add: Melee Weapons can now individually define their interactions with the ContestsSystem.
  • add: Added the ContestArgs type, allowing arbitrarily any component to contain a list of arguments for ContestSystems.
  • add: Added the ContestConstructor, a new type of meta-Contest that enables other systems to use components to define all possible contest behaviors, rather than needing to hardcode specific interactions.

@github-actions github-actions bot added the Changes: C# Changes any cs files label Sep 19, 2024
@github-actions github-actions bot added the Status: Needs Review Someone please review this label Sep 19, 2024
@VMSolidus VMSolidus added Holy Shit Priority: 3-Medium Needs to be resolved at some point Size: 2-Large For large issues/PRs and removed Status: Needs Review Someone please review this labels Sep 19, 2024
@@ -49,6 +50,7 @@ public abstract class SharedMeleeWeaponSystem : EntitySystem
[Dependency] private readonly IPrototypeManager _protoManager = default!;
[Dependency] private readonly StaminaSystem _stamina = default!;
[Dependency] private readonly ContestsSystem _contests = default!;
[Dependency] private readonly IConfigurationManager _config = default!;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this added if not used, just asking.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably a leftover from when the Contest Constructor lived in a Partial of SharedMeleeWeaponSystem.

@VMSolidus VMSolidus merged commit 7119dd0 into Simple-Station:master Sep 20, 2024
11 checks passed
SimpleStation14 added a commit that referenced this pull request Sep 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes: C# Changes any cs files Priority: 3-Medium Needs to be resolved at some point Size: 2-Large For large issues/PRs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants