mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2026-08-29 08:09:34 +01:00
* Restore blob chunks to the world. Blobs have chunks they spawn on death, carrying an artifact effect related to the blob type. The chunk carries a copy of the parent blob's type datum, to prevent modification of a blob causing issues with the chunk, and vice versa, if both somehow exist at the same time. * Organization, origin tech. * Convert to List Based system, drop transferring type datums directly as discussed in DMs * Added Volatile Alluvium chunk effect. Nanite swarm chunks exist, but don't do anything special for now. Blob Chunks can sniff a mob to take their faction. * Copy requires static * Chunk and effect code cleanliness lifemerger now utilizes a timer&callback instead of spawn()
25 lines
689 B
Plaintext
25 lines
689 B
Plaintext
/datum/artifact_effect/rare/gassleeping
|
|
name = "N2O creation"
|
|
|
|
|
|
/datum/artifact_effect/rare/gassleeping/New()
|
|
..()
|
|
effect = pick(EFFECT_TOUCH, EFFECT_AURA)
|
|
effect_type = pick(EFFECT_BLUESPACE, EFFECT_SYNTH)
|
|
|
|
|
|
/datum/artifact_effect/rare/gassleeping/DoEffectTouch(mob/living/user)
|
|
var/atom/holder = get_master_holder()
|
|
if (holder)
|
|
var/turf/holder_loc = holder.loc
|
|
if (istype(holder_loc))
|
|
holder_loc.assume_gas("nitrous_oxide", rand(2, 15))
|
|
|
|
|
|
/datum/artifact_effect/rare/gassleeping/DoEffectAura()
|
|
var/atom/holder = get_master_holder()
|
|
if (holder)
|
|
var/turf/holder_loc = holder.loc
|
|
if (istype(holder_loc))
|
|
holder_loc.assume_gas("nitrous_oxide", pick(0, 0, 0.1, rand()))
|