diff --git a/code/WorkInProgress/Chemistry-Tools.dm b/code/WorkInProgress/Chemistry-Tools.dm
index ea959fbc9f6..42cdc93c9d5 100644
--- a/code/WorkInProgress/Chemistry-Tools.dm
+++ b/code/WorkInProgress/Chemistry-Tools.dm
@@ -222,6 +222,7 @@
m_amt = 2000
examine()
+ set src in view()
..()
if (!(usr in view(2)) && usr!=src.loc) return
usr << "\icon [src] Syringe gun:"
@@ -879,6 +880,7 @@
return
examine()
+ set src in view()
..()
if (!(usr in range(0)) && usr!=src.loc) return
if (bitecount==0)
@@ -1000,6 +1002,7 @@
return
examine()
+ set src in view()
..()
if (!(usr in range(0)) && usr!=src.loc) return
if(!reagents || reagents.total_volume==0)
@@ -1743,7 +1746,24 @@
icon_state = "carrotcake"
New()
..()
- reagents.add_reagent("nutriment", 8)
+ reagents.add_reagent("nutriment", 30)
+ bitesize = 2
+
+ attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/weapon/kitchenknife /*|| /obj/item/weapon/scalpel*/))
+ W.visible_message(" \red You slice the [src]! ", 1)
+ for(var/i=0,i<5,i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice (src.loc)
+ del(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice
+ name = "Carrot Cake slice"
+ desc = "Carrotty slice of Carrot Cake"
+ icon_state = "carrotcake_slice"
+ New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/cheesecake
@@ -1752,7 +1772,24 @@
icon_state = "cheesecake"
New()
..()
- reagents.add_reagent("nutriment", 8)
+ reagents.add_reagent("nutriment", 30)
+ bitesize = 2
+
+ attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/weapon/kitchenknife /*|| /obj/item/weapon/scalpel*/))
+ W.visible_message(" \red You slice the [src]! ", 1)
+ for(var/i=0,i<5,i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/cheesecakeslice (src.loc)
+ del(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/cheesecakeslice
+ name = "Cheese Cake slice"
+ desc = "Slice of pure cheestisfaction"
+ icon_state = "cheesecake_slice"
+ New()
+ ..()
+ reagents.add_reagent("nutriment", 6)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/plaincake
@@ -1761,7 +1798,23 @@
icon_state = "plaincake"
New()
..()
- reagents.add_reagent("nutriment", 4)
+ reagents.add_reagent("nutriment", 25)
+ attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(istype(W, /obj/item/weapon/kitchenknife /*|| /obj/item/weapon/scalpel*/))
+ W.visible_message(" \red You slice the [src]! ", 1)
+ for(var/i=0,i<5,i++)
+ new /obj/item/weapon/reagent_containers/food/snacks/plaincakeslice (src.loc)
+ del(src)
+ return
+
+/obj/item/weapon/reagent_containers/food/snacks/plaincakeslice
+ name = "Vanilla Cake slice"
+ desc = "Just a slice of cake, it is enough for everyone."
+ icon_state = "plaincake_slice"
+ New()
+ ..()
+ reagents.add_reagent("nutriment", 5)
+ bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/humeatpie
name = "Meat-pie"
@@ -1785,7 +1838,7 @@
/obj/item/weapon/reagent_containers/food/snacks/xemeatpie
name = "Xeno-pie"
- icon_state = "pie" //placeholder
+ icon_state = "xenomeatpie"
desc = "A delicious meatpie. Probably heretical."
New()
..()
diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm
index 530fe25ceef..01d801d55ff 100644
--- a/code/game/gamemodes/cult/cult.dm
+++ b/code/game/gamemodes/cult/cult.dm
@@ -185,7 +185,7 @@
if("survive")
explanation = "Our knowledge must live on. Make sure at least [acolytes_needed] acolytes escape on the shuttle to spread their work on an another station."
if("sacrifice")
- if(sacrifice_target)
+ if(sacrifice_target && sacrifice_target.current)
explanation = "Sacrifice [sacrifice_target.current.real_name], the [sacrifice_target.assigned_role]. You will need the sacrifice rune (Hell blood join) and three acolytes to do so."
else
explanation = "Free objective."
diff --git a/code/game/gamemodes/intercept_report.dm b/code/game/gamemodes/intercept_report.dm
index 4880728d97f..524c444d6ee 100644
--- a/code/game/gamemodes/intercept_report.dm
+++ b/code/game/gamemodes/intercept_report.dm
@@ -61,14 +61,17 @@
if (!man.mind) continue
if (man.mind.special_role == "Syndicate") continue
dudes += man
- var/dude = pick(dudes)
- return dude
+ if (dudes.len==0)
+ return null
+ return pick(dudes)
/datum/intercept_text/proc/pick_fingerprints()
var/mob/living/carbon/human/dude = src.pick_mob()
- if (!dude) return pick_fingerprints()
- var/print = "[md5(dude.dna.uni_identity)]"
- return print
+ //if (!dude) return pick_fingerprints() //who coded that is totally crasy or just a traitor. -- rastaf0
+ if (dude)
+ return num2text(md5(dude.dna.uni_identity))
+ else
+ return num2text(md5(num2text(rand(1,10000))))
/datum/intercept_text/proc/build_traitor(correct_mob)
var/name_1 = pick(src.org_names_1)
diff --git a/code/game/magic/cultist/runes.dm b/code/game/magic/cultist/runes.dm
index 10ca181b367..139a81ed830 100644
--- a/code/game/magic/cultist/runes.dm
+++ b/code/game/magic/cultist/runes.dm
@@ -522,40 +522,40 @@ var/list/sacrificed = list()
if (ticker.mode.name == "cult")
if(H == ticker.mode:sacrifice_target.current)
if(cultsinrange.len >= 3)
- H.gib(1)
sacrificed += H.mind
+ H.gib(1)
usr << "\red The Geometer of Blood accepts this sacrifice, your objective is now complete."
else
usr << "\red Your target's earthly bonds are too strong. You need more cultists to succeed in this ritual."
else
if(cultsinrange.len >= 3)
if(H.stat !=2)
- H.gib(1)
if(prob(80))
usr << "\red The Geometer of Blood accepts this sacrifice."
ticker.mode:grant_runeword(usr)
else
usr << "\red The Geometer of blood accepts this sacrifice."
usr << "\red However, this soul was not enough to gain His favor."
- else
H.gib(1)
+ else
if(prob(40))
usr << "\red The Geometer of blood accepts this sacrifice."
ticker.mode:grant_runeword(usr)
else
usr << "\red The Geometer of blood accepts this sacrifice."
usr << "\red However, a mere dead body is not enough to satisfy Him."
+ H.gib(1)
else
if(H.stat !=2)
usr << "\red The victim is still alive, you will need more cultists chanting for the sacrifice to succeed."
else
- H.gib(1)
if(prob(40))
usr << "\red The Geometer of blood accepts this sacrifice."
ticker.mode:grant_runeword(usr)
else
usr << "\red The Geometer of blood accepts this sacrifice."
usr << "\red However, a mere dead body is not enough to satisfy Him."
+ H.gib(1)
else
if(cultsinrange.len >= 3)
H.gib(1)
diff --git a/icons/obj/food.dmi b/icons/obj/food.dmi
index f39922d8c09..b084fa68b44 100644
Binary files a/icons/obj/food.dmi and b/icons/obj/food.dmi differ