Atmos analyser now fit on belt.

Emergency oxygentank's volume was reduced, initial pressure was increased, distribution pressure was set to 21.
Internals icon was fixed.
Also, now you can activate weared internals by clicking on icon.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@763 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
rastaf.zero@gmail.com
2011-01-04 00:35:40 +00:00
parent d2bb7d63ba
commit a233cf5f25
6 changed files with 62 additions and 22 deletions

View File

@@ -133,7 +133,7 @@
icon_state = "atmos" icon_state = "atmos"
item_state = "analyzer" item_state = "analyzer"
w_class = 2.0 w_class = 2.0
flags = FPRINT | TABLEPASS| CONDUCT flags = FPRINT | TABLEPASS| CONDUCT | ONBELT
throwforce = 5 throwforce = 5
throw_speed = 4 throw_speed = 4
throw_range = 20 throw_range = 20
@@ -1039,6 +1039,7 @@ Total SMES charging rate should not exceed total power generation rate, or an ov
throwforce = 10.0 throwforce = 10.0
throw_speed = 1 throw_speed = 1
throw_range = 4 throw_range = 4
var/volume = 70
/obj/item/weapon/tank/anesthetic /obj/item/weapon/tank/anesthetic
name = "Gas Tank (Sleeping Agent)" name = "Gas Tank (Sleeping Agent)"
@@ -1051,10 +1052,13 @@ Total SMES charging rate should not exceed total power generation rate, or an ov
w_class = 4.0 w_class = 4.0
item_state = "jetpack" item_state = "jetpack"
var/datum/effects/system/ion_trail_follow/ion_trail var/datum/effects/system/ion_trail_follow/ion_trail
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
//volume = 140 //jetpack sould be larger, but then it will never deplete -rastaf0
/obj/item/weapon/tank/oxygen /obj/item/weapon/tank/oxygen
name = "Gas Tank (Oxygen)" name = "Gas Tank (Oxygen)"
icon_state = "oxygen" icon_state = "oxygen"
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
/obj/item/weapon/tank/air /obj/item/weapon/tank/air
name = "Gas Tank (Air Mix)" name = "Gas Tank (Air Mix)"
@@ -1070,6 +1074,8 @@ Total SMES charging rate should not exceed total power generation rate, or an ov
flags = FPRINT | TABLEPASS | ONBELT | CONDUCT flags = FPRINT | TABLEPASS | ONBELT | CONDUCT
w_class = 2.5 w_class = 2.5
force = 4.0 force = 4.0
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
volume = 10 //yeah, SO tiny
/obj/item/weapon/teleportation_scroll /obj/item/weapon/teleportation_scroll
name = "Teleportation Scroll" name = "Teleportation Scroll"

View File

