diff --git a/code/WorkInProgress/SkyMarshal/wardrobes.dm b/code/WorkInProgress/SkyMarshal/wardrobes.dm index f2c94b6db27..35879744025 100755 --- a/code/WorkInProgress/SkyMarshal/wardrobes.dm +++ b/code/WorkInProgress/SkyMarshal/wardrobes.dm @@ -251,6 +251,7 @@ new /obj/item/clothing/suit/bio_suit/cmo(src) new /obj/item/clothing/head/bio_hood/general(src) new /obj/item/clothing/suit/storage/labcoat/cmo(src) + new /obj/item/clothing/suit/storage/labcoat/cmoalt(src) new /obj/item/clothing/shoes/brown(src) new /obj/item/device/radio/headset/heads/cmo(src) new /obj/item/clothing/under/rank/chief_medical_officer(src) diff --git a/code/defines/obj/supplypacks.dm b/code/defines/obj/supplypacks.dm index c7f9475f62c..05feff44c2d 100755 --- a/code/defines/obj/supplypacks.dm +++ b/code/defines/obj/supplypacks.dm @@ -483,8 +483,9 @@ "/obj/item/weapon/cell/high", "/obj/item/weapon/cell/high") cost = 15 - containertype = "/obj/structure/closet/crate" + containertype = "/obj/structure/closet/crate/secure" containername = "Electrical maintenance crate" + access = access_engine group = "Engineering" /datum/supply_packs/mechanical @@ -499,8 +500,9 @@ "/obj/item/clothing/head/helmet/welding", "/obj/item/clothing/head/helmet/hardhat") cost = 10 - containertype = "/obj/structure/closet/crate" + containertype = "/obj/structure/closet/crate/secure" containername = "Mechanical maintenance crate" + access = access_engine group = "Engineering" /datum/supply_packs/waterfueltank diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index ca3bf59ca3c..6a257acd6d6 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -84,7 +84,7 @@ datum/hSB P.back.loc = P.loc P.back.layer = initial(P.back.layer) P.back = null - P.back = new/obj/item/weapon/tank/jetpack(P) + P.back = new/obj/item/weapon/tank/jetpack/oxygen(P) P.back.layer = 20 P.internal = P.back if("hsbmetal") diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 32ff757a2ad..2b28618e3ae 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -68,9 +68,9 @@ dat += text("
Paralysis Summary %: [] ([] seconds left!)
", occupant.paralysis, round(occupant.paralysis / 4)) dat += text("Inaprovaline units: [] units
", occupant.reagents.get_reagent_amount("inaprovaline")) dat += text("Soporific: [] units
", occupant.reagents.get_reagent_amount("stoxin")) - dat += text("Dermaline: [] units
", occupant.reagents.get_reagent_amount("dermaline")) - dat += text("Bicaridine: [] units
", occupant.reagents.get_reagent_amount("bicaridine")) - dat += text("Dexalin: [] units
", occupant.reagents.get_reagent_amount("dexalin")) + dat += text("[]\tDermaline: [] units
", (occupant.reagents.get_reagent_amount("dermaline") < 30 ? "" : ""), occupant.reagents.get_reagent_amount("dermaline")) + dat += text("[]\tBicaridine: [] units
", (occupant.reagents.get_reagent_amount("bicaridine") < 30 ? "" : ""), occupant.reagents.get_reagent_amount("bicaridine")) + dat += text("[]\tDexalin: [] units
", (occupant.reagents.get_reagent_amount("dexalin") < 30 ? "" : ""), occupant.reagents.get_reagent_amount("dexalin")) dat += text("
Refresh meter readings each second
Inject Inaprovaline
Inject Soporific
Inject Dermaline
Inject Bicaridine
Inject Dexalin", src, src, src, src, src, src) else dat += "The sleeper is empty." diff --git a/code/game/objects/closets/malfunction.dm b/code/game/objects/closets/malfunction.dm index cb85b49a68b..a21311fdfea 100644 --- a/code/game/objects/closets/malfunction.dm +++ b/code/game/objects/closets/malfunction.dm @@ -1,7 +1,7 @@ /obj/structure/closet/malf/suits/New() ..() sleep(2) - new /obj/item/weapon/tank/jetpack/void_jetpack(src) + new /obj/item/weapon/tank/jetpack/void(src) new /obj/item/clothing/mask/breath(src) new /obj/item/clothing/head/helmet/space/nasavoid(src) new /obj/item/clothing/suit/space/nasavoid(src) diff --git a/code/game/objects/closets/syndicate.dm b/code/game/objects/closets/syndicate.dm index 241485e0d5e..82d1b114ba9 100644 --- a/code/game/objects/closets/syndicate.dm +++ b/code/game/objects/closets/syndicate.dm @@ -1,7 +1,7 @@ /obj/structure/closet/syndicate/personal/New() ..() sleep(2) - new /obj/item/weapon/tank/jetpack(src) + new /obj/item/weapon/tank/jetpack/oxygen(src) new /obj/item/clothing/mask/breath(src) new /obj/item/clothing/under/syndicate(src) new /obj/item/clothing/head/helmet/space/syndicate(src) diff --git a/code/game/objects/closets/wardrobe.dm b/code/game/objects/closets/wardrobe.dm index fc702dd65cb..46ea08a395c 100644 --- a/code/game/objects/closets/wardrobe.dm +++ b/code/game/objects/closets/wardrobe.dm @@ -235,6 +235,7 @@ obj/structure/closet/wardrobe/hop/New() new /obj/item/clothing/suit/bio_suit/cmo(src) new /obj/item/clothing/head/bio_hood/general(src) new /obj/item/clothing/suit/storage/labcoat/cmo(src) + new /obj/item/clothing/suit/storage/labcoat/cmoalt(src) new /obj/item/clothing/shoes/brown(src) new /obj/item/clothing/under/rank/chief_medical_officer(src) diff --git a/code/game/objects/items/clothing.dm b/code/game/objects/items/clothing.dm index 606c69229da..98a37628b5d 100644 --- a/code/game/objects/items/clothing.dm +++ b/code/game/objects/items/clothing.dm @@ -322,6 +322,12 @@ THERMAL GLASSES else if(src.icon_state == "labcoat_cmo") src.icon_state = "labcoat_cmo_open" usr << "You unbutton the labcoat." + else if(src.icon_state == "labcoat_cmoalt_open") + src.icon_state = "labcoat_cmoalt" + usr << "You button up the labcoat." + else if(src.icon_state == "labcoat_cmoalt") + src.icon_state = "labcoat_cmoalt_open" + usr << "You unbutton the labcoat." else if(src.icon_state == "labcoat_gen_open") src.icon_state = "labcoat_gen" usr << "You button up the labcoat." diff --git a/code/game/objects/tanks/jetpack.dm b/code/game/objects/tanks/jetpack.dm index 794e6a10dba..a9f0542778a 100644 --- a/code/game/objects/tanks/jetpack.dm +++ b/code/game/objects/tanks/jetpack.dm @@ -1,7 +1,6 @@ - /obj/item/weapon/tank/jetpack - name = "Jetpack (Oxygen)" - desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution." + name = "Jetpack (Empty)" + desc = "A tank of compressed gas for use as propulsion in zero-gravity areas. Use with caution." icon_state = "jetpack" w_class = 4.0 item_state = "jetpack" @@ -16,7 +15,6 @@ ..() src.ion_trail = new /datum/effect/effect/system/ion_trail_follow() src.ion_trail.set_up(src) - src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) return @@ -40,55 +38,66 @@ verb/toggle() set name = "Toggle Jetpack" set category = "Object" - src.on = !( src.on ) - if(src.type == /obj/item/weapon/tank/jetpack/void_jetpack) //Slight change added by me. i didn't make it an if-elseif because some of you might want to add other types of resprited packs :3 -Agouri - src.icon_state = text("voidjetpack[]", src.on) - else if(src.type == /obj/item/weapon/tank/jetpack/black_jetpack) - src.icon_state = text("black_jetpack[]", src.on) + on = !on + if(on) + icon_state = "[icon_state]-on" + item_state = "[item_state]-on" + ion_trail.start() else - src.icon_state = text("jetpack[]", src.on) - if(src.on) - src.ion_trail.start() - else - src.ion_trail.stop() + icon_state = initial(icon_state) + item_state = initial(item_state) + ion_trail.stop() return proc/allow_thrust(num, mob/living/user as mob) - if (!( src.on )) + if(!(src.on)) return 0 - if ((num < 0.005 || src.air_contents.total_moles() < num)) + if((num < 0.005 || src.air_contents.total_moles() < num)) src.ion_trail.stop() return 0 var/datum/gas_mixture/G = src.air_contents.remove(num) - if (G.oxygen >= 0.005) + var/allgases = G.carbon_dioxide + G.nitrogen + G.oxygen + G.toxins //fuck trace gases -Pete + if(allgases >= 0.005) return 1 - if (G.toxins > 0.001) - if (user) - var/d = G.toxins / 2 - d = min(abs(user.health + 100), d, 25) - user.take_organ_damage(0,d) - return (G.oxygen >= 0.0025 ? 0.5 : 0) - else - if (G.oxygen >= 0.0025) - return 0.5 - else - return 0 + del(G) return -/obj/item/weapon/tank/jetpack/void_jetpack +/obj/item/weapon/tank/jetpack/void name = "Void Jetpack (Oxygen)" desc = "It works well in a void." icon_state = "jetpack-void" item_state = "jetpack-void" + New() + ..() + src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + return -/obj/item/weapon/tank/jetpack/black_jetpack - name = "Black Jetpack (Oxygen)" - desc = "A black model of jetpacks." +/obj/item/weapon/tank/jetpack/oxygen + name = "Jetpack (Oxygen)" + desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution." + icon_state = "jetpack" + item_state = "jetpack" + + New() + ..() + src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) + return + +/obj/item/weapon/tank/jetpack/carbondioxide + name = "Jetpack (Carbon Dioxide)" + desc = "A tank of compressed carbon dioxide for use as propulsion in zero-gravity areas. Painted black to indicate that it should not be used as a source for internals." icon_state = "jetpack-black" item_state = "jetpack-black" + + 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) + return \ No newline at end of file diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index d72c8c60bc6..75e35f462e7 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -504,7 +504,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_if_possible(new /obj/item/clothing/under/color/grey(M), M.slot_w_uniform) M.equip_if_possible(new /obj/item/clothing/suit/space(M), M.slot_wear_suit) M.equip_if_possible(new /obj/item/clothing/head/helmet/space(M), M.slot_head) - var /obj/item/weapon/tank/jetpack/J = new /obj/item/weapon/tank/jetpack(M) + var /obj/item/weapon/tank/jetpack/oxygen/J = new /obj/item/weapon/tank/jetpack/oxygen(M) M.equip_if_possible(J, M.slot_back) J.toggle() M.equip_if_possible(new /obj/item/clothing/mask/breath(M), M.slot_wear_mask) diff --git a/code/modules/chemical/Chemistry-Reagents.dm b/code/modules/chemical/Chemistry-Reagents.dm index 4e4d505766a..a1602f1192a 100644 --- a/code/modules/chemical/Chemistry-Reagents.dm +++ b/code/modules/chemical/Chemistry-Reagents.dm @@ -447,8 +447,8 @@ datum M.slurring = 0 M.confused = 0 M.jitteriness = 0 - if(125 to INFINITY) - M:adjustToxLoss(0.1) +// if(125 to INFINITY) +// M:adjustToxLoss(0.1) ..() return @@ -876,9 +876,11 @@ datum data++ M.mutations = 0 M.disabilities = 0 - switch(data) - if(100 to INFINITY) - M:adjustToxLoss(0.2) + if(volume > REAGENTS_OVERDOSE) + M:adjustToxLoss(1) +// switch(data) +// if(100 to INFINITY) +// M:adjustToxLoss(0.2) ..() return @@ -1186,8 +1188,10 @@ datum M.bodytemperature = max(310, M.bodytemperature-20) else if(M.bodytemperature < 311) M.bodytemperature = min(310, M.bodytemperature+20) - if(data >= 100) - M:adjustToxLoss(0.2) + if(volume > REAGENTS_OVERDOSE) + M:adjustToxLoss(1) +// if(data >= 100) +// M:adjustToxLoss(0.2) //This takes like 5 units now. ..() return @@ -1206,8 +1210,10 @@ datum if(!M.confused) M.confused = 1 M.confused = max(M.confused, 20) holder.remove_reagent(src.id, 0.2) - if(data >= 50) - M:adjustToxLoss(0.2) + if(volume > REAGENTS_OVERDOSE) + M:adjustToxLoss(1) +// if(data >= 50) +// M:adjustToxLoss(0.2) ..() return @@ -1245,8 +1251,8 @@ datum M:heal_organ_damage(0,1) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 125) - M:adjustToxLoss(0.1) +// if(data >= 125) +// M:adjustToxLoss(0.1) ..() return @@ -1266,8 +1272,8 @@ datum M:heal_organ_damage(0,3) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 125) - M:adjustToxLoss(0.2) +// if(data >= 125) +// M:adjustToxLoss(0.2) ..() return @@ -1289,8 +1295,8 @@ datum holder.remove_reagent("lexorin", 2) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 125) - M:adjustToxLoss(0.2) +// if(data >= 125) +// M:adjustToxLoss(0.2) ..() return @@ -1312,8 +1318,8 @@ datum holder.remove_reagent("lexorin", 2) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 50) - M:adjustToxLoss(0.2) +// if(data >= 50) +// M:adjustToxLoss(0.2) ..() return @@ -1448,8 +1454,8 @@ datum if(prob(10)) M:emote("drool") if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 50) - M:adjustToxLoss(0.4) +// if(data >= 50) +// M:adjustToxLoss(0.4) ..() return @@ -1465,8 +1471,8 @@ datum M:radiation = max(M:radiation-3,0) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 50) - M:adjustToxLoss(0.2) +// if(data >= 50) +// M:adjustToxLoss(0.2) ..() return @@ -1490,8 +1496,8 @@ datum ..() if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 50) - M:adjustToxLoss(0.3) +// if(data >= 50) +// M:adjustToxLoss(0.3) return alkysine @@ -1526,8 +1532,8 @@ datum M:disabilities &= ~1 if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 100) - M:adjustToxLoss(0.2) +// if(data >= 100) +// M:adjustToxLoss(0.2) ..() return @@ -1547,8 +1553,8 @@ datum M:heal_organ_damage(2,0) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 125) - M:adjustToxLoss(0.2) +// if(data >= 125) +// M:adjustToxLoss(0.2) ..() return @@ -1567,8 +1573,8 @@ datum holder.remove_reagent(src.id, 0.2) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 50) - M:adjustToxLoss(0.2) +// if(data >= 50) +// M:adjustToxLoss(0.2) ..() return @@ -1621,8 +1627,8 @@ datum holder.remove_reagent(src.id, 0.1) if(volume > REAGENTS_OVERDOSE) M:adjustToxLoss(1) - if(data >= 100) - M:adjustToxLoss(0.1) +// if(data >= 100) +// M:adjustToxLoss(0.1) return carpotoxin @@ -1687,8 +1693,10 @@ datum if(!data) data = 1 data++ M:hallucination += 5 - if(data >= 100) - M:adjustToxLoss(0.1) + if(volume > REAGENTS_OVERDOSE) + M:adjustToxLoss(1) +// if(data >= 100) +// M:adjustToxLoss(0.1) ..() return diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index fc8719272e7..392c344cff3 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -15,6 +15,11 @@ icon_state = "labcoat_cmo_open" item_state = "labcoat_cmo" +/obj/item/clothing/suit/storage/labcoat/cmoalt + name = "chief medical officer's labcoat" + desc = "With command blue highlights." + icon_state = "labcoat_cmoalt_open" + /obj/item/clothing/suit/storage/labcoat/mad name = "The Mad's labcoat" desc = "It makes you look capable of konking someone on the noggin and shooting them into space." diff --git a/code/modules/mining/ores_materials_coins.dm b/code/modules/mining/ores_materials_coins.dm index a2ac8920f4a..02eca2ef5ca 100644 --- a/code/modules/mining/ores_materials_coins.dm +++ b/code/modules/mining/ores_materials_coins.dm @@ -176,7 +176,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=4" - perunit = 2000 /obj/item/stack/sheet/gold/New(loc,amount) ..() @@ -198,7 +197,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=3" - perunit = 2000 /obj/item/stack/sheet/silver/New(loc,amount) ..() @@ -213,7 +211,6 @@ w_class = 3.0 throw_range = 3 origin_tech = "materials=6" - perunit = 3750 /obj/item/stack/sheet/diamond/New(loc,amount) ..() @@ -229,7 +226,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=5" - perunit = 2000 /obj/item/stack/sheet/enruranium name = "Enriched Uranium block" @@ -240,7 +236,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=5" - perunit = 1000 /obj/item/stack/sheet/plasma name = "solid plasma" @@ -251,7 +246,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "plasmatech=2;materials=2" - perunit = 2000 /obj/item/stack/sheet/adamantine name = "adamantine" @@ -262,7 +256,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=4" - perunit = 2000 /obj/item/stack/sheet/clown name = "bananium" @@ -273,7 +266,6 @@ throw_speed = 3 throw_range = 3 origin_tech = "materials=4" - perunit = 2000 /obj/item/stack/sheet/clown/New(loc,amount) ..() diff --git a/code/modules/mob/living/silicon/pai/recruit.dm b/code/modules/mob/living/silicon/pai/recruit.dm index 330be3c4838..593a65f7686 100644 --- a/code/modules/mob/living/silicon/pai/recruit.dm +++ b/code/modules/mob/living/silicon/pai/recruit.dm @@ -116,7 +116,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates dat += "Save Personality
" dat += "Load Personality
" - M << browse(dat, "window=paiRecruit") + M << browse(dat, "window=paiRecruit;can_close=0;can_minimize=0") proc/findPAI(var/obj/item/device/paicard/p, var/mob/user) requestRecruits(user) @@ -169,7 +169,6 @@ var/datum/paiController/paiController // Global handler for pAI candidates dat += "" user << browse(dat, "window=findPai") - proc/requestRecruits(var/mob/origin) for(var/mob/dead/observer/O in world) if(jobban_isbanned(O, "pAI")) diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 603afe375f9..9fc73c98b35 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -16,7 +16,8 @@ // called by datum/sun/calc_position() as sun's angle changes - proc/set_angle(angle) + proc/set_angle(var/angle) + sun_angle = angle //set icon dir to show sun illumination dir = turn(NORTH, -angle - 22.5) // 22.5 deg bias ensures, e.g. 67.5-112.5 is EAST diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 740ba192209..ba7dd80b510 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -9,7 +9,14 @@ cell_type = "/obj/item/weapon/cell/crap" force = 10 - +/* special_check(var/mob/living/carbon/human/M) + if(ishuman(M)) + for(var/obj/item/weapon/implant/I in M) + if(I.implanted) + if(istype(I,/obj/item/weapon/implant/loyalty)) + return 1 + M << "\red The gun refuses to fire!" + return 0*/// Can be used to restrict weapon use to implants. - Erthilo /obj/item/weapon/gun/energy/taser/cyborg/load_into_chamber()//TOOD: change this over to the slowly recharge other cell if(in_chamber) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index 5d789cbaf34..36334802e8f 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -7,6 +7,7 @@ name = "conveyor belt" desc = "A conveyor belt." anchored = 1 + layer = 2.97 var/operating = 0 // 1 if running forward, -1 if backwards, 0 if off var/operable = 1 // true if can operate (no broken segments in this belt run) var/forwards // this is the default (forward) direction, set by the map dir, can be 0 diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index 20224ce0125..0e2f65afe44 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -82,6 +82,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, return_name = "Uranium" if("diamond") return_name = "Diamond" + if("adamantine") + return_name = "adamantine" if("clown") return_name = "Bananium" else @@ -367,6 +369,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, linked_lathe.uranium_amount = max(0, (linked_lathe.uranium_amount-being_built.materials[M])) if("$diamond") linked_lathe.diamond_amount = max(0, (linked_lathe.diamond_amount-being_built.materials[M])) + if("$adamantine") + linked_lathe.adamantine_amount = max(0, (linked_lathe.adamantine_amount-being_built.materials[M])) if("$clown") linked_lathe.clown_amount = max(0, (linked_lathe.clown_amount-being_built.materials[M])) else @@ -457,6 +461,9 @@ won't update every console in existence) but it's more of a hassle to do. Also, if("diamond") type = /obj/item/stack/sheet/diamond res_amount = "diamond_amount" + if("adamantine") + type = /obj/item/stack/sheet/adamantine + res_amount = "adamantine_amount" if("clown") type = /obj/item/stack/sheet/clown res_amount = "clown_amount" @@ -468,7 +475,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, linked_lathe.vars[res_amount] = max(0, (linked_lathe.vars[res_amount]-sheet.amount * sheet.perunit)) else del sheet - else if(href_list["imprinter_ejectsheet"] && linked_imprinter) //Causes the protolathe to eject a sheet of material + else if(href_list["imprinter_ejectsheet"] && linked_imprinter) //Causes the circuit imprinter to eject a sheet of material var/desired_num_sheets = text2num(href_list["imprinter_ejectsheet_amt"]) var/res_amount, type switch(href_list["imprinter_ejectsheet"]) @@ -725,6 +732,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(D.materials[M] > linked_lathe.uranium_amount) check_materials = 0 if("$diamond") if(D.materials[M] > linked_lathe.diamond_amount) check_materials = 0 + if("$adamantine") + if(D.materials[M] > linked_lathe.adamantine_amount) check_materials = 0 if("$clown") if(D.materials[M] > linked_lathe.clown_amount) check_materials = 0 else if (!linked_lathe.reagents.has_reagent(M, D.materials[M])) @@ -741,23 +750,23 @@ won't update every console in existence) but it's more of a hassle to do. Also, //Metal dat += "* [linked_lathe.m_amount] cm3 of Metal || " dat += "Eject: " - if(linked_lathe.m_amount > 3750) dat += "(1 Sheet) " - if(linked_lathe.m_amount > 18750) dat += "(5 Sheets) " - if(linked_lathe.m_amount > 3750) dat += "(Max Sheets)" + if(linked_lathe.m_amount >= 3750) dat += "(1 Sheet) " + if(linked_lathe.m_amount >= 18750) dat += "(5 Sheets) " + if(linked_lathe.m_amount >= 3750) dat += "(Max Sheets)" dat += "
" //Glass dat += "* [linked_lathe.g_amount] cm3 of Glass || " dat += "Eject: " - if(linked_lathe.g_amount > 3750) dat += "(1 Sheet) " - if(linked_lathe.g_amount > 18750) dat += "(5 Sheets) " - if(linked_lathe.g_amount > 3750) dat += "(Max Sheets)" + if(linked_lathe.g_amount >= 3750) dat += "(1 Sheet) " + if(linked_lathe.g_amount >= 18750) dat += "(5 Sheets) " + if(linked_lathe.g_amount >= 3750) dat += "(Max Sheets)" dat += "
" //Gold dat += "* [linked_lathe.gold_amount] cm3 of Gold || " dat += "Eject: " - if(linked_lathe.gold_amount > 3750) dat += "(1 Sheet) " - if(linked_lathe.gold_amount > 18750) dat += "(5 Sheets) " - if(linked_lathe.gold_amount > 3750) dat += "(Max Sheets)" + if(linked_lathe.gold_amount >= 3750) dat += "(1 Sheet) " + if(linked_lathe.gold_amount >= 18750) dat += "(5 Sheets) " + if(linked_lathe.gold_amount >= 3750) dat += "(Max Sheets)" dat += "
" //Silver dat += "* [linked_lathe.silver_amount] cm3 of Silver || " @@ -787,6 +796,13 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(linked_lathe.diamond_amount >= 18750) dat += "(5 Sheets) " if(linked_lathe.diamond_amount >= 3750) dat += "(Max Sheets)" dat += "
" + //Adamantine - Is this even possible to get? + dat += "* [linked_lathe.adamantine_amount] cm3 of Adamantine || " + dat += "Eject: " + if(linked_lathe.adamantine_amount >= 3750) dat += "(1 Sheet) " + if(linked_lathe.adamantine_amount >= 18750) dat += "(5 Sheets) " + if(linked_lathe.adamantine_amount >= 3750) dat += "(Max Sheets)" + dat += "
" //Bananium dat += "* [linked_lathe.clown_amount] cm3 of Bananium || " dat += "Eject: " @@ -854,23 +870,23 @@ won't update every console in existence) but it's more of a hassle to do. Also, //Glass dat += "* [linked_imprinter.g_amount] cm3 of Glass || " dat += "Eject: " - if(linked_imprinter.g_amount > 3750) dat += "(1 Sheet) " - if(linked_imprinter.g_amount > 18750) dat += "(5 Sheets) " - if(linked_imprinter.g_amount > 3750) dat += "(Max Sheets)" + if(linked_imprinter.g_amount >= 3750) dat += "(1 Sheet) " + if(linked_imprinter.g_amount >= 18750) dat += "(5 Sheets) " + if(linked_imprinter.g_amount >= 3750) dat += "(Max Sheets)" dat += "
" //Gold dat += "* [linked_imprinter.gold_amount] cm3 of Gold || " dat += "Eject: " - if(linked_imprinter.gold_amount > 3750) dat += "(1 Sheet) " - if(linked_imprinter.gold_amount > 18750) dat += "(5 Sheets) " - if(linked_imprinter.gold_amount > 3750) dat += "(Max Sheets)" + if(linked_imprinter.gold_amount >= 3750) dat += "(1 Sheet) " + if(linked_imprinter.gold_amount >= 18750) dat += "(5 Sheets) " + if(linked_imprinter.gold_amount >= 3750) dat += "(Max Sheets)" dat += "
" //Diamond dat += "* [linked_imprinter.diamond_amount] cm3 of Diamond || " dat += "Eject: " - if(linked_imprinter.diamond_amount > 3750) dat += "(1 Sheet) " - if(linked_imprinter.diamond_amount > 18750) dat += "(5 Sheets) " - if(linked_imprinter.diamond_amount > 3750) dat += "(Max Sheets)" + if(linked_imprinter.diamond_amount >= 3750) dat += "(1 Sheet) " + if(linked_imprinter.diamond_amount >= 18750) dat += "(5 Sheets) " + if(linked_imprinter.diamond_amount >= 3750) dat += "(Max Sheets)" user << browse("Research and Development Console
[dat]", "window=rdconsole;size=575x400") onclose(user, "rdconsole") \ No newline at end of file diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 6d7dcd15a95..b9b87afa56d 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 37c49b10e7a..28f4a725f83 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index e42238c3792..09d18f111af 100755 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/tank.dmi b/icons/obj/tank.dmi index e3841ad0764..97b7d2f26f3 100644 Binary files a/icons/obj/tank.dmi and b/icons/obj/tank.dmi differ diff --git a/maps/tgstation.2.0.8.dmm b/maps/tgstation.2.0.8.dmm index bbad3941923..a46a044c264 100755 --- a/maps/tgstation.2.0.8.dmm +++ b/maps/tgstation.2.0.8.dmm @@ -1032,8 +1032,8 @@ "atR" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "atS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = -1},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "atT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/maintenance/fpmaint) -"atU" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/ai_monitored/storage/eva) -"atV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/ai_monitored/storage/eva) +"atU" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/oxygen,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/ai_monitored/storage/eva) +"atV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/oxygen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/ai_monitored/storage/eva) "atW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor,/area/ai_monitored/storage/eva) "atX" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/ai_monitored/storage/eva) "atY" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/ai_monitored/storage/eva) @@ -2675,7 +2675,7 @@ "aZw" = (/obj/structure/stool/chair{dir = 1},/obj/effect/landmark/start{name = "Captain"},/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) "aZx" = (/obj/item/weapon/paper{info = "Our scientists stole your suit and shoved it in their destructive analyzer. We replaced it with one that isn't space capable.

--Central Command"; name = "Important Memo"},/obj/item/weapon/book/manual/security_space_law,/obj/structure/table/woodentable,/obj/structure/disposalpipe/segment{dir = 1},/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) "aZy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/obj/machinery/keycard_auth{pixel_x = 25},/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) -"aZz" = (/obj/machinery/light/small{dir = 8},/obj/machinery/turret{desc = "aicore"; dir = 4},/turf/simulated/floor/grid,/area/turret_protected/ai) +"aZz" = (/obj/machinery/light/small{dir = 8},/obj/machinery/turret{desc = ""; dir = 4; id = "aicore"},/turf/simulated/floor/grid,/area/turret_protected/ai) "aZA" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "aZB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/obj/structure/cable{tag = "Streight"; icon_state = "4-8"; pixel_x = 1; d1 = 4; d2 = 8},/turf/simulated/floor/grid,/area/turret_protected/ai) "aZC" = (/obj/machinery/ai_slipper,/obj/structure/cable{tag = "Streight"; icon_state = "4-8"; pixel_x = 1; d1 = 4; d2 = 8},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/obj/effect/decal/warning_stripes{tag = "icon-U-S"; icon_state = "U-S"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) @@ -2755,7 +2755,7 @@ "baY" = (/obj/structure/table/reinforced,/obj/item/weapon/packageWrap,/obj/item/device/destTagger{pixel_x = 4; pixel_y = 3},/obj/machinery/door/window/eastleft{name = "Mail Office"; req_access_txt = "0"},/turf/simulated/floor,/area/quartermaster/sorting) "baZ" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/central) "bba" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/central) -"bbb" = (/obj/structure/rack,/obj/item/weapon/tank/jetpack,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/capspace,/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) +"bbb" = (/obj/structure/rack,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/capspace,/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) "bbc" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) "bbd" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) "bbe" = (/obj/machinery/light/lamp{pixel_x = 4; pixel_y = 1},/obj/machinery/light,/obj/structure/table/woodentable,/obj/structure/disposalpipe/segment{dir = 1},/turf/simulated/floor{icon_state = "wood"},/area/crew_quarters/captain) @@ -2860,7 +2860,7 @@ "bcZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/captain) "bda" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/captain) "bdb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/turret_protected/ai) -"bdc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/turretid{id = "upload"; pixel_x = -24; pixel_y = -7},/obj/machinery/turretid{id = "aicore"; pixel_x = -24; pixel_y = 7},/obj/effect/decal/warning_stripes{tag = "icon-E-corner"; icon_state = "E-corner"},/obj/effect/decal/warning_stripes{tag = "icon-W-corner"; icon_state = "W-corner"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) +"bdc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/turretid{id = "upload"; pixel_x = -24; pixel_y = -7},/obj/machinery/turretid{id = "aicore"; pixel_x = -24; pixel_y = 7},/obj/effect/decal/warning_stripes{tag = "icon-E-corner"; icon_state = "E-corner"},/obj/effect/decal/warning_stripes{tag = "icon-W-corner"; icon_state = "W-corner"},/obj/machinery/camera{c_tag = "AI Core Tunnel"; dir = 8; network = "Command"},/turf/simulated/floor{icon_state = "dark"},/area/turret_protected/ai) "bdd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/crew_quarters/heads) "bde" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/disposalpipe/sortjunction{backsort = 1; backType = list("Captain"); dir = 4; icon_state = "pipe-j2s"; sortType = list("HoP Office")},/turf/simulated/wall/r_wall,/area/crew_quarters/heads) "bdf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = null; req_access_txt = "19"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor,/area/crew_quarters/heads) @@ -6120,7 +6120,7 @@ "cnJ" = (/obj/machinery/optable/portable,/obj/machinery/camera{c_tag = "ERT Armoury Left"; dir = 4; network = "CREED"},/obj/item/weapon/storage/briefcase/surgery,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/centcom/specops) "cnK" = (/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/centcom/specops) "cnL" = (/obj/machinery/optable/portable,/obj/item/weapon/storage/briefcase/surgery,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/centcom/specops) -"cnM" = (/obj/structure/table/reinforced,/obj/item/weapon/tank/jetpack/black_jetpack,/obj/item/weapon/rcd/industrial,/obj/item/weapon/rcd_ammo/large,/turf/unsimulated/floor{tag = "icon-redgreenfull"; icon_state = "redgreenfull"},/area/centcom/specops) +"cnM" = (/obj/structure/table/reinforced,/obj/item/weapon/tank/jetpack/carbondioxide,/obj/item/weapon/rcd/industrial,/obj/item/weapon/rcd_ammo/large,/turf/unsimulated/floor{tag = "icon-redgreenfull"; icon_state = "redgreenfull"},/area/centcom/specops) "cnN" = (/turf/unsimulated/floor{tag = "icon-redgreenfull"; icon_state = "redgreenfull"},/area/centcom/specops) "cnO" = (/obj/machinery/camera{c_tag = "ERT Armoury Right"; dir = 4; network = "CREED"},/turf/unsimulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/centcom/specops) "cnP" = (/turf/unsimulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/centcom/specops)