SPLURT Station 13 - Modules - TypesVar Details - Proc Details

embed

Vars

embed_chancewhether we can skip assigning all the vars (since these are bespoke elements, we don't have to reset the vars every time we attach to something, we already know what we are!)

Procs

checkEmbedMobChecking to see if we're gonna embed into a human
checkEmbedOtherWe need the hit_zone if we're embedding into a human, so this proc only handles if we're embedding into a turf
checkEmbedProjectilecheckEmbedProjectile() is what we get when a projectile with a defined shrapnel_type impacts a target.
detachFromWeaponIf we don't want to be embeddable anymore (deactivating an e-dagger for instance)
examinedSomeone inspected our embeddable item
severancePackageA different embed element has been attached, so we'll detach and let them handle things
tryForceEmbedArguments:

Var Details

embed_chance

whether we can skip assigning all the vars (since these are bespoke elements, we don't have to reset the vars every time we attach to something, we already know what we are!)

Proc Details

checkEmbedMob

Checking to see if we're gonna embed into a human

checkEmbedOther

We need the hit_zone if we're embedding into a human, so this proc only handles if we're embedding into a turf

checkEmbedProjectile

checkEmbedProjectile() is what we get when a projectile with a defined shrapnel_type impacts a target.

If we hit a valid target (carbon or closed turf), we create the shrapnel_type object and immediately call tryEmbed() on it, targeting what we impacted. That will lead it to call tryForceEmbed() on its own embed element (it's out of our hands here, our projectile is done), where it will run through all the checks it needs to.

detachFromWeapon

If we don't want to be embeddable anymore (deactivating an e-dagger for instance)

examined

Someone inspected our embeddable item

severancePackage

A different embed element has been attached, so we'll detach and let them handle things

tryForceEmbed

Arguments: