Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Даём возможность пощупать органы и вырывать их #12653

Closed
wants to merge 54 commits into from
Closed
Show file tree
Hide file tree
Changes from 41 commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
082e103
firststep
maleyvich Dec 29, 2023
e93e0d7
Revert "firststep"
maleyvich Dec 29, 2023
4f41785
firststep
maleyvich Dec 29, 2023
90d1b4b
fix
maleyvich Dec 29, 2023
ec4b7e8
Update surgery.dmi
maleyvich Dec 29, 2023
8d13316
ipcpumpa
maleyvich Dec 29, 2023
3337c05
Update surgery.dmi
maleyvich Dec 29, 2023
2925012
resprite heart
maleyvich Dec 29, 2023
7e96491
Update organ_internal.dm
maleyvich Dec 29, 2023
448fb2a
human lungs
maleyvich Dec 29, 2023
5f91706
vox lungs
maleyvich Dec 29, 2023
25d8711
skrell lungs
maleyvich Dec 29, 2023
2185855
fix
maleyvich Dec 29, 2023
ecda74a
diona lungs
maleyvich Dec 30, 2023
7fec4ee
surgery
maleyvich Dec 30, 2023
4f518f2
Merge branch 'master' into heartsprites
maleyvich Dec 30, 2023
3e3281d
Update surgery.dmi
maleyvich Dec 30, 2023
4cbbf5b
Merge branch 'heartsprites' of https://github.com/maleyvich/TauCetiCl…
maleyvich Dec 30, 2023
3906b7a
robotic liver
maleyvich Dec 30, 2023
af657f2
liver
maleyvich Dec 30, 2023
96f1d89
Update surgery.dmi
maleyvich Dec 30, 2023
fa5654d
brains and eyes
maleyvich Dec 30, 2023
5712a1b
kidneys
maleyvich Dec 30, 2023
56dc26a
shizofrenia
maleyvich Dec 30, 2023
cbd3b6c
Update implant.dm
maleyvich Dec 30, 2023
569a0ca
Update implant.dm
maleyvich Dec 30, 2023
4818c22
fafafsd
maleyvich Dec 31, 2023
8dc4564
GREATFIX
maleyvich Dec 31, 2023
0399c22
item/brain replace
maleyvich Jan 1, 2024
98615f8
fix
maleyvich Jan 1, 2024
0d04460
internal
maleyvich Jan 1, 2024
b3451c5
operation work
maleyvich Jan 2, 2024
3b65e31
Update implant.dm
maleyvich Jan 2, 2024
987b304
Update implant.dm
maleyvich Jan 2, 2024
2bdfe74
mapfix
maleyvich Jan 2, 2024
66dcad4
Merge branch 'master' into heartsprites
maleyvich Jan 2, 2024
06ed04f
fiox
maleyvich Jan 2, 2024
8be71ae
final code
maleyvich Jan 3, 2024
6501289
braincore delete
maleyvich Jan 3, 2024
6191c30
Update code/modules/organs/organ_internal.dm
maleyvich Jan 3, 2024
046ad60
Update code/modules/organs/organ_internal.dm
maleyvich Jan 3, 2024
93f20ec
Update code/modules/organs/organ.dm
maleyvich Jan 3, 2024
37b7cd8
organsforroboticsandmed
maleyvich Jan 4, 2024
9e99f6c
Merge branch 'heartsprites' of https://github.com/maleyvich/TauCetiCl…
maleyvich Jan 4, 2024
ea60532
null owner
maleyvich Jan 4, 2024
1235144
sprites
maleyvich Jan 4, 2024
7d1a354
rename
maleyvich Jan 4, 2024
2867e34
embed -= internal
maleyvich Jan 4, 2024
25af026
Update organ_internal.dm
maleyvich Jan 5, 2024
e35d558
Update code/modules/mob/living/carbon/brain/MMI.dm
maleyvich Jan 5, 2024
a6bdbe9
fix
maleyvich Jan 6, 2024
166a5d5
oops
maleyvich Jan 6, 2024
d27314f
Update bodypart_manipulation.dm
maleyvich Jan 6, 2024
1559c71
ohoho
maleyvich Jan 6, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion code/datums/spells/inflict_handler.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
if(ishuman(target) || ismonkey(target))
var/mob/living/carbon/C = target
if(C.has_brain()) // Their brain is already taken out
var/obj/item/brain/B = new(C.loc)
var/obj/item/organ/internal/brain/B = new(C.loc)
B.transfer_identity(C)
target.gib()
if("disintegrate")
Expand Down
2 changes: 1 addition & 1 deletion code/game/dna/dna_modifier.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@
occupant = occupant_body = C
break
if(isbrain(M))
var/obj/item/brain/B = M
var/obj/item/organ/internal/brain/B = M
occupant = B.brainmob
occupant_body = B
break
Expand Down
2 changes: 1 addition & 1 deletion code/modules/food/recipes_microwave.dm
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@
/datum/recipe/microwave/brainburger
items = list(
/obj/item/weapon/reagent_containers/food/snacks/bun,
/obj/item/brain
/obj/item/organ/internal/brain/
)
result = /obj/item/weapon/reagent_containers/food/snacks/brainburger

