-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Implements additional procs for datum/plant_gene_strain
and enables seeds to spawn with active gene strains
#14616
Conversation
This PR has been inactive for two weeks, and has been automatically marked as stale. This means it is at risk of being auto closed in another week. Please address any outstanding review items and ensure your PR is finished. If you are auto-staled anyway, ask developers if your PR will be merged. Once you have done any of the previous actions then you should request a developer remove the stale label on your PR, to reset the stale timer. If you feel no developer will respond in that time, you may wish to close this PR youself, while you seek developer comment, as you will then be able to reopen the PR yourself. |
…nto genestrain_utilities
This PR has been inactive for two weeks, and has been automatically marked as stale. This means it is at risk of being auto closed in another week. Please address any outstanding review items and ensure your PR is finished. If you are auto-staled anyway, ask developers if your PR will be merged. Once you have done any of the previous actions then you should request a developer remove the stale label on your PR, to reset the stale timer. If you feel no developer will respond in that time, you may wish to close this PR youself, while you seek developer comment, as you will then be able to reopen the PR yourself. |
[hydroponics][balance]
About the PR
This PR changes a few procs associated with
/datum/plant_gene_strain
and implements additional ones which enable additional plant gene strains to have more special behaviour. Also, this PR changes some internal stuff sorrounding gene strains and apply slight modifications to make gene strains work more intuitive.firstly, this removes the passing of a datum/plant to
proc/HYPaddCommut
. This passed variable was unused in the proc at all and could even lead to problems if the proc is used before a proper planttype was assigned. In general, it now only gets passed the plantgenes it actually manipulatesproc/HYPremoveCommut
was added to be able to forcefully remove gene strains from plants.4 new procs were implemented to
/datum/plant_gene_strain
:proc/on_addition
now enables to make changes to the respectable plantgenes whenever the gene was added to a fresh generation of plant. It won't be called when a proc gets passed along a splice chain (e.g. splicing, seeds from harvesting)proc/on_passing
enables changes when gene strains get passed along the generational chain (e.g. splicing or harvesting)proc/on_removal
enables changes when a gene strain is removed byHYPremoveCommut
proc/changes_after_splicing
enables changes when a seed containing this gene strain gets spliced.To show these procs, 3 gene strains are added that are not implemented in any plant yet. "Overpowering Genome" and "Accepting Genome" make all plant genes of the seed dominant/recessive. "Temporary Spliceability" removes itself once the seed containing it gets spliced and replace itself with "Splice Disabler".
Additionally,
var/list/innate_commut
was added todatum/plant
. This enables seeds to be granted these commuts in that list whenevergeneric_seed_setup
is called with the new variable "has parent" set to FALSE. This is always the case when a seed is set up without a parent it could receive stats from (e.g. from the vendor).Using this new variable, any plant that can receive the "splice disabler" plant strain with a 100% chance now gains this strain directly when vendored. The chance for splice disabler was set to the standard 10%.
Also, superior and inferior quality now work with negative potency now how you would expect it. e.g. superior quality makes negative potency 20% less bad.
Why's this needed?
This PR adds additional flexibility to add more gene strains to plants. Also, it enables to diversify the use of gene strains for certain plants by making them be able to spawn on the seeds directly.
Changelog