Merge remote-tracking branch 'upstream/dev-freeze' into dev

Conflicts:
	code/modules/mob/living/carbon/human/human_helpers.dm
	code/modules/reagents/reagent_containers/food/snacks.dm
This commit is contained in:
PsiOmegaDelta
2015-10-25 20:28:48 +01:00
7 changed files with 82 additions and 55 deletions
@@ -1,8 +1,46 @@
#define HUMAN_EATING_NO_ISSUE 0
#define HUMAN_EATING_NO_MOUTH 1
#define HUMAN_EATING_BLOCKED_MOUTH 2
#define add_clothing_protection(A) \
var/obj/item/clothing/C = A; \
flash_protection += C.flash_protection; \
equipment_tint_total += C.tint;
/mob/living/carbon/human/can_eat(var/food, var/feedback = 1)
var/status = can_eat_status()
if(status == HUMAN_EATING_NO_ISSUE)
return 1
if(feedback)
if(status == HUMAN_EATING_NO_MOUTH)
src << "Where do you intend to put \the [food]? You don't have a mouth!"
else if(status == HUMAN_EATING_BLOCKED_MOUTH)
src << "<span class='warning'>\The [blocked] is in the way!</span>"
return 0
/mob/living/carbon/human/can_force_feed(var/feeder, var/food, var/feedback = 1)
var/status = can_eat_status()
if(status == HUMAN_EATING_NO_ISSUE)
return 1
if(feedback)
if(status == HUMAN_EATING_NO_MOUTH)
feeder << "Where do you intend to put \the [food]? \The [src] doesn't have a mouth!"
else if(status == HUMAN_EATING_BLOCKED_MOUTH)
feeder << "<span class='warning'>\The [blocked] is in the way!</span>"
return 0
/mob/living/carbon/human/proc/can_eat_status()
if(!check_has_mouth())
return HUMAN_EATING_NO_MOUTH
var/obj/item/blocked = check_mouth_coverage()
if(blocked)
return HUMAN_EATING_BLOCKED_MOUTH
return HUMAN_EATING_NO_ISSUE
#undef HUMAN_EATING_NO_ISSUE
#undef HUMAN_EATING_NO_MOUTH
#undef HUMAN_EATING_BLOCKED_MOUTH
/mob/living/carbon/human/proc/update_equipment_vision()
flash_protection = 0
equipment_tint_total = 0
@@ -91,6 +91,14 @@ var/global/list/robot_modules = list(
return
/obj/item/weapon/robot_module/proc/respawn_consumable(var/mob/living/silicon/robot/R, var/rate)
var/obj/item/device/flash/F = locate() in src.modules
if(F.broken)
F.broken = 0
F.times_used = 0
F.icon_state = "flash"
else if(F.times_used)
F.times_used--
if(!synths || !synths.len)
return
@@ -271,7 +279,6 @@ var/global/list/robot_modules = list(
..()
/obj/item/weapon/robot_module/medical/crisis/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
var/obj/item/weapon/reagent_containers/syringe/S = locate() in src.modules
if(S.mode == 2)
S.reagents.clear_reagents()
@@ -423,13 +430,7 @@ var/global/list/robot_modules = list(
..()
/obj/item/weapon/robot_module/security/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
var/obj/item/device/flash/F = locate() in src.modules
if(F.broken)
F.broken = 0
F.times_used = 0
F.icon_state = "flash"
else if(F.times_used)
F.times_used--
..()
var/obj/item/weapon/gun/energy/taser/mounted/cyborg/T = locate() in src.modules
if(T.power_supply.charge < T.power_supply.maxcharge)
T.power_supply.give(T.charge_cost * amount)
@@ -462,6 +463,7 @@ var/global/list/robot_modules = list(
..()
/obj/item/weapon/robot_module/janitor/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
..()
var/obj/item/device/lightreplacer/LR = locate() in src.modules
LR.Charge(R, amount)
if(src.emag)
@@ -544,6 +546,7 @@ var/global/list/robot_modules = list(
..()
/obj/item/weapon/robot_module/general/butler/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
..()
var/obj/item/weapon/reagent_containers/food/condiment/enzyme/E = locate() in src.modules
E.reagents.add_reagent("enzyme", 2 * amount)
if(src.emag)
@@ -14,6 +14,11 @@
emote_see = list("jiggles", "bounces in place")
var/colour = "grey"
/mob/living/simple_animal/slime/can_force_feed(var/feeder, var/food, var/feedback)
if(feedback)
feeder << "Where do you intend to put \the [food]? \The [src] doesn't have a mouth!"
return 0
/mob/living/simple_animal/adultslime
name = "pet slime"
desc = "A lovable, domesticated slime."
+6
View File
@@ -498,6 +498,12 @@ proc/is_blind(A)
/mob/proc/is_client_active(var/active = 1)
return client && client.inactivity < active MINUTES
/mob/proc/can_eat()
return 1
/mob/proc/can_force_feed()
return 1
#define SAFE_PERP -50
/mob/living/proc/assess_perp(var/obj/access_obj, var/check_access, var/auth_weapons, var/check_records, var/check_arrest)
if(stat == DEAD)