Expand Down
2 changes: 1 addition & 1 deletion code/modules/food/recipes_oven.dm
Original file line number Diff line number Diff line change
Expand Up @@ -385,7 +385,7 @@
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/weapon/reagent_containers/food/snacks/dough,
/obj/item/brain
/obj/item/organ/internal/brain
)
result = /obj/item/weapon/reagent_containers/food/snacks/sliceable/cake/brain

Expand Down
6 changes: 3 additions & 3 deletions code/modules/mob/living/carbon/brain/MMI.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
var/mob/living/carbon/brain/brainmob = null//The current occupant.

/obj/item/device/mmi/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/brain) && !brainmob) //Time to stick a brain in it --NEO
var/obj/item/brain/B = I
if(istype(I, /obj/item/organ/internal/brain) && !brainmob) //Time to stick a brain in it --NEO
var/obj/item/organ/internal/brain/B = I
if(!B.brainmob)
to_chat(user, "<span class='warning'>You aren't sure where this brain came from, but you're pretty sure it's a useless brain.</span>")
return
Expand Down Expand Up @@ -83,7 +83,7 @@
QDEL_NULL(brainmob)
return

var/obj/item/brain/brain
var/obj/item/organ/internal/brain
maleyvich marked this conversation as resolved.
Show resolved Hide resolved
if(user)
to_chat(user, "<span class='notice'>You upend the MMI, spilling the brain onto the floor.</span>")
brain = new(get_turf(user))
Expand Down
39 changes: 0 additions & 39 deletions code/modules/mob/living/carbon/brain/brain_item.dm

This file was deleted.

2 changes: 1 addition & 1 deletion code/modules/mob/living/carbon/brain/death.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@
..()
if(container && isMMI(container))
qdel(container)//Gets rid of the MMI if there is one
if(istype(old_loc, /obj/item/brain))
if(istype(old_loc, /obj/item/organ/internal/brain))
qdel(old_loc)//Gets rid of the brain item
18 changes: 18 additions & 0 deletions code/modules/mob/living/carbon/human/life.dm
Original file line number Diff line number Diff line change
Expand Up @@ -834,6 +834,24 @@ var/global/list/tourette_bad_words= list(
else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs
ear_damage = max(ear_damage-0.05, 0)

//Liver
if(should_have_organ(O_LIVER) && !has_organ(O_LIVER))
adjustToxLoss(0.2)
blurEyes(0.5)

//Kidneys
if(should_have_organ(O_KIDNEYS) && !has_organ(O_KIDNEYS))
adjustToxLoss(0.4)
adjustBruteLoss(0.2)

//Heart
if(should_have_organ(O_HEART) && !has_organ(O_HEART))
death()

//Lungs
if(should_have_organ(O_LUNGS) && !has_organ(O_LUNGS))
adjustOxyLoss(1.5)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

это нужно вынести в отдельный прок
и еще эффекты меня напрягают, инста смерть без сердца даже с подключенным аиком/дексалином плюс/прочими приколами - что-то странное
или легкие, которые накидывают оксиурон, вместо того чтобы лишать дыхания хумана


//Other
if(stunned)
speech_problem_flag = 1
Expand Down
3 changes: 1 addition & 2 deletions code/modules/mob/living/silicon/robot/drone/drone_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@
/obj/item/stack/sheet/plasteel,
/obj/item/weapon/circuitboard,
/obj/item/device/mmi,
/obj/item/brain,
/obj/item/organ/internal/brain,
/obj/item/device/mmi/posibrain,
/obj/item/robot_parts,
/obj/item/weapon/stock_parts,
Expand All @@ -199,7 +199,6 @@
/obj/item/weapon/storage/pill_bottle,
/obj/item/organ/internal,
/obj/item/organ/external,
/obj/item/brain,
/obj/item/robot_parts/l_arm,
/obj/item/robot_parts/r_arm,
/obj/item/robot_parts/l_leg,
Expand Down
13 changes: 11 additions & 2 deletions code/modules/organs/organ.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,23 @@
loc = null
owner = H

/obj/item/organ/proc/del_owner(mob/living/carbon/human/H, datum/species/S)
loc = null
owner = H
maleyvich marked this conversation as resolved.
Show resolved Hide resolved

/obj/item/organ/proc/insert_organ(mob/living/carbon/human/H, surgically = FALSE, datum/species/S)
set_owner(H, S)

STOP_PROCESSING(SSobj, src)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

зачем?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

меня попросили я и убрал это, уверяя что процессинг выполняется самим хуманом


if(parent_bodypart)
parent = owner.bodyparts_by_name[parent_bodypart]


/obj/item/organ/proc/remove_organ(mob/living/carbon/human/H, surgically = FALSE, datum/species/S)
del_owner(H, S)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тут даже аргументы не совпадают с тем что объявлено в проке 😔


if(parent_bodypart)
parent = null
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

зачем эта проверка здесь? нам ведь в любом случае нужно избавиться от ссылки на парента


/obj/item/organ/process()
return 0

Expand Down
2 changes: 1 addition & 1 deletion code/modules/organs/organ_external.dm
Original file line number Diff line number Diff line change
Expand Up @@ -905,7 +905,7 @@ Note that amputating the affected organ does in fact remove the infection from t
var/obj/item/device/mmi/posibrain/B = new(loc)
B.transfer_identity(brainmob)
else
var/obj/item/brain/B = new(loc)
var/obj/item/organ/internal/brain/B = new(loc)
B.transfer_identity(brainmob)

brain_op_stage = 4.0
Expand Down