From b4163be3832ec7b8b5fa76ad23077c6c6d45a839 Mon Sep 17 00:00:00 2001
From: sarcoph <83266791+sarcoph@users.noreply.github.com>
Date: Sat, 14 May 2022 02:06:56 -0800
Subject: [PATCH] replacing IPC eating with APC siphoning
oracle port
---
code/__DEFINES/DNA.dm | 3 +
code/__DEFINES/mobs.dm | 1 +
code/modules/mob/living/carbon/carbon.dm | 3 +
.../mob/living/carbon/human/species.dm | 11 +++-
code/modules/reagents/reagent_containers.dm | 6 ++
code/modules/surgery/bodyparts/head.dm | 3 +
code/modules/surgery/organs/stomach.dm | 25 +++++++-
.../code/modules/mob/living/carbon/carbon.dm | 5 ++
.../living/carbon/human/species_types/ipc.dm | 58 ++++++++++++++++++
hyperstation/code/modules/mob/mob_helpers.dm | 4 ++
.../modules/surgery/organs/augments_arms.dm | 8 +++
icons/obj/surgery.dmi | Bin 38624 -> 38827 bytes
.../carbon/human/species_types/furrypeople.dm | 2 +-
.../living/carbon/human/species_types/ipc.dm | 5 +-
14 files changed, 128 insertions(+), 6 deletions(-)
create mode 100644 hyperstation/code/modules/mob/living/carbon/human/species_types/ipc.dm
diff --git a/code/__DEFINES/DNA.dm b/code/__DEFINES/DNA.dm
index f0b73b21c..fdaf578cd 100644
--- a/code/__DEFINES/DNA.dm
+++ b/code/__DEFINES/DNA.dm
@@ -126,6 +126,9 @@
#define MARKINGS 17
#define WINGCOLOR 18
+#define NOMOUTH 19
+
+
//organ slots
#define ORGAN_SLOT_BRAIN "brain"
#define ORGAN_SLOT_APPENDIX "appendix"
diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm
index d45280be4..43f7dffb4 100644
--- a/code/__DEFINES/mobs.dm
+++ b/code/__DEFINES/mobs.dm
@@ -151,6 +151,7 @@
//Nutrition levels for humans
#define NUTRITION_LEVEL_FAT 600
#define NUTRITION_LEVEL_FULL 550
+#define NUTRITION_LEVEL_ALMOST_FULL 535
#define NUTRITION_LEVEL_WELL_FED 450
#define NUTRITION_LEVEL_FED 350
#define NUTRITION_LEVEL_HUNGRY 250
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index 168b31410..c436e5808 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -487,6 +487,9 @@
if(HAS_TRAIT(src, TRAIT_NOHUNGER))
return 1
+ if(!has_mouth())
+ return 1
+
if(nutrition < 100 && !blood)
if(message)
visible_message("[src] dry heaves!", \
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index 75b199d02..287dd4d29 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -318,15 +318,24 @@ GLOBAL_LIST_EMPTY(roundstart_races)
var/mob/living/carbon/human/H = C
if(NOGENITALS in H.dna.species.species_traits)
H.give_genitals(TRUE) //call the clean up proc to delete anything on the mob then return.
-
// EDIT ENDS
+ if(NOMOUTH in species_traits)
+ for(var/obj/item/bodypart/head/head in C.bodyparts)
+ head.mouth = FALSE
+
+
/datum/species/proc/on_species_loss(mob/living/carbon/human/C, datum/species/new_species, pref_load)
if(C.dna.species.exotic_bloodtype)
if(!new_species.exotic_bloodtype)
C.dna.blood_type = random_blood_type()
else
C.dna.blood_type = new_species.exotic_bloodtype
+
+ if(NOMOUTH in species_traits)
+ for(var/obj/item/bodypart/head/head in C.bodyparts)
+ head.mouth = TRUE
+
if(DIGITIGRADE in species_traits)
C.Digitigrade_Leg_Swap(TRUE)
for(var/X in inherent_traits)
diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm
index 6d93a5e13..150c9db70 100644
--- a/code/modules/reagents/reagent_containers.dm
+++ b/code/modules/reagents/reagent_containers.dm
@@ -65,6 +65,12 @@
var/who = (isnull(user) || eater == user) ? "your" : "[eater.p_their()]"
to_chat(user, "You have to remove [who] [covered] first!")
return 0
+ if(!eater.has_mouth())
+ if(eater == user)
+ to_chat(eater, "You have no mouth, and cannot eat.")
+ else
+ to_chat(user, "You can't feed [eater], because they have no mouth!")
+ return 0
return 1
/obj/item/reagent_containers/ex_act()
diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm
index a71cc199c..45f791b3c 100644
--- a/code/modules/surgery/bodyparts/head.dm
+++ b/code/modules/surgery/bodyparts/head.dm
@@ -34,6 +34,9 @@
var/lip_color = "white"
//If the head is a special sprite
var/custom_head
+
+ // if head has mouth; may depend on species
+ var/mouth = TRUE
/obj/item/bodypart/head/can_dismember(obj/item/I)
if(!((owner.stat == DEAD) || owner.InFullCritical()))
diff --git a/code/modules/surgery/organs/stomach.dm b/code/modules/surgery/organs/stomach.dm
index afa991ca7..a4f2041f0 100644
--- a/code/modules/surgery/organs/stomach.dm
+++ b/code/modules/surgery/organs/stomach.dm
@@ -120,6 +120,27 @@
return
owner.vomit(stun = FALSE)
-/obj/item/organ/stomach/ipc
- name = "ipc stomach"
+
+/obj/item/organ/stomach/synthliz
+ name = "synthetic lizardperson stomach"
icon_state = "stomach-ipc"
+
+// ipc power cell from oracle
+/obj/item/organ/stomach/cell
+ name = "micro-cell"
+ icon_state = "microcell"
+ w_class = WEIGHT_CLASS_NORMAL
+ zone = BODY_ZONE_CHEST
+ slot = ORGAN_SLOT_STOMACH
+ status = ORGAN_ROBOTIC
+ attack_verb = list("assault and battery'd")
+ desc = "A micro-cell, for IPC use only. Do not swallow."
+
+/obj/item/organ/stomach/cell/emp_act(severity)
+ switch(severity)
+ if(1)
+ owner.nutrition = 50
+ to_chat(owner, "Alert: Heavy EMP Detected. Rebooting power cell to prevent damage.")
+ if(2)
+ owner.nutrition = 250
+ to_chat(owner, "Alert: EMP Detected. Cycling battery.")
\ No newline at end of file
diff --git a/hyperstation/code/modules/mob/living/carbon/carbon.dm b/hyperstation/code/modules/mob/living/carbon/carbon.dm
index ec2f69c1d..3af2e9447 100644
--- a/hyperstation/code/modules/mob/living/carbon/carbon.dm
+++ b/hyperstation/code/modules/mob/living/carbon/carbon.dm
@@ -13,6 +13,11 @@
/mob/living/carbon/handle_status_effects()
..()
handle_pain()
+
+/mob/living/carbon/has_mouth()
+ var/obj/item/bodypart/head/head = get_bodypart(BODY_ZONE_HEAD)
+ if(head && head.mouth)
+ return TRUE
/mob/living/carbon/proc/handle_pain()
var/pain_amount = 0
diff --git a/hyperstation/code/modules/mob/living/carbon/human/species_types/ipc.dm b/hyperstation/code/modules/mob/living/carbon/human/species_types/ipc.dm
new file mode 100644
index 000000000..b3e22f9ef
--- /dev/null
+++ b/hyperstation/code/modules/mob/living/carbon/human/species_types/ipc.dm
@@ -0,0 +1,58 @@
+// APC powercord: oracle port
+
+/obj/item/apc_powercord
+ name = "power cord"
+ desc = "An internal power cord hooked up to a battery. Useful if you run on electricity. Not so much otherwise."
+ icon = 'icons/obj/power.dmi'
+ icon_state = "wire1"
+
+
+/obj/item/apc_powercord/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
+ if(!istype(target, /obj/machinery/power/apc) || !ishuman(user) || !proximity_flag)
+ return ..()
+ user.changeNext_move(CLICK_CD_MELEE)
+ var/mob/living/carbon/human/H = user
+ var/obj/item/organ/stomach/cell/battery = H.getorganslot(ORGAN_SLOT_STOMACH)
+ if(!battery)
+ to_chat(H, "You try to siphon energy from \the [target], but your power cell is gone!")
+ return
+
+ if(istype(H) && H.nutrition >= NUTRITION_LEVEL_ALMOST_FULL)
+ to_chat(user, "You are already fully charged!")
+ return
+
+ if(istype(target, /obj/machinery/power/apc))
+ var/obj/machinery/power/apc/A = target
+ if(A.cell && A.cell.charge > A.cell.maxcharge*0.25)
+ powerdraw_loop(A, H)
+ return
+ else
+ to_chat(user, "There is not enough charge to draw from that APC.")
+ return
+
+
+/obj/item/apc_powercord/proc/powerdraw_loop(obj/machinery/power/apc/A, mob/living/carbon/human/H)
+ H.visible_message("[H] inserts a power connector into the [A].", "You begin to draw power from the [A].")
+ while(do_after(H, 10, target = A))
+ if(!istype(A))
+ return
+ if(loc != H)
+ to_chat(H, "You must keep your connector out while charging!")
+ break
+ if(A.cell.charge == 0)
+ to_chat(H, "The [A] doesn't have enough charge to spare.")
+ break
+ A.charging = 1
+ if(A.cell.charge >= 500)
+ H.nutrition += 50
+ A.cell.charge -= 250
+ to_chat(H, "You siphon off some of the stored charge for your own use.")
+ else
+ H.nutrition += A.cell.charge/10
+ A.cell.charge = 0
+ to_chat(H, "You siphon off as much as the [A] can spare.")
+ break
+ if(H.nutrition > NUTRITION_LEVEL_WELL_FED)
+ to_chat(H, "You are now fully charged.")
+ break
+ H.visible_message("[H] unplugs from the [A].", "You unplug from the [A].")
\ No newline at end of file
diff --git a/hyperstation/code/modules/mob/mob_helpers.dm b/hyperstation/code/modules/mob/mob_helpers.dm
index 00f9c8631..0a47f7b0a 100644
--- a/hyperstation/code/modules/mob/mob_helpers.dm
+++ b/hyperstation/code/modules/mob/mob_helpers.dm
@@ -27,3 +27,7 @@ mob/proc/checkloadappearance()
else
to_chat(H, "You either took too long or chose not to change. Alrighty. Remember, you have 90 seconds from spawn to get to a mirror and still do it if you wish.")
return
+
+// oracle port
+/mob/proc/has_mouth()
+ return FALSE
\ No newline at end of file
diff --git a/hyperstation/code/modules/surgery/organs/augments_arms.dm b/hyperstation/code/modules/surgery/organs/augments_arms.dm
index 8430fcac5..933b584eb 100644
--- a/hyperstation/code/modules/surgery/organs/augments_arms.dm
+++ b/hyperstation/code/modules/surgery/organs/augments_arms.dm
@@ -23,3 +23,11 @@
w_class = WEIGHT_CLASS_BULKY
sharpness = IS_SHARP_ACCURATE
attack_verb = list("slashed", "cut")
+
+
+// oracle port
+/obj/item/organ/cyberimp/arm/power_cord
+ name = "power cord implant"
+ desc = "An internal power cord hooked up to a battery. Useful if you run on volts."
+ contents = newlist(/obj/item/apc_powercord)
+ zone = "l_arm"
\ No newline at end of file
diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi
index b0e6ab7bffcc15f29d871faa4236fbc3bf4dcc09..3cf1c4bc1bd6ca26888ef9e1a615031e78dce4aa 100644
GIT binary patch
delta 19514
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
delta 19318
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
diff --git a/modular_citadel/code/modules/mob/living/carbon/human/species_types/furrypeople.dm b/modular_citadel/code/modules/mob/living/carbon/human/species_types/furrypeople.dm
index 2aa99b95a..fe0e28949 100644
--- a/modular_citadel/code/modules/mob/living/carbon/human/species_types/furrypeople.dm
+++ b/modular_citadel/code/modules/mob/living/carbon/human/species_types/furrypeople.dm
@@ -261,7 +261,7 @@
mutant_heart = /obj/item/organ/heart/ipc
mutantlungs = /obj/item/organ/lungs/ipc
mutantliver = /obj/item/organ/liver/ipc
- mutantstomach = /obj/item/organ/stomach/ipc
+ mutantstomach = /obj/item/organ/stomach/synthliz
mutanteyes = /obj/item/organ/eyes/ipc
exotic_bloodtype = "SY"
diff --git a/modular_citadel/code/modules/mob/living/carbon/human/species_types/ipc.dm b/modular_citadel/code/modules/mob/living/carbon/human/species_types/ipc.dm
index f1f7c07a3..684ae707c 100644
--- a/modular_citadel/code/modules/mob/living/carbon/human/species_types/ipc.dm
+++ b/modular_citadel/code/modules/mob/living/carbon/human/species_types/ipc.dm
@@ -6,7 +6,7 @@
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
blacklisted = 0
sexes = 0
- species_traits = list(MUTCOLORS,NOEYES,NOTRANSSTING)
+ species_traits = list(MUTCOLORS,NOEYES,NOTRANSSTING,NOMOUTH)
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
mutant_bodyparts = list("ipc_screen", "ipc_antenna")
default_features = list("ipc_screen" = "Blank", "ipc_antenna" = "None")
@@ -16,8 +16,9 @@
mutant_heart = /obj/item/organ/heart/ipc
mutantlungs = /obj/item/organ/lungs/ipc
mutantliver = /obj/item/organ/liver/ipc
- mutantstomach = /obj/item/organ/stomach/ipc
+ mutantstomach = /obj/item/organ/stomach/cell
mutanteyes = /obj/item/organ/eyes/ipc
+ mutant_organs = list(/obj/item/organ/cyberimp/arm/power_cord) // oracle port
exotic_bloodtype = "HF"