diff --git a/code/datums/spell.dm b/code/datums/spell.dm
index 86396e8dffc..a450da7fae0 100644
--- a/code/datums/spell.dm
+++ b/code/datums/spell.dm
@@ -41,46 +41,46 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
var/centcomm_cancast = 1 //Whether or not the spell should be allowed on z2
/obj/effect/proc_holder/spell/proc/cast_check(skipcharge = 0,mob/user = usr) //checks if the spell can be cast based on its settings; skipcharge is used when an additional cast_check is called inside the spell
-
- if(!(src in usr.spell_list))
- usr << "\red You shouldn't have this spell! Something's wrong."
+ if(!ishuman(user))
return 0
- if(usr.z == 2 && !centcomm_cancast) //Certain spells are not allowed on the centcomm zlevel
+ var/mob/living/carbon/human/H = user
+
+ if(!(src in H.spell_list))
+ H << "You shouldn't have this spell! Something's wrong."
+ return 0
+
+ if(H.z == 2 && !centcomm_cancast) //Certain spells are not allowed on the centcomm zlevel
return 0
if(!skipcharge)
switch(charge_type)
if("recharge")
if(charge_counter < charge_max)
- usr << "[name] is still recharging."
+ H << "[name] is still recharging."
return 0
if("charges")
if(!charge_counter)
- usr << "[name] has no charges left."
+ H << "[name] has no charges left."
return 0
- if(usr.stat && !stat_allowed)
- usr << "Not when you're incapacitated."
+ if(H.stat && !stat_allowed)
+ H << "Not when you're incapacitated."
return 0
- if(ishuman(usr) || ismonkey(usr))
- if(istype(usr.wear_mask, /obj/item/clothing/mask/muzzle))
- usr << "Mmmf mrrfff!"
- return 0
+ if(istype(H.wear_mask, /obj/item/clothing/mask/muzzle))
+ user << "You can't get the words out!"
+ return 0
if(clothes_req) //clothes check
- if(!istype(usr, /mob/living/carbon/human))
- usr << "You aren't a human, Why are you trying to cast a human spell, silly non-human? Casting human spells is for humans."
+ if(!istype(H.wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(H.wear_suit, /obj/item/clothing/suit/space/rig/wizard))
+ H << "I don't feel strong enough without my robe."
return 0
- if(!istype(usr:wear_suit, /obj/item/clothing/suit/wizrobe) && !istype(user:wear_suit, /obj/item/clothing/suit/space/rig/wizard))
- usr << "I don't feel strong enough without my robe."
+ if(!istype(H.shoes, /obj/item/clothing/shoes/sandal))
+ H << "I don't feel strong enough without my sandals."
return 0
- if(!istype(usr:shoes, /obj/item/clothing/shoes/sandal))
- usr << "I don't feel strong enough without my sandals."
- return 0
- if(!istype(usr:head, /obj/item/clothing/head/wizard) && !istype(user:head, /obj/item/clothing/head/helmet/space/rig/wizard))
- usr << "I don't feel strong enough without my hat."
+ if(!istype(H.head, /obj/item/clothing/head/wizard) && !istype(H.head, /obj/item/clothing/head/helmet/space/rig/wizard))
+ H << "I don't feel strong enough without my hat."
return 0
if(!skipcharge)
@@ -95,22 +95,17 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
return 1
/obj/effect/proc_holder/spell/proc/invocation(mob/user = usr) //spelling the spell out and setting it on recharge/reducing charges amount
-
switch(invocation_type)
if("shout")
if(prob(50))//Auto-mute? Fuck that noise
- usr.say(invocation)
+ user.say(invocation)
else
- usr.say(replacetext(invocation," ","`"))
- if(usr.gender==MALE)
- playsound(usr.loc, pick('sound/misc/null.ogg','sound/misc/null.ogg'), 100, 1)
- else
- playsound(usr.loc, pick('sound/misc/null.ogg','sound/misc/null.ogg'), 100, 1)
+ user.say(replacetext(invocation," ","`"))
if("whisper")
if(prob(50))
- usr.whisper(invocation)
+ user.whisper(invocation)
else
- usr.whisper(replacetext(invocation," ","`"))
+ user.whisper(replacetext(invocation," ","`"))
/obj/effect/proc_holder/spell/New()
..()
diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm
index 3d955ca9f30..dace2e31114 100644
--- a/code/game/gamemodes/cult/ritual.dm
+++ b/code/game/gamemodes/cult/ritual.dm
@@ -125,11 +125,11 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology",
attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/tome) && iscultist(user))
- user << "You retrace your steps, carefully undoing the lines of the rune."
+ user << "You retrace your steps, carefully undoing the lines of the rune."
del(src)
return
else if(istype(I, /obj/item/weapon/nullrod))
- user << "\blue You disrupt the vile magic with the deadening field of the null rod!"
+ user << "You disrupt the vile magic with the deadening field of the null rod!"
del(src)
return
return
@@ -137,11 +137,13 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology",
attack_hand(mob/living/user as mob)
if(!iscultist(user))
- user << "You can't mouth the arcane scratchings without fumbling over them."
- return
- if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle))
- user << "You are unable to speak the words of the rune."
+ user << "You can't mouth the arcane scratchings without fumbling over them."
return
+ if(ishuman(user))
+ var/mob/living/carbon/human/H = user
+ if(istype(H.wear_mask, /obj/item/clothing/mask/muzzle))
+ H << "You are unable to speak the words of the rune."
+ return
if(!word1 || !word2 || !word3 || prob(user.getBrainLoss()))
return fizzle()
// if(!src.visibility)
diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm
index c2bb34f03f5..fd65b7640b7 100644
--- a/code/game/objects/effects/effect_system.dm
+++ b/code/game/objects/effects/effect_system.dm
@@ -602,93 +602,6 @@ steam.start() -- spawns the effect
del(smoke)
src.total_smoke--
-/////////////////////////////////////////////
-// Mustard Gas
-/////////////////////////////////////////////
-
-
-/obj/effect/effect/mustard_gas
- name = "mustard gas"
- icon_state = "mustard"
- opacity = 1
- anchored = 0.0
- mouse_opacity = 0
- var/amount = 6.0
-
-/obj/effect/effect/mustard_gas/New()
- ..()
- spawn (100)
- del(src)
- return
-
-/obj/effect/effect/mustard_gas/Move()
- ..()
- for(var/mob/living/carbon/human/R in get_turf(src))
- if (R.internal != null && usr.wear_mask && (R.wear_mask.flags & MASKINTERNALS) && R.wear_suit != null && !istype(R.wear_suit, /obj/item/clothing/suit/labcoat) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket && !istype(R.wear_suit, /obj/item/clothing/suit/armor)))
- else
- R.burn_skin(0.75)
- if (R.coughedtime != 1)
- R.coughedtime = 1
- R.emote("gasp")
- spawn (20)
- R.coughedtime = 0
- R.updatehealth()
- return
-
-/obj/effect/effect/mustard_gas/HasEntered(mob/living/carbon/human/R as mob )
- ..()
- if (istype(R, /mob/living/carbon/human))
- if (R.internal != null && usr.wear_mask && (R.wear_mask.flags & MASKINTERNALS) && R.wear_suit != null && !istype(R.wear_suit, /obj/item/clothing/suit/labcoat) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket && !istype(R.wear_suit, /obj/item/clothing/suit/armor)))
- return
- R.burn_skin(0.75)
- if (R.coughedtime != 1)
- R.coughedtime = 1
- R.emote("gasp")
- spawn (20)
- R.coughedtime = 0
- R.updatehealth()
- return
-
-/datum/effect/effect/system/mustard_gas_spread
- var/total_smoke = 0 // To stop it being spammed and lagging!
- var/direction
-
- set_up(n = 5, c = 0, loca, direct)
- if(n > 20)
- n = 20
- number = n
- cardinals = c
- if(istype(loca, /turf/))
- location = loca
- else
- location = get_turf(loca)
- if(direct)
- direction = direct
-
- start()
- var/i = 0
- for(i=0, i 20)
- return
- spawn(0)
- if(holder)
- src.location = get_turf(holder)
- var/obj/effect/effect/mustard_gas/smoke = new /obj/effect/effect/mustard_gas(src.location)
- src.total_smoke++
- var/direction = src.direction
- if(!direction)
- if(src.cardinals)
- direction = pick(cardinal)
- else
- direction = pick(alldirs)
- for(i=0, iYou need help taking this off!"
- return
+/obj/item/device/radio/electropack/attack_hand(mob/user)
+ if(iscarbon(user))
+ var/mob/living/carbon/C = user
+ if(src == C.back)
+ user << "You need help taking this off!"
+ return
..()
/obj/item/device/radio/electropack/attackby(obj/item/weapon/W as obj, mob/user as mob)
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index 48eba9f394a..2ada25542eb 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -67,7 +67,11 @@
swirlie = GM
if(do_after(user, 30, 5, 0))
user.visible_message("[user] gives [GM.name] a swirlie!", "You give [GM.name] a swirlie!", "You hear a toilet flushing.")
- if(!GM.internal)
+ if(iscarbon(GM))
+ var/mob/living/carbon/C = GM
+ if(!C.internal)
+ C.adjustOxyLoss(5)
+ else
GM.adjustOxyLoss(5)
swirlie = null
else
diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm
index 3b8d96f190a..11787c82ece 100644
--- a/code/modules/clothing/masks/miscellaneous.dm
+++ b/code/modules/clothing/masks/miscellaneous.dm
@@ -7,13 +7,13 @@
w_class = 2
gas_transfer_coefficient = 0.90
-//Monkeys can not take the muzzle off of themself! Call PETA!
-/obj/item/clothing/mask/muzzle/attack_paw(mob/user as mob)
- if (src == user.wear_mask)
- return
- else
- ..()
- return
+/obj/item/clothing/mask/muzzle/attack_paw(mob/user)
+ if(iscarbon(user))
+ var/mob/living/carbon/C = user
+ if(src == C.wear_mask)
+ user << "You need help taking this off!"
+ return
+ ..()
/obj/item/clothing/mask/surgical
diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm
index 812cdb0b8c3..6342036dab2 100644
--- a/code/modules/mob/inventory.dm
+++ b/code/modules/mob/inventory.dm
@@ -159,12 +159,6 @@
else if (W == l_hand)
l_hand = null
update_inv_l_hand(0)
- else if (W == back)
- back = null
- update_inv_back(0)
- else if (W == wear_mask)
- wear_mask = null
- update_inv_wear_mask(0)
return
diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
index ff63c6e5455..470528803ee 100644
--- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
+++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
@@ -143,22 +143,14 @@
return
-/mob/living/carbon/alien/humanoid/hand_p(mob/M as mob)
- if (!ticker)
- M << "You cannot attack people before the game has started."
- return
-
- if (M.a_intent == "hurt")
- if (istype(M.wear_mask, /obj/item/clothing/mask/muzzle))
+/mob/living/carbon/alien/humanoid/hand_p(mob/living/carbon/user)
+ if(user.a_intent == "hurt")
+ if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle))
return
- if (health > 0)
- for(var/mob/O in viewers(src, null))
- if ((O.client && !( O.blinded )))
- O.show_message(text("\red [M.name] has bit []!", src), 1)
+ if(health > 0)
+ visible_message("[user] has bit [src]!")
adjustBruteLoss(rand(1, 3))
-
updatehealth()
- return
/mob/living/carbon/alien/humanoid/attack_paw(mob/living/carbon/monkey/M as mob)
if(!ismonkey(M)) return//Fix for aliens receiving double messages when attacking other aliens.
diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm
index acfa3401810..bd3669f46e5 100644
--- a/code/modules/mob/living/carbon/alien/larva/larva.dm
+++ b/code/modules/mob/living/carbon/alien/larva/larva.dm
@@ -149,27 +149,15 @@
return
-/mob/living/carbon/alien/larva/hand_p(mob/M as mob)
- if (!ticker)
- M << "You cannot attack people before the game has started."
- return
-
- if (M.a_intent == "hurt")
- if (istype(M.wear_mask, /obj/item/clothing/mask/muzzle))
+/mob/living/carbon/alien/larva/hand_p(mob/living/carbon/user)
+ if(user.a_intent == "hurt")
+ if(istype(user.wear_mask, /obj/item/clothing/mask/muzzle))
return
- if (health > 0)
-
- for(var/mob/O in viewers(src, null))
- if ((O.client && !( O.blinded )))
- O.show_message(text("\red [M.name] has bit []!", src), 1)
- var/damage = rand(1, 3)
-
- adjustBruteLoss(damage)
-
+ if(health > 0)
+ visible_message("[user] has bit [src]!")
+ adjustBruteLoss(rand(1, 3))
updatehealth()
- return
-
/mob/living/carbon/alien/larva/attack_animal(mob/living/simple_animal/M as mob)
if(M.melee_damage_upper == 0)
diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm
index 6cc125c9c8a..95e04333310 100644
--- a/code/modules/mob/living/carbon/alien/special/facehugger.dm
+++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm
@@ -145,10 +145,8 @@ var/const/MAX_ACTIVE_TIME = 400
if(!sterile) L.Paralyse(MAX_IMPREGNATION_TIME/6) //something like 25 ticks = 20 seconds with the default settings
else if (iscorgi(M))
var/mob/living/simple_animal/corgi/C = M
- src.loc = C
+ loc = C
C.facehugger = src
- C.wear_mask = src
- //C.regenerate_icons()
GoIdle() //so it doesn't jump the people that tear it off
@@ -158,9 +156,14 @@ var/const/MAX_ACTIVE_TIME = 400
return
/obj/item/clothing/mask/facehugger/proc/Impregnate(mob/living/target as mob)
- if(!target || target.wear_mask != src || target.stat == DEAD) //was taken off or something
+ if(!target || target.stat == DEAD) //was taken off or something
return
+ if(iscarbon(target))
+ var/mob/living/carbon/C = target
+ if(C.wear_mask != src)
+ return
+
if(!sterile)
//target.contract_disease(new /datum/disease/alien_embryo(0)) //so infection chance is same as virus infection chance
new /obj/item/alien_embryo(target)
diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm
index 3abab019b81..e45fa831d89 100644
--- a/code/modules/mob/living/carbon/carbon_defines.dm
+++ b/code/modules/mob/living/carbon/carbon_defines.dm
@@ -9,4 +9,9 @@
var/last_eating = 0 //Not sure what this does... I found it hidden in food.dm
var/obj/item/handcuffed = null //Whether or not the mob is handcuffed
- var/obj/item/legcuffed = null //Same as handcuffs but for legs. Bear traps use this.
\ No newline at end of file
+ var/obj/item/legcuffed = null //Same as handcuffs but for legs. Bear traps use this.
+
+//inventory slots
+ var/obj/item/weapon/back = null
+ var/obj/item/clothing/mask/wear_mask = null
+ var/obj/item/weapon/tank/internal = null
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm
index 7f6cbe5b614..11b06b5b148 100644
--- a/code/modules/mob/living/carbon/human/inventory.dm
+++ b/code/modules/mob/living/carbon/human/inventory.dm
@@ -361,7 +361,7 @@
message = "\red [source] fails to take off \a [target.wear_mask] from [target]'s head!"
return
else
- message = "\red [source] is trying to take off \a [source.wear_mask] from [target]'s head!"
+ message = "\red [source] is trying to take off \a [target.wear_mask] from [target]'s head!"
if("l_hand")
message = "\red [source] is trying to take off \a [target.l_hand] from [target]'s left hand!"
if("r_hand")
diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm
index 2120be88587..56ec8a86b54 100644
--- a/code/modules/mob/living/say.dm
+++ b/code/modules/mob/living/say.dm
@@ -97,9 +97,6 @@ var/list/department_radio_keys = list(
if (sdisabilities & MUTE)
return
- if (istype(wear_mask, /obj/item/clothing/mask/muzzle))
- return
-
// emotes
if (copytext(message, 1, 2) == "*" && !stat)
return emote(copytext(message, 2))
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index 05176f69d83..97a77d73a47 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -55,6 +55,8 @@
var/speed = 0 //Cause sec borgs gotta go fast //No they dont!
var/scrambledcodes = 0 // Used to determine if a borg shows up on the robotics console. Setting to one hides them.
+ var/obj/item/weapon/tank/internal = null //Hatred. Used if a borg has a jetpack.
+
/mob/living/silicon/robot/New(loc,var/syndie = 0)
spark_system = new /datum/effect/effect/system/spark_spread()
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index fb52c303c87..d552653978c 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -232,11 +232,8 @@ var/list/slot_equipment_priority = list( \
var/dat = {"
[name]
-
Head(Mask): [(wear_mask ? wear_mask : "Nothing")]
Left Hand: [(l_hand ? l_hand : "Nothing")]
Right Hand: [(r_hand ? r_hand : "Nothing")]
-
Back: [(back ? back : "Nothing")] [((istype(wear_mask, /obj/item/clothing/mask) && istype(back, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : "")]
-
[(internal ? text("Remove Internal") : "")]
Empty Pockets
Refresh
Close
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index 9ef1f13a607..b017a0cfb2d 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -105,10 +105,7 @@
var/obj/structure/stool/bed/buckled = null//Living
var/obj/item/l_hand = null//Living
var/obj/item/r_hand = null//Living
- var/obj/item/weapon/back = null//Human/Monkey
- var/obj/item/weapon/tank/internal = null//Human/Monkey
var/obj/item/weapon/storage/s_active = null//Carbon
- var/obj/item/clothing/mask/wear_mask = null//Carbon
var/seer = 0 //for cult//Carbon, probably Human
diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm
index 77e1ac0442c..c0115fa4b44 100644
--- a/code/modules/mob/mob_helpers.dm
+++ b/code/modules/mob/mob_helpers.dm
@@ -275,15 +275,12 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
return 0
-/mob/proc/abiotic(var/full_body = 0)
- if(full_body && ((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract )) || (src.back || src.wear_mask)))
+/mob/proc/abiotic(full_body = 0)
+ if(l_hand && !l_hand.abstract || r_hand && !r_hand.abstract)
return 1
-
- if((src.l_hand && !( src.l_hand.abstract )) || (src.r_hand && !( src.r_hand.abstract )))
- return 1
-
return 0
+
//Triggered when F12 is pressed (Unless someone changed something in the DMF)
/mob/verb/button_pressed_F12()
set name = "F12"
diff --git a/code/modules/mob/screen.dm b/code/modules/mob/screen.dm
index 8e521ea68e2..31a22d8b642 100644
--- a/code/modules/mob/screen.dm
+++ b/code/modules/mob/screen.dm
@@ -334,46 +334,47 @@
if("Reset Machine")
usr.unset_machine()
if("internal")
- if (( !usr.stat && !usr.stunned && !usr.paralysis && !usr.restrained() ))
- if (usr.internal)
- usr.internal = null
- usr << "\blue No longer running on internals."
- if (usr.internals)
- usr.internals.icon_state = "internal0"
- else
- if(ishuman(usr))
- if (!( istype(usr.wear_mask, /obj/item/clothing/mask) ))
- usr << "\red You are not wearing a mask"
+ if(iscarbon(usr))
+ var/mob/living/carbon/C = usr
+ if(!C.stat && !C.stunned && !C.paralysis && !C.restrained())
+ if(C.internal)
+ C.internal = null
+ C << "No longer running on internals."
+ if(C.internals)
+ C.internals.icon_state = "internal0"
+ else
+ if(!istype(C.wear_mask, /obj/item/clothing/mask))
+ C << "You are not wearing a mask."
return
else
- if (ishuman(usr) && istype(usr:s_store, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr:s_store] on your [usr:wear_suit]."
- usr.internal = usr:s_store
- else if (ishuman(usr) && istype(usr:belt, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr:belt] on your belt."
- usr.internal = usr:belt
- else if (istype(usr:l_store, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr:l_store] in your left pocket."
- usr.internal = usr:l_store
- else if (istype(usr:r_store, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr:r_store] in your right pocket."
- usr.internal = usr:r_store
- else if (istype(usr.back, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr.back] on your back."
- usr.internal = usr.back
- else if (istype(usr.l_hand, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr.l_hand] on your left hand."
- usr.internal = usr.l_hand
- else if (istype(usr.r_hand, /obj/item/weapon/tank))
- usr << "\blue You are now running on internals from the [usr.r_hand] on your right hand."
- 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)
- if (usr.internals)
- usr.internals.icon_state = "internal1"
+ if(istype(C.back, /obj/item/weapon/tank))
+ C << "You are now running on internals from the [C.back] on your back."
+ C.internal = C.back
+ else if(istype(C.l_hand, /obj/item/weapon/tank))
+ C << "You are now running on internals from the [C.l_hand] on your left hand."
+ C.internal = C.l_hand
+ else if(istype(C.r_hand, /obj/item/weapon/tank))
+ C << "You are now running on internals from the [C.r_hand] on your right hand."
+ C.internal = C.r_hand
+ else if(ishuman(C))
+ var/mob/living/carbon/human/H = C
+ if(istype(H.s_store, /obj/item/weapon/tank))
+ H << "You are now running on internals from the [H.s_store] on your [H.wear_suit]."
+ H.internal = H.s_store
+ else if(istype(H.belt, /obj/item/weapon/tank))
+ H << "You are now running on internals from the [H.belt] on your belt."
+ H.internal = H.belt
+ else if(istype(H.l_store, /obj/item/weapon/tank))
+ H << "You are now running on internals from the [H.l_store] in your left pocket."
+ H.internal = H.l_store
+ else if(istype(H.r_store, /obj/item/weapon/tank))
+ H << "You are now running on internals from the [H.r_store] in your right pocket."
+ H.internal = H.r_store
+ if(C.internal)
+ if(C.internals)
+ C.internals.icon_state = "internal1"
else
- usr << "\blue You don't have an oxygen tank."
+ C << "You don't have an oxygen tank."
if("act_intent")
usr.a_intent_change("right")
/* if("help")
diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm
index 27ed273a486..4b03ace54df 100644
--- a/code/modules/paperwork/photography.dm
+++ b/code/modules/paperwork/photography.dm
@@ -79,35 +79,33 @@
* photo album *
**************/
/obj/item/weapon/storage/photo_album
- name = "Photo album"
+ name = "photo album"
icon = 'icons/obj/items.dmi'
icon_state = "album"
item_state = "briefcase"
can_hold = list("/obj/item/weapon/photo",)
/obj/item/weapon/storage/photo_album/MouseDrop(obj/over_object as obj)
+ var/mob/M = usr
+ if(!istype(over_object, /obj/screen))
+ return ..()
+
+ playsound(loc, "rustle", 50, 1, -5)
+ if(!M.restrained() && M.stat == CONSCIOUS)
+ switch(over_object.name)
+ if("r_hand")
+ M.u_equip(src)
+ M.put_in_r_hand(src)
+ if("l_hand")
+ M.u_equip(src)
+ M.put_in_l_hand(src)
+ add_fingerprint(usr)
+ return
+ if(over_object == M && in_range(src, M) || M.contents.Find(src))
+ if(M.s_active)
+ M.s_active.close(usr)
+ show_to(M)
- if((istype(usr, /mob/living/carbon/human) || (ticker && ticker.mode.name == "monkey")))
- var/mob/M = usr
- if(!( istype(over_object, /obj/screen) ))
- return ..()
- playsound(loc, "rustle", 50, 1, -5)
- if((!( M.restrained() ) && !( M.stat ) && M.back == src))
- switch(over_object.name)
- if("r_hand")
- M.u_equip(src)
- M.put_in_r_hand(src)
- if("l_hand")
- M.u_equip(src)
- M.put_in_l_hand(src)
- add_fingerprint(usr)
- return
- if(over_object == usr && in_range(src, usr) || usr.contents.Find(src))
- if(usr.s_active)
- usr.s_active.close(usr)
- show_to(usr)
- return
- return
/*********
* camera *
diff --git a/code/modules/surgery/organs/organ.dm b/code/modules/surgery/organs/organ.dm
index 5a57dc539eb..a63655b5537 100644
--- a/code/modules/surgery/organs/organ.dm
+++ b/code/modules/surgery/organs/organ.dm
@@ -24,4 +24,8 @@
if(inflamed)
icon_state = "appendixinflamed"
else
- icon_state = "appendix"
\ No newline at end of file
+ icon_state = "appendix"
+
+
+//Looking for brains?
+//Try code/modules/mob/living/carbon/brain/brain_item.dm
\ No newline at end of file