Animals ripping out organs will get organ items instead of meat slabs.

This commit is contained in:
MistakeNot4892
2023-02-01 13:19:37 +11:00
parent e00b208c90
commit 88e865331a
3 changed files with 13 additions and 19 deletions
+9 -1
View File
@@ -802,10 +802,18 @@
center_of_mass = list("x"=16, "y"=16)
bitesize = 3
/obj/item/reagent_containers/food/snacks/organ/Initialize()
/obj/item/reagent_containers/food/snacks/organ/Initialize(var/ml, var/obj/item/organ/donor)
. = ..()
reagents.add_reagent("protein", rand(3,5))
reagents.add_reagent("toxin", rand(1,3))
if(donor)
appearance = donor
if(donor.reagents?.total_volume)
donor.reagents.trans_to(src, donor.reagents.total_volume)
fingerprints = donor.fingerprints?.Copy()
fingerprintshidden = donor.fingerprintshidden?.Copy()
fingerprintslast = donor.fingerprintslast
qdel(donor)
/obj/item/reagent_containers/food/snacks/tofu
name = "Tofu"
@@ -104,10 +104,9 @@
if(istype(snack, /obj/item/organ))
var/obj/item/organ/organ = snack
if(organ.meat_type)
snack = new organ.meat_type(src)
qdel(organ)
else if(!istype(snack) || !snack.reagents?.total_volume)
if(organ.meat_type) // Let's assume not having a meat_type means it's not edible.
snack = new /obj/item/reagent_containers/food/snacks/organ(get_turf(snack), snack)
if(!istype(snack) || !snack.reagents?.total_volume)
to_chat(src, SPAN_WARNING("\The [snack] doesn't seem edible."))
return
+1 -14
View File
@@ -431,20 +431,7 @@ var/global/list/organ_cache = list()
blood_splatter(src,B,1)
user.drop_from_inventory(src)
var/obj/item/reagent_containers/food/snacks/organ/O = new(get_turf(src))
O.name = name
O.icon = icon
O.icon_state = icon_state
// Pass over the blood.
reagents.trans_to(O, reagents.total_volume)
if(fingerprints) O.fingerprints = fingerprints.Copy()
if(fingerprintshidden) O.fingerprintshidden = fingerprintshidden.Copy()
if(fingerprintslast) O.fingerprintslast = fingerprintslast
user.put_in_active_hand(O)
qdel(src)
user.put_in_active_hand(new /obj/item/reagent_containers/food/snacks/organ(get_turf(src), src))
/obj/item/organ/attack_self(mob/user as mob)