Move plasma lava turf from snowdin mission code to turf lava.dm (#71168)

## About The Pull Request
Moves all the plasma lava code out of snowdin (since it's used in Ice)
and makes it apart of the lava.dm file in the game turfs.

## Why It's Good For The Game
Better organization.

## Changelog
🆑
code: Move plasma lava turf code to be in lava.dm file instead of
snowdin mission code
/🆑
This commit is contained in:
Tim
2022-11-16 21:40:21 -08:00
committed by GitHub
parent eaea9c943f
commit bb196cb14a
2 changed files with 79 additions and 79 deletions
+79 -1
View File
@@ -1,4 +1,8 @@
///LAVA
/*
* LAVA
* PLASMA LAVA
* MAFIA PLASMA LAVA
*/
/turf/open/lava
name = "lava"
@@ -260,3 +264,77 @@
/turf/open/lava/smooth/airless
initial_gas_mix = AIRLESS_ATMOS
/turf/open/lava/plasma
name = "liquid plasma"
desc = "A flowing stream of chilled liquid plasma. You probably shouldn't get in."
icon_state = "liquidplasma"
initial_gas_mix = "n2=82;plasma=24;TEMP=120"
baseturfs = /turf/open/lava/plasma
light_range = 3
light_power = 0.75
light_color = LIGHT_COLOR_PURPLE
immunity_trait = TRAIT_SNOWSTORM_IMMUNE
immunity_resistance_flags = FREEZE_PROOF
lava_temperature = 100
/turf/open/lava/plasma/examine(mob/user)
. = ..()
. += span_info("Some <b>liquid plasma<b> could probably be scooped up with a <b>container</b>.")
/turf/open/lava/plasma/attackby(obj/item/I, mob/user, params)
if(!I.is_open_container())
return ..()
if(!I.reagents.add_reagent(/datum/reagent/toxin/plasma, rand(5, 10)))
to_chat(user, span_warning("[I] is full."))
return
user.visible_message(span_notice("[user] scoops some plasma from the [src] with [I]."), span_notice("You scoop out some plasma from the [src] using [I]."))
/turf/open/lava/plasma/do_burn(atom/movable/burn_target, delta_time = 1)
. = TRUE
if(isobj(burn_target))
return FALSE // Does nothing against objects. Old code.
var/mob/living/burn_living = burn_target
burn_living.adjustFireLoss(2)
if(QDELETED(burn_living))
return
burn_living.adjust_fire_stacks(20) //dipping into a stream of plasma would probably make you more flammable than usual
burn_living.adjust_bodytemperature(-rand(50,65)) //its cold, man
if(!ishuman(burn_living) || DT_PROB(65, delta_time))
return
var/mob/living/carbon/human/burn_human = burn_living
var/datum/species/burn_species = burn_human.dna.species
if(istype(burn_species, /datum/species/plasmaman) || istype(burn_species, /datum/species/android)) //ignore plasmamen/robotic species
return
var/list/plasma_parts = list()//a list of the organic parts to be turned into plasma limbs
var/list/robo_parts = list()//keep a reference of robotic parts so we know if we can turn them into a plasmaman
for(var/obj/item/bodypart/burn_limb as anything in burn_human.bodyparts)
if(IS_ORGANIC_LIMB(burn_limb) && burn_limb.limb_id != SPECIES_PLASMAMAN) //getting every organic, non-plasmaman limb (augments/androids are immune to this)
plasma_parts += burn_limb
if(!IS_ORGANIC_LIMB(burn_limb))
robo_parts += burn_limb
burn_human.adjustToxLoss(15)
burn_human.adjustFireLoss(25)
if(plasma_parts.len)
var/obj/item/bodypart/burn_limb = pick(plasma_parts) //using the above-mentioned list to get a choice of limbs
burn_human.emote("scream")
ADD_TRAIT(burn_limb, TRAIT_PLASMABURNT, name)
burn_human.update_body_parts()
burn_human.emote("scream")
burn_human.visible_message(span_warning("[burn_human]'s [burn_limb.plaintext_zone] melts down to the bone!"), \
span_userdanger("You scream out in pain as your [burn_limb.plaintext_zone] melts down to the bone, leaving an eerie plasma-like glow where flesh used to be!"))
if(!plasma_parts.len && !robo_parts.len) //a person with no potential organic limbs left AND no robotic limbs, time to turn them into a plasmaman
burn_human.ignite_mob()
burn_human.set_species(/datum/species/plasmaman)
burn_human.visible_message(span_warning("[burn_human] bursts into a brilliant purple flame as [burn_human.p_their()] entire body is that of a skeleton!"), \
span_userdanger("Your senses numb as all of your remaining flesh is turned into a purple slurry, sloshing off your body and leaving only your bones to show in a vibrant purple!"))
//mafia specific tame happy plasma (normal atmos, no slowdown)
/turf/open/lava/plasma/mafia
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
baseturfs = /turf/open/lava/plasma/mafia
slowdown = 0
@@ -153,91 +153,13 @@
shuttleId = "snowdin_mining"
possible_destinations = "snowdin_mining_top;snowdin_mining_down"
//liquid plasma!!!!!!//
/turf/open/floor/iron/dark/snowdin
initial_gas_mix = FROZEN_ATMOS
planetary_atmos = 1
temperature = 180
/turf/open/lava/plasma
name = "liquid plasma"
desc = "A flowing stream of chilled liquid plasma. You probably shouldn't get in."
icon_state = "liquidplasma"
initial_gas_mix = "n2=82;plasma=24;TEMP=120"
baseturfs = /turf/open/lava/plasma
light_range = 3
light_power = 0.75
light_color = LIGHT_COLOR_PURPLE
immunity_trait = TRAIT_SNOWSTORM_IMMUNE
immunity_resistance_flags = FREEZE_PROOF
lava_temperature = 100
/turf/open/lava/plasma/examine(mob/user)
. = ..()
. += span_info("Some <b>liquid plasma<b> could probably be scooped up with a <b>container</b>.")
/turf/open/lava/plasma/attackby(obj/item/I, mob/user, params)
if(!I.is_open_container())
return ..()
if(!I.reagents.add_reagent(/datum/reagent/toxin/plasma, rand(5, 10)))
to_chat(user, span_warning("[I] is full."))
return
user.visible_message(span_notice("[user] scoops some plasma from the [src] with [I]."), span_notice("You scoop out some plasma from the [src] using [I]."))
/turf/open/lava/plasma/do_burn(atom/movable/burn_target, delta_time = 1)
. = TRUE
if(isobj(burn_target))
return FALSE // Does nothing against objects. Old code.
var/mob/living/burn_living = burn_target
burn_living.adjustFireLoss(2)
if(QDELETED(burn_living))
return
burn_living.adjust_fire_stacks(20) //dipping into a stream of plasma would probably make you more flammable than usual
burn_living.adjust_bodytemperature(-rand(50,65)) //its cold, man
if(!ishuman(burn_living) || DT_PROB(65, delta_time))
return
var/mob/living/carbon/human/burn_human = burn_living
var/datum/species/burn_species = burn_human.dna.species
if(istype(burn_species, /datum/species/plasmaman) || istype(burn_species, /datum/species/android)) //ignore plasmamen/robotic species
return
var/list/plasma_parts = list()//a list of the organic parts to be turned into plasma limbs
var/list/robo_parts = list()//keep a reference of robotic parts so we know if we can turn them into a plasmaman
for(var/obj/item/bodypart/burn_limb as anything in burn_human.bodyparts)
if(IS_ORGANIC_LIMB(burn_limb) && burn_limb.limb_id != SPECIES_PLASMAMAN) //getting every organic, non-plasmaman limb (augments/androids are immune to this)
plasma_parts += burn_limb
if(!IS_ORGANIC_LIMB(burn_limb))
robo_parts += burn_limb
burn_human.adjustToxLoss(15)
burn_human.adjustFireLoss(25)
if(plasma_parts.len)
var/obj/item/bodypart/burn_limb = pick(plasma_parts) //using the above-mentioned list to get a choice of limbs
burn_human.emote("scream")
ADD_TRAIT(burn_limb, TRAIT_PLASMABURNT, name)
burn_human.update_body_parts()
burn_human.emote("scream")
burn_human.visible_message(span_warning("[burn_human]'s [burn_limb.plaintext_zone] melts down to the bone!"), \
span_userdanger("You scream out in pain as your [burn_limb.plaintext_zone] melts down to the bone, leaving an eerie plasma-like glow where flesh used to be!"))
if(!plasma_parts.len && !robo_parts.len) //a person with no potential organic limbs left AND no robotic limbs, time to turn them into a plasmaman
burn_human.ignite_mob()
burn_human.set_species(/datum/species/plasmaman)
burn_human.visible_message(span_warning("[burn_human] bursts into a brilliant purple flame as [burn_human.p_their()] entire body is that of a skeleton!"), \
span_userdanger("Your senses numb as all of your remaining flesh is turned into a purple slurry, sloshing off your body and leaving only your bones to show in a vibrant purple!"))
//mafia specific tame happy plasma (normal atmos, no slowdown)
/turf/open/lava/plasma/mafia
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
baseturfs = /turf/open/lava/plasma/mafia
slowdown = 0
/////////// papers
/obj/item/paper/crumpled/ruins/snowdin/foreshadowing
name = "scribbled note"
default_raw_text = {"Something's gone VERY wrong here. Jouslen has been mumbling about some weird shit in his cabin during the night and he seems always tired when we're working. I tried to confront him about it and he blew up on me,