From 3c4369823fd4e65c79ca7fa091c577e8b40e6054 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Mon, 14 Sep 2015 13:41:54 +0300 Subject: [PATCH 1/2] Fixes for jetpacks Jetpacks now GC; CO2 jetpacks no longer pointlessly create a datum that is already created in the parent; CO2 jetpacks can be properly examined; removes text() and adds spans and \the. --- code/game/objects/items/weapons/tanks/jetpack.dm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm index 67b5f007a5..75b2c8ceea 100644 --- a/code/game/objects/items/weapons/tanks/jetpack.dm +++ b/code/game/objects/items/weapons/tanks/jetpack.dm @@ -18,12 +18,16 @@ src.ion_trail = new /datum/effect/effect/system/ion_trail_follow() src.ion_trail.set_up(src) +/obj/item/weapon/tank/jetpack/Destroy() + qdel(ion_trail) + ..() + /obj/item/weapon/tank/jetpack/examine(mob/user) if(!..(user, 0)) return if(air_contents.gas["oxygen"] < 10) - user << text("\red The meter on the [src.name] indicates you are almost out of air!") + user << "The meter on \the [src] indicates you are almost out of oxygen!" playsound(user, 'sound/effects/alert.ogg', 50, 1) /obj/item/weapon/tank/jetpack/verb/toggle_rockets() @@ -101,18 +105,15 @@ /obj/item/weapon/tank/jetpack/carbondioxide/New() ..() - src.ion_trail = new /datum/effect/effect/system/ion_trail_follow() - src.ion_trail.set_up(src) - //src.air_contents.carbon_dioxide = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) air_contents.adjust_gas("carbon_dioxide", (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)) return /obj/item/weapon/tank/jetpack/carbondioxide/examine(mob/user) - if(!..(0)) + if(!..(user, 0)) return if(air_contents.gas["carbon_dioxide"] < 10) - user << text("\red The meter on the [src.name] indicates you are almost out of carbon dioxide!") + user << "The meter on \the [src] indicates you are almost out of carbon dioxide!" playsound(user, 'sound/effects/alert.ogg', 50, 1) return From baebd62c2607e40bcfba7a4ebc562c5ce8c8df27 Mon Sep 17 00:00:00 2001 From: Kelenius Date: Tue, 15 Sep 2015 10:14:07 +0300 Subject: [PATCH 2/2] Fixes tank examine() --- .../objects/items/weapons/tanks/jetpack.dm | 17 ++----- .../game/objects/items/weapons/tanks/tanks.dm | 44 ++++++++----------- 2 files changed, 21 insertions(+), 40 deletions(-) diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm index 75b2c8ceea..ce40e5947e 100644 --- a/code/game/objects/items/weapons/tanks/jetpack.dm +++ b/code/game/objects/items/weapons/tanks/jetpack.dm @@ -23,11 +23,9 @@ ..() /obj/item/weapon/tank/jetpack/examine(mob/user) - if(!..(user, 0)) - return - - if(air_contents.gas["oxygen"] < 10) - user << "The meter on \the [src] indicates you are almost out of oxygen!" + . = ..() + if(air_contents.total_moles < 5) + user << "The meter on \the [src] indicates you are almost out of gas!" playsound(user, 'sound/effects/alert.ogg', 50, 1) /obj/item/weapon/tank/jetpack/verb/toggle_rockets() @@ -108,15 +106,6 @@ air_contents.adjust_gas("carbon_dioxide", (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)) return -/obj/item/weapon/tank/jetpack/carbondioxide/examine(mob/user) - if(!..(user, 0)) - return - - if(air_contents.gas["carbon_dioxide"] < 10) - user << "The meter on \the [src] indicates you are almost out of carbon dioxide!" - playsound(user, 'sound/effects/alert.ogg', 50, 1) - return - /obj/item/weapon/tank/jetpack/rig name = "jetpack" var/obj/item/weapon/rig/holder diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index 59627bad11..68e4ad84dd 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -40,32 +40,24 @@ ..() /obj/item/weapon/tank/examine(mob/user) - var/obj/icon = src - if (istype(src.loc, /obj/item/assembly)) - icon = src.loc - if (!in_range(src, user)) - if (icon == src) user << "\blue It's \a \icon[icon][src]! If you want any more information you'll need to get closer." - return - - var/celsius_temperature = src.air_contents.temperature-T0C - var/descriptive - - if (celsius_temperature < 20) - descriptive = "cold" - else if (celsius_temperature < 40) - descriptive = "room temperature" - else if (celsius_temperature < 80) - descriptive = "lukewarm" - else if (celsius_temperature < 100) - descriptive = "warm" - else if (celsius_temperature < 300) - descriptive = "hot" - else - descriptive = "furiously hot" - - user << "\blue \The \icon[icon][src] feels [descriptive]" - - return + . = ..(user, 0) + if(.) + var/celsius_temperature = air_contents.temperature - T0C + var/descriptive + switch(celsius_temperature) + if(300 to INFINITY) + descriptive = "furiously hot" + if(100 to 300) + descriptive = "hot" + if(80 to 100) + descriptive = "warm" + if(40 to 80) + descriptive = "lukewarm" + if(20 to 40) + descriptive = "room temperature" + else + descriptive = "cold" + user << "\The [src] feels [descriptive]." /obj/item/weapon/tank/blob_act() if(prob(50))