mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Part 2 of the WIP chemistry stuff
Map update with secure doors!
This commit is contained in:
@@ -140,7 +140,6 @@
|
||||
|
||||
|
||||
process()
|
||||
processing_objects.Remove(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
w_amt = 100
|
||||
origin_tech = "magnets=2"
|
||||
|
||||
secured = 0
|
||||
secured = 1
|
||||
small_icon_state_left = "infrared_left"
|
||||
small_icon_state_right = "infrared_right"
|
||||
|
||||
@@ -45,6 +45,9 @@
|
||||
if(scanning)
|
||||
src.overlays += text("infrared_old2")
|
||||
src.small_icon_state_overlays += text("infrared_on")
|
||||
if(master && istype(master, /obj/item/weapon/chem_grenade))
|
||||
var/obj/item/weapon/chem_grenade/M = master
|
||||
M.c_state(1)
|
||||
|
||||
if(holder)
|
||||
holder.update_icon()
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
w_amt = 50
|
||||
origin_tech = "magnets=1"
|
||||
|
||||
secured = 0
|
||||
secured = 1
|
||||
small_icon_state_left = "prox_left"
|
||||
small_icon_state_right = "prox_right"
|
||||
|
||||
@@ -87,11 +87,18 @@
|
||||
if(timing)
|
||||
overlays += text("prox_timing")
|
||||
small_icon_state_overlays += text("prox_timing")
|
||||
if(master && istype(master, /obj/item/weapon/chem_grenade))
|
||||
var/obj/item/weapon/chem_grenade/M = master
|
||||
M.c_state(1)
|
||||
if(scanning)
|
||||
overlays += text("prox_scanning")
|
||||
small_icon_state_overlays += text("prox_scanning")
|
||||
if(master && istype(master, /obj/item/weapon/chem_grenade))
|
||||
var/obj/item/weapon/chem_grenade/M = master
|
||||
M.c_state(1)
|
||||
if(holder)
|
||||
holder.update_icon()
|
||||
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -125,6 +125,8 @@
|
||||
A.pulse(src.airlock_wire)
|
||||
else if(holder)
|
||||
holder.process_activation(src, 1, 0)
|
||||
else
|
||||
..()
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
w_amt = 10
|
||||
origin_tech = "magnets=1"
|
||||
|
||||
secured = 0
|
||||
secured = 1
|
||||
small_icon_state_left = "timer_left"
|
||||
small_icon_state_right = "timer_right"
|
||||
|
||||
@@ -64,6 +64,9 @@
|
||||
if(timing)
|
||||
overlays += text("timer_timing")
|
||||
small_icon_state_overlays += text("timer_timing")
|
||||
if(master && istype(master, /obj/item/weapon/chem_grenade))
|
||||
var/obj/item/weapon/chem_grenade/M = master
|
||||
M.c_state(1)
|
||||
if(holder)
|
||||
holder.update_icon()
|
||||
return
|
||||
|
||||
@@ -512,6 +512,21 @@ datum
|
||||
description = "A colorless, odorless gas."
|
||||
reagent_state = GAS
|
||||
color = "#808080" // rgb: 128, 128, 128
|
||||
reaction_obj(var/obj/O, var/volume)
|
||||
if((!O) || (!volume)) return 0
|
||||
src = null
|
||||
var/turf/the_turf = get_turf(O)
|
||||
var/datum/gas_mixture/napalm = new
|
||||
napalm.oxygen = volume*10
|
||||
napalm.temperature = T0C
|
||||
the_turf.assume_air(napalm)
|
||||
reaction_turf(var/turf/T, var/volume)
|
||||
src = null
|
||||
var/datum/gas_mixture/napalm = new
|
||||
napalm.oxygen = volume*10
|
||||
napalm.temperature = T0C
|
||||
T.assume_air(napalm)
|
||||
return
|
||||
|
||||
copper
|
||||
name = "Copper"
|
||||
@@ -974,13 +989,13 @@ datum
|
||||
if(!the_turf)
|
||||
return //No sense trying to start a fire if you don't have a turf to set on fire. --NEO
|
||||
var/datum/gas_mixture/napalm = new
|
||||
napalm.toxins = volume
|
||||
napalm.toxins = volume*10
|
||||
napalm.temperature = T0C
|
||||
the_turf.assume_air(napalm)
|
||||
reaction_turf(var/turf/T, var/volume)
|
||||
src = null
|
||||
var/datum/gas_mixture/napalm = new
|
||||
napalm.toxins = volume
|
||||
napalm.toxins = volume*10
|
||||
napalm.temperature = T0C
|
||||
T.assume_air(napalm)
|
||||
return
|
||||
|
||||
@@ -348,7 +348,7 @@ datum
|
||||
|
||||
var/datum/gas_mixture/napalm = new
|
||||
|
||||
napalm.toxins = created_volume
|
||||
napalm.toxins = created_volume*10
|
||||
napalm.temperature = 400+T0C
|
||||
|
||||
target_tile.assume_air(napalm)
|
||||
|
||||
@@ -257,36 +257,42 @@
|
||||
D.sense()
|
||||
|
||||
|
||||
proc/explode()
|
||||
if(exploding) return
|
||||
exploding = 1
|
||||
proc
|
||||
explode()
|
||||
if(exploding) return
|
||||
exploding = 1
|
||||
|
||||
if(reliability)
|
||||
playsound(src.loc, 'bamf.ogg', 50, 1)
|
||||
beaker_two.reagents.maximum_volume += beaker_one.reagents.maximum_volume // make sure everything can mix
|
||||
beaker_one.reagents.update_total()
|
||||
beaker_one.reagents.trans_to(beaker_two, beaker_one.reagents.total_volume)
|
||||
if(beaker_one.reagents.total_volume) //The possible reactions didnt use up all reagents.
|
||||
var/datum/effect/effect/system/steam_spread/steam = new /datum/effect/effect/system/steam_spread()
|
||||
steam.set_up(10, 0, get_turf(src))
|
||||
steam.attach(src)
|
||||
steam.start()
|
||||
if(reliability)
|
||||
playsound(src.loc, 'bamf.ogg', 50, 1)
|
||||
beaker_two.reagents.maximum_volume += beaker_one.reagents.maximum_volume // make sure everything can mix
|
||||
beaker_one.reagents.update_total()
|
||||
beaker_one.reagents.trans_to(beaker_two, beaker_one.reagents.total_volume)
|
||||
if(beaker_one.reagents.total_volume) //The possible reactions didnt use up all reagents.
|
||||
var/datum/effect/effect/system/steam_spread/steam = new /datum/effect/effect/system/steam_spread()
|
||||
steam.set_up(10, 0, get_turf(src))
|
||||
steam.attach(src)
|
||||
steam.start()
|
||||
|
||||
for(var/atom/A in view(affected_area, src.loc))
|
||||
if( A == src ) continue
|
||||
src.reagents.reaction(A, 1, 10)
|
||||
for(var/atom/A in view(affected_area, src.loc))
|
||||
if( A == src ) continue
|
||||
src.reagents.reaction(A, 1, 10)
|
||||
|
||||
|
||||
invisibility = 100 //Why am i doing this?
|
||||
spawn(50) //To make sure all reagents can work
|
||||
del(src) //correctly before deleting the grenade.
|
||||
else
|
||||
icon_state = initial(icon_state) + "_locked"
|
||||
crit_fail = 1
|
||||
if(beaker_one)
|
||||
beaker_one.loc = get_turf(src.loc)
|
||||
if(beaker_two)
|
||||
beaker_two.loc = get_turf(src.loc)
|
||||
invisibility = 100 //Why am i doing this?
|
||||
spawn(50) //To make sure all reagents can work
|
||||
del(src) //correctly before deleting the grenade.
|
||||
else
|
||||
icon_state = initial(icon_state) + "_locked"
|
||||
crit_fail = 1
|
||||
if(beaker_one)
|
||||
beaker_one.loc = get_turf(src.loc)
|
||||
if(beaker_two)
|
||||
beaker_two.loc = get_turf(src.loc)
|
||||
|
||||
c_state(var/i = 0)
|
||||
if(i)
|
||||
icon_state = initial(icon_state) + "_armed"
|
||||
return
|
||||
|
||||
|
||||
large
|
||||
|
||||
Reference in New Issue
Block a user