diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index 9c783dc19e..4fc1fd2851 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -1,13 +1,11 @@ /* Telekinesis - This needs more thinking out, but I might as well. */ var/const/tk_maxrange = 15 /* Telekinetic attack: - By default, emulate the user's unarmed attack */ /atom/proc/attack_tk(mob/user) @@ -19,7 +17,6 @@ var/const/tk_maxrange = 15 /* This is similar to item attack_self, but applies to anything that you can grab with a telekinetic grab. - It is used for manipulating things at range, for example, opening and closing closets. There are not a lot of defaults at this time, add more where appropriate. */ @@ -57,7 +54,6 @@ var/const/tk_maxrange = 15 /* TK Grab Item (the workhorse of old TK) - * If you have not grabbed something, do a normal tk attack * If you have something, throw it at the target. If it is already adjacent, do a normal attackby() * If you click what you are holding, or attack_self(), do an attack_self_tk() on it. @@ -121,15 +117,16 @@ var/const/tk_maxrange = 15 focus_object(target, user) return - if(focus.anchored) + if(focus.anchored || !isturf(focus.loc)) qdel(src) + return if(target == focus) target.attack_self_tk(user) return // todo: something like attack_self not laden with assumptions inherent to attack_self - if(!istype(target, /turf) && istype(focus,/obj/item) && target.Adjacent(focus)) + if(!isturf(target) && istype(focus,/obj/item) && target.Adjacent(focus)) var/obj/item/I = focus var/resolved = target.attackby(I, user, params) if(!resolved && target && I) @@ -139,7 +136,6 @@ var/const/tk_maxrange = 15 focus.throw_at(target, 10, 1,user) last_throw = world.time user.changeNext_move(CLICK_CD_MELEE) - return /proc/tkMaxRangeCheck(mob/user, atom/target, atom/focus) var/d = get_dist(user, target) @@ -155,7 +151,7 @@ var/const/tk_maxrange = 15 /obj/item/tk_grab/proc/focus_object(obj/target, mob/living/user) - if(!istype(target,/obj)) + if(!isobj(target)) return//Cant throw non objects atm might let it do mobs later if(target.anchored || !isturf(target.loc)) qdel(src) @@ -217,5 +213,4 @@ var/const/tk_maxrange = 15 var/X = source:x var/Y = source:y var/Z = source:z - -*/ +*/ \ No newline at end of file diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index fdc6d98093..7df6df6336 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -96,7 +96,7 @@ occupant_status += "" occupant_status += "
Health:
[viable_occupant.health] %
" occupant_status += "
Radiation Level:
[viable_occupant.radiation] %
" - var/rejuvenators = viable_occupant.reagents.get_reagent_amount("epinephrine") + var/rejuvenators = viable_occupant.reagents.get_reagent_amount("potass_iodide") occupant_status += "
Rejuvenators:
[rejuvenators] units
" occupant_status += "
Unique Enzymes :
[viable_occupant.dna.unique_enzymes]
" occupant_status += "
Last Operation:
[last_change ? last_change : "----"]
" @@ -350,9 +350,9 @@ current_screen = href_list["text"] if("rejuv") if(viable_occupant && viable_occupant.reagents) - var/epinephrine_amount = viable_occupant.reagents.get_reagent_amount("epinephrine") - var/can_add = max(min(REJUVENATORS_MAX - epinephrine_amount, REJUVENATORS_INJECT), 0) - viable_occupant.reagents.add_reagent("epinephrine", can_add) + var/potassiodide_amount = viable_occupant.reagents.get_reagent_amount("potass_iodide") + var/can_add = max(min(REJUVENATORS_MAX - potassiodide_amount, REJUVENATORS_INJECT), 0) + viable_occupant.reagents.add_reagent("potass_iodide", can_add) if("setbufferlabel") var/text = sanitize(input(usr, "Input a new label:", "Input an Text", null) as text|null) if(num && text) diff --git a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm index fc902f18f7..3763a1ff9b 100644 --- a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm @@ -27,13 +27,17 @@ if ("small") new /obj/item/weapon/tank/internals/emergency_oxygen(src) new /obj/item/weapon/tank/internals/emergency_oxygen(src) + new /obj/item/clothing/mask/breath(src) + new /obj/item/clothing/mask/breath(src) if ("aid") new /obj/item/weapon/tank/internals/emergency_oxygen(src) new /obj/item/weapon/storage/firstaid/o2(src) + new /obj/item/clothing/mask/breath(src) if ("tank") new /obj/item/weapon/tank/internals/air(src) + new /obj/item/clothing/mask/breath(src) if ("both") new /obj/item/weapon/tank/internals/emergency_oxygen(src) diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 92dcdaeec3..3d687ddbf8 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -4,6 +4,7 @@ name = "necropolis chest" desc = "It's watching you closely." icon_state = "necrocrate" + burn_state = LAVA_PROOF /obj/structure/closet/crate/necropolis/tendril desc = "It's watching you suspiciously." diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm index 39237b0635..0ac4035009 100644 --- a/code/modules/mob/living/silicon/ai/examine.dm +++ b/code/modules/mob/living/silicon/ai/examine.dm @@ -19,4 +19,6 @@ msg += "[src]Core.exe has stopped responding! NTOS is searching for a solution to the problem...\n" msg += "*---------*" - user << msg \ No newline at end of file + user << msg + + ..() \ No newline at end of file diff --git a/code/modules/mob/living/silicon/examine.dm b/code/modules/mob/living/silicon/examine.dm new file mode 100644 index 0000000000..af853f89bb --- /dev/null +++ b/code/modules/mob/living/silicon/examine.dm @@ -0,0 +1,4 @@ +/mob/living/silicon/examine(mob/user) + if(laws && isobserver(user)) + user << "[src] has the following laws:" + laws.show_laws(user) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index 7cfe6ac505..46b0fd7c98 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -47,3 +47,5 @@ msg += "*---------*" user << msg + + ..() diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 8da685439b..11f44dbc52 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -58,6 +58,7 @@ /datum/reagent/toxin/plasma/on_mob_life(mob/living/M) if(holder.has_reagent("epinephrine")) holder.remove_reagent("epinephrine", 2*REM) + M.apply_effect(0.5*REM/M.metabolism_efficiency,IRRADIATE,0) if(iscarbon(M)) var/mob/living/carbon/C = M C.adjustPlasma(20)