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

Remove parasites in any warhead #1126

Closed
wants to merge 24 commits into from

Conversation

FS-21
Copy link
Contributor

@FS-21 FS-21 commented Aug 11, 2023

  • Warheads are now able to use this logic for removing parasytes or kick them out into the battlefield.
  • If CanRemoveParasites.KickOut.Paralysis is negative it will work as CanRemoveParasites.KickOut.Paralysis=15.

In rulesmd.ini:

[SOMEWARHEAD]            ; Warhead
CanRemoveParasites=no                   ; boolean
CanRemoveParasites.ReportSound=         ; Sound
CanRemoveParasites.KickOut=no           ; boolean
CanRemoveParasites.KickOut.Paralysis=15 ; integer, game frames
CanRemoveParasites.KickOut.Anim=        ; Animation

Summary by CodeRabbit

  • New Features
    • Introduced the ability for warheads to remove or kick parasites into the battlefield, enhancing strategic gameplay options.
  • Documentation
    • Updated documentation to include details on the new parasite removal functionality.
  • Enhancements
    • Added new properties to warheads for detailed control over parasite removal behavior.

FS-21 added 3 commits August 11, 2023 17:51
- Warheads are now able to use this logic for removing parasytes or kick them out into the battlefield.
- If `CanRemoveParasytes.KickOut.Paralysis` is negative it will work as `CanRemoveParasytes.KickOut.Paralysis=15`.

In rulesmd.ini:

[SOMEWARHEAD]            ; Warhead
CanRemoveParasytes=no                   ; boolean
CanRemoveParasytes.ReportSound=         ; Sound
CanRemoveParasytes.KickOut=no           ; boolean
CanRemoveParasytes.KickOut.Paralysis=-1 ; integer, game frames
CanRemoveParasytes.KickOut.Anim=        ; Animation
@github-actions
Copy link

github-actions bot commented Aug 11, 2023

Nightly build for this pull request:

This comment is automatic and is meant to allow guests to get latest nightly builds for this pull request without registering. It is updated on every successful build.

@FS-21 FS-21 changed the title Remove parasytes in any warhead Remove parasites in any warhead Aug 12, 2023
I don't know where I saw paras"y"te instead of paras"i"te :-/
FS-21 added 6 commits August 25, 2023 06:13
regarding default value in CanRemoveParasites.KickOut.Paralysis, 15 instead of -1.
Move code block into a new function called
TechnoExt::RemoveParasyte( ... )
Now CanRemoveParasites default value is false.
@FS-21 FS-21 requested a review from MortonPL August 25, 2023 14:25
Copy link
Contributor

@chaserli chaserli left a comment

Choose a reason for hiding this comment

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

  • IIRC the game handles parasite suppression in FootClass::ReceiveDamage, it would be better to check how that's implemented and rewrite the code there (and perhaps also in ParasiteClass::AI) instead of duplicating everywhere.

  • RegisterLoss and RemoveTracking are not idempotent.

coderabbitai[bot]

This comment was marked as outdated.

@chaserli chaserli added the Needs rework The structure or methodology is "mise en question" label Jul 7, 2024
@Phobos-developers Phobos-developers deleted a comment from coderabbitai bot Aug 30, 2024
@FS-21
Copy link
Contributor Author

FS-21 commented Aug 30, 2024

  • IIRC the game handles parasite suppression in FootClass::ReceiveDamage, it would be better to check how that's implemented and rewrite the code there (and perhaps also in ParasiteClass::AI) instead of duplicating everywhere.
  • RegisterLoss and RemoveTracking are not idempotent.

I'll convert this PR again as draft until I rework this feature looking those places you mentioned. But for now I'll update it because I need it in my mod.
Thanks for the suggestion!

@FS-21 FS-21 marked this pull request as draft August 30, 2024 08:24
@chaserli chaserli added Already implemented and removed Needs rework The structure or methodology is "mise en question" labels Dec 21, 2024
@chaserli
Copy link
Contributor

Already implemented in de2eb05

@chaserli chaserli closed this Dec 21, 2024
@FS-21
Copy link
Contributor Author

FS-21 commented Dec 21, 2024

What happens with the other tags for customizing the feature?

CanRemoveParasites.ReportSound= ; Sound
CanRemoveParasites.KickOut=no ; boolean <--- this "no" does what you mentioned in that commit (only remove the parasite).
CanRemoveParasites.KickOut.Paralysis=15 ; integer, game frames
CanRemoveParasites.KickOut.Anim= ; Animation

@chaserli
Copy link
Contributor

What happens with the other tags for customizing the feature?

CanRemoveParasites.ReportSound= ; Sound CanRemoveParasites.KickOut=no ; boolean <--- this "no" does what you mentioned in that commit (only remove the parasite). CanRemoveParasites.KickOut.Paralysis=15 ; integer, game frames CanRemoveParasites.KickOut.Anim= ; Animation

Maybe you can try to find a way to detonate a weapon (or AE?) when the parasite gets ejected?

@FS-21
Copy link
Contributor Author

FS-21 commented Dec 21, 2024

RemoveParasite= only deletes the parasite so I don't understand the ejected suggestion.

Anyways in my mod I only used the extra sound tag when the parasite is erased by the warhead so I won't make a drama if this PR was rejected due to duplicated logics :-D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants