-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds Allergies #34500
base: dev
Are you sure you want to change the base?
Adds Allergies #34500
Conversation
970ea0e
to
7ef296e
Compare
At this point; will mark this as draft and just submit the whole complete feature. |
@@ -68,3 +68,5 @@ | |||
|
|||
/// An associative list of /singleton/trait and trait level - See individual traits for valid levels | |||
var/list/traits | |||
/// Flags set by traits triggering behavior; currently used for allergies. | |||
var/trait_flags |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't currently seem to be used anywhere yet, and technically whatever does want to use the trait_flags
could just call a variant of process_allergy()
instead
Fixes Auto stash before rebase of "refs/heads/Allergies"
Auto stash before cherry pick of "Adds ability to associate singletons with reagents" Auto stash before rebase of "refs/heads/Allergies" Auto stash before rebase of "refs/heads/Allergies"
4e8129c
to
90bd455
Compare
Hello, I am reaching the polish and testing stage (see todo list). The feature currently works. Given I am sure a lot of this is terribly written, you can start reviewing this whenever you鈥檇 like at this point so I can fix whatever needs to be fixed. |
c2ccfdb
to
8105526
Compare
f79657b
to
c2c1a7b
Compare
This is ready to be reviewed. In short, two types of allergies: Mild and Severe
In effect, any allergy can be prevented/controlled if you pre-load someone with inaprovaline. So if someone is under medical's care, allergies are usually a non-issue (as it should be, hard to die of an allergy when in a medical facility). Other additions:
|
|
||
///Flags assigned to carbon mobs trait_flags when they're actively having an allergy. | ||
#define MILD_ALLERGY FLAG(0) | ||
#define SEVERE_ALLERGY FLAG(1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seem like they would be mutually exclusive - is there a particular reason they're flags?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So I am certain there is a better way to implement this, because you鈥檙e right that they are mutually exclusive.
The reason they鈥檙e flags is because I didn鈥檛 think of a different/better way
c2c1a7b
to
f729118
Compare
Fixed Mistakenot's feedback |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changelog seems a big lacking compared to your todo list and PR description
Got this crash during init:
|
Fixes Fixes Fixes Fixes Fixes f Fixes Auto stash before rebase of "refs/heads/Allergies" Auto stash before rebase of "refs/heads/Allergies" Fixes Auto stash before rebase of "refs/heads/Allergies" Fixes
f729118
to
d75add9
Compare
Forgot to add a null check in the sanitize proc; I didn't get it on my end because I've done so much testing the preference file is not null. Should be fixed. |
Changelog updated |
馃啈 emmanuelbassil
rscadd: Adds ability to select minor or severe allergies to selected reagents in character setup screen.
rscadd: Adds Allergy autoinjectors in loadout; can only be equipped if character has an allergy. Contains inaprovaline and epinephrine.
rscadd: Minor allergies cause itching and resolve on their own with time. Can also be resolved with inaprovaline.
rscadd: Major allergies cause breathing problems, do not resolve on their own. Require inaprovaline for stabilization and epinephrine to reverse the reaction.
rscadd: Medical records automatically populate with allergies selected in setup screen.
code: Can now set specific traits as requirements for loadout items; currently only used for allergy autoinjectors.
admin: Adds verbs in mob variable panel to add/remove traits
/馃啈
Starting a project to expand on traits.
Since next step involves allowing some traits (and not all) to be set in character setup; figured I'd preface it by allowing admins to add/remove traits from VV.
Also added the ability to associate traits with lists; in case you want to give a trait a severity and another instruction. Only used for allergies at the moment.
Will use this as my to-do list:
For Separate PRs