Skip to content

Commit

Permalink
Combat Robots Race (#8301)
Browse files Browse the repository at this point in the history
* Commit stash

* fix icon

* save

* wip

* Wrap up actual code mostly

* Finish accessory code

* Fix and balance tweaks

* Critdrag tweaks

* linter

* Overhaul limb repair, bugfixes

* Decrease sound volume

* Bugfixes, remove damage resistances/resist, robot join toggle

* Actually push

* Fix helmet armor being too low

* No civil war robots

* Fix line
  • Loading branch information
TiviPlus committed Sep 26, 2021
1 parent ebdc9d0 commit 950a526
Show file tree
Hide file tree
Showing 66 changed files with 475 additions and 103 deletions.
1 change: 1 addition & 0 deletions code/__DEFINES/is_helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@
#define isvox(H) (is_species(H, /datum/species/vox))
#define isvoxarmalis(H) (is_species(H, /datum/species/vox/armalis))
#define isIPC(H) (is_species(H, /datum/species/machine))
#define isrobot(H) (is_species(H, /datum/species/robot))
#define issynth(H) (is_species(H, /datum/species/synthetic) || is_species(H, /datum/species/early_synthetic))
#define isspeciessynthetic(H) (H.species.species_flags & IS_SYNTHETIC)
#define ismoth(H) (is_species(H, /datum/species/moth))
Expand Down
35 changes: 35 additions & 0 deletions code/__DEFINES/loadout.dm
Original file line number Diff line number Diff line change
Expand Up @@ -225,13 +225,17 @@ GLOBAL_LIST_INIT(loadout_linked_vendor, list(
GLOBAL_LIST_INIT(marine_clothes_listed_products, list(
/obj/effect/essentials_set/basic = list(CAT_STD, "Standard Kit", 0, "white"),
/obj/effect/essentials_set/basicmodular = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/essentials_set/robot = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/modular_set/skirmisher = list(CAT_AMR, "Light Skirmisher Jaeger kit", 0, "orange"),
/obj/effect/modular_set/scout = list(CAT_AMR, "Light Scout Jaeger kit", 0, "orange"),
/obj/effect/modular_set/infantry = list(CAT_AMR, "Medium Infantry Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eva = list(CAT_AMR, "Medium EVA Jaeger kit", 0, "orange"),
/obj/effect/modular_set/assault = list(CAT_AMR, "Heavy Assault Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eod = list(CAT_AMR, "Heavy EOD Jaeger kit", 0, "orange"),
/obj/item/clothing/suit/modular/pas11x = list(CAT_AMR, "PAS-11X pattern armor", 0, "orange"),
/obj/item/clothing/suit/storage/marine/robot/light = list(CAT_AMR, "Combat robot light armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot = list(CAT_AMR, "Combat robot medium armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot/heavy = list(CAT_AMR, "Combat robot heavy armor plating", 0, "black"),
/obj/item/storage/backpack/marine/satchel = list(CAT_BAK, "Satchel", 0, "orange"),
/obj/item/storage/backpack/marine/standard = list(CAT_BAK, "Backpack", 0, "black"),
/obj/item/clothing/tie/storage/black_vest = list(CAT_WEB, "Tactical black vest", 0, "orange"),
Expand All @@ -248,6 +252,9 @@ GLOBAL_LIST_INIT(marine_clothes_listed_products, list(
/obj/item/armor_module/module/binoculars = list(CAT_HEL, "Jaeger binoculars module", 0, "orange"),
/obj/item/armor_module/module/antenna = list(CAT_HEL, "Jaeger Antenna module", 0, "orange"),
/obj/item/clothing/head/modular/marine/m10x = list(CAT_HEL, "M10X Pattern marine helmet", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/light = list(CAT_HEL, "Light head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot = list(CAT_HEL, "Medium head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/heavy = list(CAT_HEL, "Heavy head robotic armor plating", 0, "black"),
/obj/item/armor_module/storage/medical = list(CAT_MOD, "Medical Storage Module", 0, "black"),
/obj/item/armor_module/storage/general = list(CAT_MOD, "General Purpose Storage Module", 0, "black"),
/obj/item/armor_module/storage/engineering = list(CAT_MOD, "Engineering Storage Module", 0, "black"),
Expand Down Expand Up @@ -292,12 +299,16 @@ GLOBAL_LIST_INIT(marine_clothes_listed_products, list(
GLOBAL_LIST_INIT(engineer_clothes_listed_products, list(
/obj/effect/essentials_set/basic_engineer = list(CAT_STD, "Standard kit", 0, "white"),
/obj/effect/essentials_set/basic_engineermodular = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/essentials_set/robot = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/modular_set/skirmisher = list(CAT_AMR, "Light Skirmisher Jaeger kit", 0, "orange"),
/obj/effect/modular_set/scout = list(CAT_AMR, "Light Scout Jaeger kit", 0, "orange"),
/obj/effect/modular_set/infantry = list(CAT_AMR, "Medium Infantry Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eva = list(CAT_AMR, "Medium EVA Jaeger kit", 0, "orange"),
/obj/effect/modular_set/assault = list(CAT_AMR, "Heavy Assault Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eod = list(CAT_AMR, "Heavy EOD Jaeger kit", 0, "orange"),
/obj/item/clothing/suit/storage/marine/robot/light = list(CAT_AMR, "Combat robot light armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot = list(CAT_AMR, "Combat robot medium armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot/heavy = list(CAT_AMR, "Combat robot heavy armor plating", 0, "black"),
/obj/item/clothing/suit/modular/pas11x = list(CAT_AMR, "PAS-11X pattern armor", 0, "orange"),
/obj/item/storage/backpack/marine/satchel/tech = list(CAT_BAK, "Satchel", 0, "orange"),
/obj/item/storage/backpack/marine/tech = list(CAT_BAK, "Backpack", 0, "black"),
Expand All @@ -313,6 +324,9 @@ GLOBAL_LIST_INIT(engineer_clothes_listed_products, list(
/obj/item/armor_module/module/antenna = list(CAT_HEL, "Jaeger Antenna module", 0, "orange"),
/obj/item/clothing/head/modular/marine/m10x/tech = list(CAT_HEL, "M10X engineer helmet", 0, "black"),
/obj/item/clothing/head/beret/eng = list(CAT_HEL, "Engineering beret", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/light = list(CAT_HEL, "Light head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot = list(CAT_HEL, "Medium head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/heavy = list(CAT_HEL, "Heavy head robotic armor plating", 0, "black"),
/obj/item/armor_module/storage/medical = list(CAT_MOD, "Medical Storage Module", 0, "black"),
/obj/item/armor_module/storage/general = list(CAT_MOD, "General Purpose Storage Module", 0, "black"),
/obj/item/armor_module/storage/engineering = list(CAT_MOD, "Engineering Storage Module", 0, "black"),
Expand Down Expand Up @@ -345,13 +359,17 @@ GLOBAL_LIST_INIT(engineer_clothes_listed_products, list(
GLOBAL_LIST_INIT(medic_clothes_listed_products, list(
/obj/effect/essentials_set/basic_medic = list(CAT_STD, "Standard kit", 0, "white"),
/obj/effect/essentials_set/basic_medicmodular = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/essentials_set/robot = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/modular_set/skirmisher = list(CAT_AMR, "Light Skirmisher Jaeger kit", 0, "orange"),
/obj/effect/modular_set/scout = list(CAT_AMR, "Light Scout Jaeger kit", 0, "orange"),
/obj/effect/modular_set/infantry = list(CAT_AMR, "Medium Infantry Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eva = list(CAT_AMR, "Medium EVA Jaeger kit", 0, "orange"),
/obj/effect/modular_set/assault = list(CAT_AMR, "Heavy Assault Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eod = list(CAT_AMR, "Heavy EOD Jaeger kit", 0, "orange"),
/obj/item/clothing/suit/modular/pas11x = list(CAT_AMR, "PAS-11X pattern armor", 0, "orange"),
/obj/item/clothing/suit/storage/marine/robot/light = list(CAT_AMR, "Combat robot light armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot = list(CAT_AMR, "Combat robot medium armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot/heavy = list(CAT_AMR, "Combat robot heavy armor plating", 0, "black"),
/obj/item/storage/backpack/marine/satchel/corpsman = list(CAT_BAK, "Satchel", 0, "orange"),
/obj/item/storage/backpack/marine/corpsman = list(CAT_BAK, "Backpack", 0, "black"),
/obj/item/clothing/tie/storage/brown_vest = list(CAT_WEB, "Tactical brown vest", 0, "orange"),
Expand All @@ -364,6 +382,9 @@ GLOBAL_LIST_INIT(medic_clothes_listed_products, list(
/obj/item/armor_module/module/binoculars = list(CAT_HEL, "Jaeger binoculars module", 0, "orange"),
/obj/item/armor_module/module/antenna = list(CAT_HEL, "Jaeger Antenna module", 0, "orange"),
/obj/item/clothing/head/modular/marine/m10x/corpsman = list(CAT_HEL, "M10X corpsman helmet", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/light = list(CAT_HEL, "Light head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot = list(CAT_HEL, "Medium head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/heavy = list(CAT_HEL, "Heavy head robotic armor plating", 0, "black"),
/obj/item/armor_module/storage/medical = list(CAT_MOD, "Medical Storage Module", 0, "black"),
/obj/item/armor_module/storage/general = list(CAT_MOD, "General Purpose Storage Module", 0, "black"),
/obj/item/armor_module/storage/engineering = list(CAT_MOD, "Engineering Storage Module", 0, "black"),
Expand All @@ -386,15 +407,22 @@ GLOBAL_LIST_INIT(medic_clothes_listed_products, list(
GLOBAL_LIST_INIT(smartgunner_clothes_listed_products, list(
/obj/effect/essentials_set/basic_smartgunner = list(CAT_STD, "Standard kit", 0, "white"),
/obj/effect/essentials_set/basic_smartgunnermodular = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/essentials_set/robot = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/modular_set/skirmisher = list(CAT_AMR, "Light Skirmisher Jaeger kit", 0, "orange"),
/obj/effect/modular_set/scout = list(CAT_AMR, "Light Scout Jaeger kit", 0, "orange"),
/obj/effect/modular_set/infantry = list(CAT_AMR, "Medium Infantry Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eva = list(CAT_AMR, "Medium EVA Jaeger kit", 0, "orange"),
/obj/effect/modular_set/assault = list(CAT_AMR, "Heavy Assault Jaeger kit", 0, "orange"),
/obj/effect/modular_set/eod = list(CAT_AMR, "Heavy EOD Jaeger kit", 0, "orange"),
/obj/item/clothing/suit/modular/pas11x = list(CAT_AMR, "PAS-11X pattern armor", 0, "orange"),
/obj/item/clothing/suit/storage/marine/robot/light = list(CAT_AMR, "Combat robot light armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot = list(CAT_AMR, "Combat robot medium armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot/heavy = list(CAT_AMR, "Combat robot heavy armor plating", 0, "black"),
/obj/item/clothing/head/modular/marine/m10x/standard = list(CAT_HEL, "M10X Pattern helmet", 0, "black"),
/obj/item/clothing/head/modular/marine/m10x/heavy = list(CAT_HEL, "Heavy helmet", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/light = list(CAT_HEL, "Light head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot = list(CAT_HEL, "Medium head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/heavy = list(CAT_HEL, "Heavy head robotic armor plating", 0, "black"),
/obj/item/clothing/tie/storage/black_vest = list(CAT_WEB, "Tactical black vest", 0, "orange"),
/obj/item/clothing/tie/storage/webbing = list(CAT_WEB, "Tactical webbing", 0, "black"),
/obj/item/clothing/tie/storage/holster = list(CAT_WEB, "Shoulder handgun holster", 0, "black"),
Expand Down Expand Up @@ -434,13 +462,17 @@ GLOBAL_LIST_INIT(smartgunner_clothes_listed_products, list(
GLOBAL_LIST_INIT(leader_clothes_listed_products, list(
/obj/effect/essentials_set/basic_squadleader = list(CAT_STD, "Standard kit", 0, "white"),
/obj/effect/essentials_set/basic_squadleadermodular = list(CAT_STD, "Essential Jaeger Kit", 0, "white"),
/obj/effect/essentials_set/robot = list(CAT_STD, "Essential Combat Robot Kit", 0, "white"),
/obj/effect/modular_set/skirmisher = list(CAT_AMR, "Light Skirmisher Jaeger kit", 0, "black"),
/obj/effect/modular_set/scout = list(CAT_AMR, "Light Scout Jaeger kit", 0, "orange"),
/obj/effect/modular_set/infantry = list(CAT_AMR, "Medium Infantry Jaeger kit", 0, "black"),
/obj/effect/modular_set/eva = list(CAT_AMR, "Medium EVA Jaeger kit", 0, "black"),
/obj/effect/modular_set/assault = list(CAT_AMR, "Heavy Assault Jaeger kit", 0, "black"),
/obj/effect/modular_set/eod = list(CAT_AMR, "Heavy EOD Jaeger kit", 0, "black"),
/obj/item/clothing/suit/modular/pas11x = list(CAT_AMR, "PAS-11X pattern armor", 0, "orange"),
/obj/item/clothing/suit/storage/marine/robot/light = list(CAT_AMR, "Combat robot light armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot = list(CAT_AMR, "Combat robot medium armor plating", 0, "black"),
/obj/item/clothing/suit/storage/marine/robot/heavy = list(CAT_AMR, "Combat robot heavy armor plating", 0, "black"),
/obj/item/storage/backpack/marine/satchel = list(CAT_BAK, "Satchel", 0, "black"),
/obj/item/storage/backpack/marine/standard = list(CAT_BAK, "Backpack", 0, "black"),
/obj/item/storage/large_holster/blade/machete/full = list(CAT_BAK, "Machete scabbard", 0, "black"),
Expand All @@ -458,6 +490,9 @@ GLOBAL_LIST_INIT(leader_clothes_listed_products, list(
/obj/item/armor_module/module/binoculars = list(CAT_HEL, "Jaeger binoculars module", 0, "orange"),
/obj/item/armor_module/module/antenna = list(CAT_HEL, "Jaeger Antenna module", 0, "orange"),
/obj/item/clothing/head/modular/marine/m10x/leader = list(CAT_HEL, "M10X leader helmet", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/light = list(CAT_HEL, "Light head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot = list(CAT_HEL, "Medium head robotic armor plating", 0, "black"),
/obj/item/clothing/head/helmet/marine/robot/heavy = list(CAT_HEL, "Heavy head robotic armor plating", 0, "black"),
/obj/item/armor_module/storage/medical = list(CAT_MOD, "Medical Storage Module", 0, "black"),
/obj/item/armor_module/storage/general = list(CAT_MOD, "General Purpose Storage Module", 0, "black"),
/obj/item/armor_module/storage/engineering = list(CAT_MOD, "Engineering Storage Module", 0, "black"),
Expand Down
3 changes: 3 additions & 0 deletions code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -324,6 +324,9 @@ GLOBAL_LIST_INIT(xenoupgradetiers, list(XENO_UPGRADE_BASETYPE, XENO_UPGRADE_INVA
#define CAN_VENTCRAWL (1<<19)
#define HEALTH_HUD_ALWAYS_DEAD (1<<20)
#define PARALYSE_RESISTANT (1<<21)
#define ROBOTIC_LIMBS (1<<22)
#define GREYSCALE_BLOOD (1<<23)

//=================================================

//Some on_mob_life() procs check for alien races.
Expand Down
4 changes: 3 additions & 1 deletion code/_globalvars/bitfields.dm
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,9 @@ GLOBAL_LIST_INIT(bitfields, list(
"NO_STAMINA" = NO_STAMINA,
"USES_ALIEN_WEAPONS" = USES_ALIEN_WEAPONS,
"NO_DAMAGE_OVERLAY" = NO_DAMAGE_OVERLAY,
"CAN_VENTCRAWL" = CAN_VENTCRAWL
"CAN_VENTCRAWL" = CAN_VENTCRAWL,
"ROBOTIC_LIMBS" = ROBOTIC_LIMBS,
"GREYSCALE_BLOOD" = GREYSCALE_BLOOD,
),
"damagetype" = list(
"BRUTELOSS" = BRUTELOSS,
Expand Down
1 change: 1 addition & 0 deletions code/datums/gamemodes/civil_war.dm
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@
new /obj/structure/sensor_tower(T)
if(GLOB.zones_to_control.len)
points_per_zone_per_second = 1 / GLOB.zones_to_control.len
GLOB.join_as_robot_allowed = FALSE

/datum/game_mode/civil_war/announce()
to_chat(world, "<b>The current game mode is - Civil War!</b>")
Expand Down
3 changes: 1 addition & 2 deletions code/datums/jobs/job/job.dm
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ GLOBAL_PROTECT(exp_specialmap)
/datum/job/proc/after_spawn(mob/living/L, mob/M, latejoin = FALSE) //do actions on L but send messages to M as the key may not have been transferred_yet
if(!ishuman(L))
return

var/mob/living/carbon/human/H = L
if(job_flags & JOB_FLAG_PROVIDES_BANK_ACCOUNT)
var/datum/money_account/bank_account = create_account(L.real_name, rand(50, 500) * 10)
var/list/remembered_info = list()
Expand All @@ -84,7 +84,6 @@ GLOBAL_PROTECT(exp_specialmap)
M.mind.store_memory(remembered_info.Join("<br>"))
M.mind.initial_account = bank_account

var/mob/living/carbon/human/H = L
var/obj/item/card/id/id = H.wear_id
if(istype(id))
id.associated_account_number = bank_account.account_number
Expand Down
3 changes: 2 additions & 1 deletion code/datums/jobs/job/marines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@
/datum/job/terragov/squad/after_spawn(mob/living/carbon/C, mob/M, latejoin = FALSE)
. = ..()
C.hud_set_job(faction)
C.set_nutrition(rand(60, 250))
if(!ishuman(C))
return
var/mob/living/carbon/human/human_spawn = C
if(!(human_spawn.species.species_flags & ROBOTIC_LIMBS))
human_spawn.set_nutrition(rand(60, 250))
if(!human_spawn.assigned_squad)
CRASH("after_spawn called for a marine without an assigned_squad")
to_chat(M, {"\nYou have been assigned to: <b><font size=3 color=[human_spawn.assigned_squad.color]>[lowertext(human_spawn.assigned_squad.name)] squad</font></b>.
Expand Down
5 changes: 5 additions & 0 deletions code/datums/jobs/job/terragov.dm
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@

/datum/job/terragov/return_spawn_type(datum/preferences/prefs)
switch(prefs?.species)
if("Combat Robot")
if(GLOB.join_as_robot_allowed)
return /mob/living/carbon/human/species/robot
to_chat(prefs.parent, span_danger("Robot species joins are currently disabled, your species has been defaulted to Human"))
return /mob/living/carbon/human
if("Vatborn")
return /mob/living/carbon/human/species/vatborn
else
Expand Down
10 changes: 9 additions & 1 deletion code/datums/namepool.dm
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,11 @@ GLOBAL_LIST_EMPTY_TYPED(namepool, /datum/namepool)
/datum/namepool/sectoid/get_random_name()
return "Sectoid [rand(1,9)]X[ascii2text(rand(65, 87))]" //65 to 87 is (uppercase) A to W

/datum/namepool/vatborn/get_random_name(gender = MALE)
/datum/namepool/vatborn/
firstname_male_pool = "names/first_male"
firstname_female_pool = "names/first_female"

/datum/namepool/vatborn/get_random_name(gender = MALE)
if(gender == MALE)
. = pick(SSstrings.get_list_from_file(firstname_male_pool))
else
Expand All @@ -56,3 +57,10 @@ GLOBAL_LIST_EMPTY_TYPED(namepool, /datum/namepool)
firstname_male_pool = "names/skeleton"
firstname_female_pool = "names/skeleton"
lastname_pool = "names/skeleton"

/datum/namepool/robotic
firstname_female_pool = "names/robotic"

/datum/namepool/robotic/get_random_name(gender = MALE)
. = pick(SSstrings.get_list_from_file(firstname_female_pool))
. += "-[rand(1,999)]" //pathfinder-738 or such
2 changes: 1 addition & 1 deletion code/game/data_huds.dm
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@


/mob/living/carbon/human/med_pain_set_perceived_health()
if(species && species.species_flags & NO_PAIN)
if(species?.species_flags & IS_SYNTHETIC)
return FALSE

var/image/holder = hud_list[PAIN_HUD]
Expand Down
3 changes: 3 additions & 0 deletions code/game/objects/items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,9 @@
mob_equip = H.species.hud.equip_slots

if(H.species && !(slot in mob_equip))
return FALSE

if(slot in H.species?.no_equip)
if(!is_type_in_list(H.species, species_exception))
return FALSE

Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/reagent_containers/food/condiment.dm
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
if(iscarbon(M))
var/mob/living/carbon/H = M
if(M == user)
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(H, span_warning("You have a monitor for a head, where do you think you're going to put that?"))
return
to_chat(H, span_notice("You swallow some of contents of the [src]."))
Expand All @@ -40,7 +40,7 @@
playsound(H.loc,'sound/items/drink.ogg', 15, 1)
return 1
else
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(user, span_warning("They have a monitor for a head, where do you think you're going to put that?"))
return
M.visible_message(span_warning("[user] attempts to feed [M] [src]."))
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/reagent_containers/food/drinks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
if(iscarbon(M))
if(M == user)
var/mob/living/carbon/H = M
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(M, span_warning("You have a monitor for a head, where do you think you're going to put that?"))
return
to_chat(M,span_notice("You swallow a gulp from \the [src]."))
Expand All @@ -36,7 +36,7 @@
return TRUE
else
var/mob/living/carbon/H = M
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(user, span_warning("They have a monitor for a head, where do you think you're going to put that?"))
return
M.visible_message(span_warning("[user] attempts to feed [M] \the [src]."))
Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/items/reagent_containers/food/snacks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@
var/fullness = C.nutrition + (C.reagents.get_reagent_amount(/datum/reagent/consumable/nutriment) * 25)
if(M == user) //If you're eating it yourself
var/mob/living/carbon/H = M
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(H, span_warning("You have a monitor for a head, where do you think you're going to put that?"))
return
if (fullness <= 50)
Expand All @@ -82,7 +82,7 @@
return FALSE
else
var/mob/living/carbon/H = M
if(ishuman(H) && (H.species.species_flags & IS_SYNTHETIC))
if(ishuman(H) && (H.species.species_flags & ROBOTIC_LIMBS))
to_chat(user, span_warning("They have a monitor for a head, where do you think you're going to put that?"))
return
if (fullness <= (550 * (1 + C.overeatduration / 1000)))
Expand Down

0 comments on commit 950a526

Please sign in to comment.