code/__DEFINES/surgery_defines.dm
SURGERY_BLOODSPREAD_NONE | Defines for surgery and other stuff. Don't splash any blood. |
---|---|
SURGERY_BLOODSPREAD_HANDS | Cover the surgeon's hands in blood. |
SURGERY_BLOODSPREAD_FULLBODY | Cover the surgeon's body in blood. |
SURGERY_INITIATOR_ORGANIC | An initiator with this can start surgeries on organic organs. Make sure that anything that can be sharp gets this as well. |
SURGERY_INITIATOR_ROBOTIC | An initiator with this can start surgeries on robotic organs. |
ORGAN_CLOSED | Closed up. |
ORGAN_ORGANIC_OPEN | An organic limb that's been opened, at least once. |
ORGAN_ORGANIC_ENCASED_OPEN | An organ that's encased, probably with bone, where that casing has been cut through. |
ORGAN_ORGANIC_VIOLENT_OPEN | An organ that has been violently opened, likely via damage. |
ORGAN_SYNTHETIC_LOOSENED | Synthetic organ that's been unscrewed. |
ORGAN_SYNTHETIC_OPEN | Synthetic organ that's had its panel opened. |
SURGERY_BEGINSTEP_ABORT | Return this from begin_step() to abort the step and not try the surgery. |
SURGERY_BEGINSTEP_SKIP | Return this from begin_step() to skip the current step entirely and proceed to the next one. Use this if you would end up leaving someone in an invalid state. |
SURGERY_STEP_INCOMPLETE | The surgery step was not completed for some reason, and the next action will again be on this step. |
SURGERY_STEP_CONTINUE | The surgery step was completed, and the surgery should continue to the next step. |
SURGERY_STEP_RETRY_ALWAYS | This step will automatically be retried without question as long as this is returned. Be very cautious with this one! Make sure that any flow where this is used has an exit condition where something else will be returned. Otherwise, the user will be stuck in a loop! |
SURGERY_STEP_RETRY | This surgery step will be conditionally retried, so long as the surgery step's can_repeat() proc returns TRUE. Otherwise, it'll behave just like SURGERY_STEP_INCOMPLETE. |
SURGERY_INITIATE_CONTINUE_CHAIN | The surgery initiation isn't even going to be started. If you're working with the attack chain, this is probably what you'll be using. |
SURGERY_INITIATE_SUCCESS | The surgery initiaition was a success. We're advancing the current surgery. |
SURGERY_INITIATE_FAILURE | The surgery initiation was interrupted, or for some reason never completed. We don't want to return FALSE to the attack chain, though. |
SURGERY_INITIATE_INTERRUPTED | The surgery never reached (or finished) the do_after. Go back to the state we were in before this even happened. |
Define Details
ORGAN_CLOSED
Closed up.
ORGAN_ORGANIC_ENCASED_OPEN
An organ that's encased, probably with bone, where that casing has been cut through.
ORGAN_ORGANIC_OPEN
An organic limb that's been opened, at least once.
ORGAN_ORGANIC_VIOLENT_OPEN
An organ that has been violently opened, likely via damage.
ORGAN_SYNTHETIC_LOOSENED
Synthetic organ that's been unscrewed.
ORGAN_SYNTHETIC_OPEN
Synthetic organ that's had its panel opened.
SURGERY_BEGINSTEP_ABORT
Return this from begin_step() to abort the step and not try the surgery.
SURGERY_BEGINSTEP_SKIP
Return this from begin_step() to skip the current step entirely and proceed to the next one. Use this if you would end up leaving someone in an invalid state.
SURGERY_BLOODSPREAD_FULLBODY
Cover the surgeon's body in blood.
SURGERY_BLOODSPREAD_HANDS
Cover the surgeon's hands in blood.
SURGERY_BLOODSPREAD_NONE
Defines for surgery and other stuff. Don't splash any blood.
SURGERY_INITIATE_CONTINUE_CHAIN
The surgery initiation isn't even going to be started. If you're working with the attack chain, this is probably what you'll be using.
SURGERY_INITIATE_FAILURE
The surgery initiation was interrupted, or for some reason never completed. We don't want to return FALSE to the attack chain, though.
SURGERY_INITIATE_INTERRUPTED
The surgery never reached (or finished) the do_after. Go back to the state we were in before this even happened.
SURGERY_INITIATE_SUCCESS
The surgery initiaition was a success. We're advancing the current surgery.
SURGERY_INITIATOR_ORGANIC
An initiator with this can start surgeries on organic organs. Make sure that anything that can be sharp gets this as well.
SURGERY_INITIATOR_ROBOTIC
An initiator with this can start surgeries on robotic organs.
SURGERY_STEP_CONTINUE
The surgery step was completed, and the surgery should continue to the next step.
SURGERY_STEP_INCOMPLETE
The surgery step was not completed for some reason, and the next action will again be on this step.
SURGERY_STEP_RETRY
This surgery step will be conditionally retried, so long as the surgery step's can_repeat() proc returns TRUE. Otherwise, it'll behave just like SURGERY_STEP_INCOMPLETE.
SURGERY_STEP_RETRY_ALWAYS
This step will automatically be retried without question as long as this is returned. Be very cautious with this one! Make sure that any flow where this is used has an exit condition where something else will be returned. Otherwise, the user will be stuck in a loop!