@@ -10,7 +10,7 @@
var/release_pressure = ONE_ATMOSPHERE var/release_pressure = ONE_ATMOSPHERE
var/color = "yellow" var/color = "yellow"
var/labeled = 0 var/is_labeled = 0
var/filled = 0.5 var/filled = 0.5
pressure_resistance = 7*ONE_ATMOSPHERE pressure_resistance = 7*ONE_ATMOSPHERE
var/temperature_resistance = 1000 + T0C var/temperature_resistance = 1000 + T0C
@@ -20,32 +20,32 @@
name = "Canister: \[N2O\]" name = "Canister: \[N2O\]"
icon_state = "redws" icon_state = "redws"
color = "redws" color = "redws"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/nitrogen /obj/machinery/portable_atmospherics/canister/nitrogen
name = "Canister: \[N2\]" name = "Canister: \[N2\]"
icon_state = "red" icon_state = "red"
color = "red" color = "red"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/oxygen /obj/machinery/portable_atmospherics/canister/oxygen
name = "Canister: \[O2\]" name = "Canister: \[O2\]"
icon_state = "blue" icon_state = "blue"
color = "blue" color = "blue"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/toxins /obj/machinery/portable_atmospherics/canister/toxins
name = "Canister \[Toxin (Bio)\]" name = "Canister \[Toxin (Bio)\]"
icon_state = "orange" icon_state = "orange"
color = "orange" color = "orange"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/carbon_dioxide /obj/machinery/portable_atmospherics/canister/carbon_dioxide
name = "Canister \[CO2\]" name = "Canister \[CO2\]"
icon_state = "black" icon_state = "black"
color = "black" color = "black"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/air /obj/machinery/portable_atmospherics/canister/air
name = "Canister \[Air\]" name = "Canister \[Air\]"
icon_state = "grey" icon_state = "grey"
color = "grey" color = "grey"
labeled = 1 is_labeled = 1
/obj/machinery/portable_atmospherics/canister/update_icon() /obj/machinery/portable_atmospherics/canister/update_icon()
src.overlays = 0 src.overlays = 0
@@ -167,7 +167,7 @@
holding_text = {"<BR><B>Tank Pressure</B>: [holding.air_contents.return_pressure()] KPa<BR> holding_text = {"<BR><B>Tank Pressure</B>: [holding.air_contents.return_pressure()] KPa<BR>
<A href='?src=\ref[src];remove_tank=1'>Remove Tank</A><BR> <A href='?src=\ref[src];remove_tank=1'>Remove Tank</A><BR>
"} "}
var/output_text = {"<TT><B>[name]</B>[!labeled?" <A href='?src=\ref[src];relabel=1'><small>relabel</small></a>":""]<BR> var/output_text = {"<TT><B>[name]</B>[!is_labeled?" <A href='?src=\ref[src];relabel=1'><small>relabel</small></a>":""]<BR>
Pressure: [air_contents.return_pressure()] KPa<BR> Pressure: [air_contents.return_pressure()] KPa<BR>
Port Status: [(connected_port)?("Connected"):("Disconnected")] Port Status: [(connected_port)?("Connected"):("Disconnected")]
[holding_text] [holding_text]
@@ -205,7 +205,7 @@ Release Pressure: <A href='?src=\ref[src];pressure_adj=-1000'>-</A> <A href='?sr
release_pressure = max(ONE_ATMOSPHERE/10, release_pressure+diff) release_pressure = max(ONE_ATMOSPHERE/10, release_pressure+diff)
if (href_list["relabel"]) if (href_list["relabel"])
if (!labeled) if (!is_labeled)
var/list/colors = list(\ var/list/colors = list(\
"\[N2O\]" = "redws", \ "\[N2O\]" = "redws", \
"\[N2\]" = "red", \ "\[N2\]" = "red", \
@@ -220,7 +220,7 @@ Release Pressure: <A href='?src=\ref[src];pressure_adj=-1000'>-</A> <A href='?sr
src.color = colors[label] src.color = colors[label]
src.icon_state = colors[label] src.icon_state = colors[label]
src.name = "Canister: [label]" src.name = "Canister: [label]"
labeled = 1 is_labeled = 1
src.updateUsrDialog() src.updateUsrDialog()
src.add_fingerprint(usr) src.add_fingerprint(usr)
update_icon() update_icon()

View File

@@ -46,10 +46,14 @@
var/mob/living/carbon/location = loc var/mob/living/carbon/location = loc
if(location.internal == src) if(location.internal == src)
usr << "\blue You close the tank release valve." usr << "\blue You close the tank release valve."
if (location.internals)
location.internals.icon_state = "internal0"
else else
if(location.wear_mask && (location.wear_mask.flags & MASKINTERNALS)) if(location.wear_mask && (location.wear_mask.flags & MASKINTERNALS))
location.internal = src location.internal = src
usr << "\blue You open the tank valve." usr << "\blue You open the tank valve."
if (location.internals)
location.internals.icon_state = "internal1"
else else
usr << "\blue The valve immediately closes." usr << "\blue The valve immediately closes."
@@ -201,7 +205,7 @@
..() ..()
src.air_contents = new /datum/gas_mixture() src.air_contents = new /datum/gas_mixture()
src.air_contents.volume = 70 //liters src.air_contents.volume = volume //liters
src.air_contents.temperature = T20C src.air_contents.temperature = T20C
processing_items.Add(src) processing_items.Add(src)
@@ -247,27 +251,27 @@
/obj/item/weapon/tank/air/New() /obj/item/weapon/tank/air/New()
..() ..()
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD
src.air_contents.nitrogen = (6*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD src.air_contents.nitrogen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD
return return
/obj/item/weapon/tank/oxygen/New() /obj/item/weapon/tank/oxygen/New()
..() ..()
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
return return
/obj/item/weapon/tank/emergency_oxygen/New() /obj/item/weapon/tank/emergency_oxygen/New()
..() ..()
src.air_contents.oxygen = (1*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) src.air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
return return
/obj/item/weapon/tank/jetpack/New() /obj/item/weapon/tank/jetpack/New()
..() ..()
src.ion_trail = new /datum/effects/system/ion_trail_follow() src.ion_trail = new /datum/effects/system/ion_trail_follow()
src.ion_trail.set_up(src) src.ion_trail.set_up(src)
src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
return return
/obj/item/weapon/tank/jetpack/verb/toggle() /obj/item/weapon/tank/jetpack/verb/toggle()

View File

@@ -2448,17 +2448,24 @@
if (src.target.internal) if (src.target.internal)
src.target.internal.add_fingerprint(src.source) src.target.internal.add_fingerprint(src.source)
src.target.internal = null src.target.internal = null
if (src.target.internals)
src.target.internals.icon_state = "internal0"
else else
if (src.target.internal)
src.target.internal = null
if (!( istype(src.target.wear_mask, /obj/item/clothing/mask) )) if (!( istype(src.target.wear_mask, /obj/item/clothing/mask) ))
return return
else else
if (istype(src.target.back, /obj/item/weapon/tank)) if (istype(src.target.back, /obj/item/weapon/tank))
src.target.internal = src.target.back src.target.internal = src.target.back
else if (istype(src.target.s_store, /obj/item/weapon/tank))
src.target.internal = src.target.s_store
else if (istype(src.target.belt, /obj/item/weapon/tank))
src.target.internal = src.target.belt
if (src.target.internal)
for(var/mob/M in viewers(src.target, 1)) for(var/mob/M in viewers(src.target, 1))
M.show_message(text("[] is now running on internals.", src.target), 1) M.show_message(text("[] is now running on internals.", src.target), 1)
src.target.internal.add_fingerprint(src.source) src.target.internal.add_fingerprint(src.source)
if (src.target.internals)
src.target.internals.icon_state = "internal1"
else else
if(src.source) if(src.source)
src.source.update_clothing() src.source.update_clothing()

View File

@@ -250,8 +250,8 @@
if (!wear_mask || !(wear_mask.flags & MASKINTERNALS) ) if (!wear_mask || !(wear_mask.flags & MASKINTERNALS) )
internal = null internal = null
if(internal) if(internal)
if (src.internals) //if (src.internals) //should be unnecessary, uncomment if it isn't. -raftaf0
src.internals.icon_state = "internal1" // src.internals.icon_state = "internal1"
return internal.remove_air_volume(volume_needed) return internal.remove_air_volume(volume_needed)
else else
if (src.internals) if (src.internals)

View File

@@ -803,7 +803,30 @@
usr.machine = null usr.machine = null
if("internal") if("internal")
if ((!( usr.stat ) && usr.canmove && !( usr.restrained() ))) if ((!( usr.stat ) && usr.canmove && !( usr.restrained() )))
usr.internal = null if (usr.internal)
usr.internal = null
if (usr.internals)
usr.internals.icon_state = "internal0"
else
if (!( istype(usr.wear_mask, /obj/item/clothing/mask) ))
return
else
if (istype(usr.back, /obj/item/weapon/tank))
usr.internal = usr.back
else if (ishuman(usr) && istype(usr:s_store, /obj/item/weapon/tank))
usr.internal = usr:s_store
else if (ishuman(usr) && istype(usr:belt, /obj/item/weapon/tank))
usr.internal = usr:belt
else if (istype(usr.l_hand, /obj/item/weapon/tank))
usr.internal = usr.l_hand
else if (istype(usr.r_hand, /obj/item/weapon/tank))
usr.internal = usr.r_hand
if (usr.internal)
//for(var/mob/M in viewers(usr, 1))
// M.show_message(text("[] is now running on internals.", usr), 1)
usr << "You are now running on internals."
if (usr.internals)
usr.internals.icon_state = "internal1"
if("pull") if("pull")
usr.pulling = null usr.pulling = null
if("sleep") if("sleep")