embedded
![code/datums/components/embedded.dm 33](git.png)
Vars | |
harmful | if both our pain multiplier and jostle pain multiplier are 0, we're harmless and can omit most of the damage related stuff |
---|---|
Procs | |
Topic | Someone is ripping out the item from the turf by hand |
byeItemCarbon | Something deleted or moved our weapon while it was embedded, how rude! |
complete_rip_out | everything async that ripOut used to do |
fallOutCarbon | Called when then item randomly falls out of a carbon. This handles the damage and descriptors, then calls safe_remove() |
initCarbon | //////////HUMAN PROCS//////////////// |
initTurf | ///////////TURF PROCS//////////////// |
itemMoved | This proc handles if something knocked the invisible item loose from the turf somehow (probably an explosion). Just make it visible and say it fell loose, then get outta here. |
jostleCheck | Called every time a carbon with a harmful embed moves, rolling a chance for the item to cause pain. The chance is halved if the carbon is crawling or walking. |
processCarbon | Items embedded/stuck to carbons both check whether they randomly fall out (if applicable), as well as if the target mob and limb still exists. Items harmfully embedded in carbons have an additional check for random pain (if applicable) |
ripOutCarbon | Called when a carbon with an object embedded/stuck to them inspects themselves and clicks the appropriate link to begin ripping the item out. This handles the ripping attempt, descriptors, and dealing damage, then calls safe_remove() |
safeRemoveCarbon | This proc handles the final step and actual removal of an embedded/stuck item from a carbon, whether or not it was actually removed safely. Pass TRUE for to_hands if we want it to go to the victim's hands when they pull it out |
Var Details
harmful
![code/datums/components/embedded.dm 53](git.png)
if both our pain multiplier and jostle pain multiplier are 0, we're harmless and can omit most of the damage related stuff
Proc Details
Topic
Someone is ripping out the item from the turf by hand
byeItemCarbon
Something deleted or moved our weapon while it was embedded, how rude!
complete_rip_out
everything async that ripOut used to do
fallOutCarbon
Called when then item randomly falls out of a carbon. This handles the damage and descriptors, then calls safe_remove()
initCarbon
//////////HUMAN PROCS////////////////
Set up an instance of embedding for a carbon. This is basically an extension of Initialize() so not much to say
initTurf
///////////TURF PROCS////////////////
Turfs are much lower maintenance, since we don't care if they're in pain, but since they don't bleed or scream, we draw an overlay to show their status. The only difference pointy/sticky items make here is text descriptors and pointy objects making a spark shower on impact.
itemMoved
This proc handles if something knocked the invisible item loose from the turf somehow (probably an explosion). Just make it visible and say it fell loose, then get outta here.
jostleCheck
Called every time a carbon with a harmful embed moves, rolling a chance for the item to cause pain. The chance is halved if the carbon is crawling or walking.
processCarbon
Items embedded/stuck to carbons both check whether they randomly fall out (if applicable), as well as if the target mob and limb still exists. Items harmfully embedded in carbons have an additional check for random pain (if applicable)
ripOutCarbon
Called when a carbon with an object embedded/stuck to them inspects themselves and clicks the appropriate link to begin ripping the item out. This handles the ripping attempt, descriptors, and dealing damage, then calls safe_remove()
safeRemoveCarbon
This proc handles the final step and actual removal of an embedded/stuck item from a carbon, whether or not it was actually removed safely. Pass TRUE for to_hands if we want it to go to the victim's hands when they pull it out