diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm
index be1e671756..179f501fd1 100644
--- a/code/__DEFINES/maps.dm
+++ b/code/__DEFINES/maps.dm
@@ -63,7 +63,7 @@ require only minor tweaks.
#define ZTRAITS_CENTCOM list(ZTRAIT_CENTCOM = TRUE)
#define ZTRAITS_STATION list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_STATION = TRUE)
#define ZTRAITS_SPACE list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_SPACE_RUINS = TRUE)
-#define ZTRAITS_LAVALAND list(ZTRAIT_MINING = TRUE, ZTRAIT_LAVA_RUINS = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 2)
+#define ZTRAITS_LAVALAND list(ZTRAIT_MINING = TRUE, ZTRAIT_LAVA_RUINS = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 5)
#define ZTRAITS_REEBE list(ZTRAIT_REEBE = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 0.5)
#define DL_NAME "name"
diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm
index 4d72f0a8e2..84e5ba4f82 100644
--- a/code/modules/admin/verbs/adminpm.dm
+++ b/code/modules/admin/verbs/adminpm.dm
@@ -55,7 +55,7 @@
if(AH)
message_admins("[key_name_admin(src)] has started replying to [key_name(C, 0, 0)]'s admin help.")
- var/msg = input(src,"Message:", "Private message to [key_name(C, 0, 0)]") as text|null
+ var/msg = input(src,"Message:", "Private message to [key_name(C, 0, 0)]") as message|null
if (!msg)
message_admins("[key_name_admin(src)] has cancelled their reply to [key_name(C, 0, 0)]'s admin help.")
return
@@ -112,7 +112,7 @@
//get message text, limit it's length.and clean/escape html
if(!msg)
- msg = input(src,"Message:", "Private message to [key_name(recipient, 0, 0)]") as text|null
+ msg = input(src,"Message:", "Private message to [key_name(recipient, 0, 0)]") as message|null
msg = trim(msg)
if(!msg)
return
diff --git a/code/modules/jobs/job_types/security.dm b/code/modules/jobs/job_types/security.dm
index c69a5873b1..e7e0922f62 100644
--- a/code/modules/jobs/job_types/security.dm
+++ b/code/modules/jobs/job_types/security.dm
@@ -51,7 +51,7 @@ Head of Security
suit_store = /obj/item/gun/energy/e_gun
r_pocket = /obj/item/assembly/flash/handheld
l_pocket = /obj/item/restraints/handcuffs
- backpack_contents = list(/obj/item/melee/baton/loaded=1)
+ backpack_contents = list(/obj/item/melee/classic_baton/telescopic=1)
backpack = /obj/item/storage/backpack/security
satchel = /obj/item/storage/backpack/satchel/sec
diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm
index 47e248f681..209a8118fc 100644
--- a/code/modules/mining/machine_vending.dm
+++ b/code/modules/mining/machine_vending.dm
@@ -26,11 +26,13 @@
new /datum/data/mining_equipment("Explorer's Webbing", /obj/item/storage/belt/mining, 500),
new /datum/data/mining_equipment("Point Transfer Card", /obj/item/card/mining_point_card, 500),
new /datum/data/mining_equipment("Survival Medipen", /obj/item/reagent_containers/hypospray/medipen/survival, 500),
- new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/storage/firstaid/brute, 600),
new /datum/data/mining_equipment("Tracking Implant Kit", /obj/item/storage/box/minertracker, 600),
new /datum/data/mining_equipment("Jaunter", /obj/item/wormhole_jaunter, 750),
new /datum/data/mining_equipment("Kinetic Crusher", /obj/item/twohanded/required/kinetic_crusher, 750),
new /datum/data/mining_equipment("Kinetic Accelerator", /obj/item/gun/energy/kinetic_accelerator, 750),
+ new /datum/data/mining_equipment("Brute First-Aid Kit", /obj/item/storage/firstaid/brute, 800),
+ new /datum/data/mining_equipment("Burn First-Aid Kit", /obj/item/storage/firstaid/fire, 800),
+ new /datum/data/mining_equipment("First-Aid Kit", /obj/item/storage/firstaid/regular, 800),
new /datum/data/mining_equipment("Advanced Scanner", /obj/item/t_scanner/adv_mining_scanner, 800),
new /datum/data/mining_equipment("Resonator", /obj/item/resonator, 800),
new /datum/data/mining_equipment("Fulton Pack", /obj/item/extraction_pack, 1000),
diff --git a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm
index 67005fad31..80b2838167 100644
--- a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm
+++ b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm
@@ -25,10 +25,6 @@
mutanteyes = /obj/item/organ/eyes/night_vision/mushroom
use_skintones = FALSE
var/datum/martial_art/mushpunch/mush
- blacklisted = TRUE //See comment below about locking it out of roundstart. The species is not intended to be available to players yet - and this means wizards, too.
-
-/datum/species/mush/check_roundstart_eligible()
- return FALSE //hard locked out of roundstart on the order of design lead kor, this can be removed in the future when planetstation is here OR SOMETHING but right now we have a problem with races.
/datum/species/mush/after_equip_job(datum/job/J, mob/living/carbon/human/H)
H.grant_language(/datum/language/mushroom) //pomf pomf
diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
index aaa7e30de0..671e62a9e6 100644
--- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
+++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm
@@ -345,6 +345,7 @@
C.hal_screwyhud = SCREWYHUD_HEALTHY
C.adjustBruteLoss(-0.25*REM, 0)
C.adjustFireLoss(-0.25*REM, 0)
+ C.adjustStaminaLoss(-0.5*REM, 0)
..()
return TRUE
@@ -883,7 +884,7 @@
M.AdjustStun(-60, 0)
M.AdjustKnockdown(-60, 0)
M.AdjustUnconscious(-60, 0)
- M.adjustStaminaLoss(-5*REM, 0)
+ M.adjustStaminaLoss(-20*REM, 0)
..()
. = 1
@@ -1053,9 +1054,35 @@
M.adjustToxLoss(-5*REM, 0)
M.adjustBrainLoss(-15*REM)
M.adjustCloneLoss(-3*REM, 0)
+ M.adjustStaminaLoss(-20*REM,0)
..()
. = 1
+/datum/reagent/medicine/neo_jelly
+ name = "Neo Jelly"
+ id = "neo_jelly"
+ description = "Gradually regenerates all types of damage, without harming slime anatomy.Can OD"
+ reagent_state = LIQUID
+ metabolization_rate = 1 * REAGENTS_METABOLISM
+ color = "#91D865"
+ overdose_threshold = 30
+ taste_description = "jelly"
+
+/datum/reagent/medicine/neo_jelly/on_mob_life(mob/living/carbon/M)
+ M.adjustBruteLoss(-1.5*REM, 0)
+ M.adjustFireLoss(-1.5*REM, 0)
+ M.adjustOxyLoss(-1.5*REM, 0)
+ M.adjustToxLoss(-1.5*REM, 0, TRUE) //heals TOXINLOVERs
+ . = 1
+ ..()
+
+/datum/reagent/medicine/neo_jelly/overdose_process(mob/living/M)
+ M.adjustOxyLoss(2.6*REM, 0)
+ M.adjustBruteLoss(3.5*REM, 0)
+ M.adjustFireLoss(3.5*REM, 0)
+ ..()
+ . = 1
+
/datum/reagent/medicine/earthsblood //Created by ambrosia gaia plants
name = "Earthsblood"
id = "earthsblood"
@@ -1136,12 +1163,12 @@
M.AdjustUnconscious(-20, 0)
M.AdjustStun(-20, 0)
M.AdjustKnockdown(-20, 0)
- M.adjustStaminaLoss(-1, 0)
+ M.adjustStaminaLoss(-30, 0)
..()
return TRUE
/datum/reagent/medicine/changelingadrenaline/overdose_process(mob/living/M as mob)
- M.adjustToxLoss(1, 0)
+ M.adjustToxLoss(5, 0) //let's make this mildly more toxic because of the stamina buff
..()
return TRUE
@@ -1220,7 +1247,7 @@
M.AdjustStun(-5, 0)
M.AdjustKnockdown(-5, 0)
M.AdjustUnconscious(-5, 0)
- M.adjustStaminaLoss(-0.5*REM, 0)
+ M.adjustStaminaLoss(-1*REM, 0)
M.Jitter(1)
metabolization_rate = 0.01 * REAGENTS_METABOLISM * rand(5,20) // randomizes metabolism between 0.02 and 0.08 per tick
. = TRUE
diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm
index 1fa8b408cd..b88f680dbb 100644
--- a/code/modules/reagents/reagent_containers/hypospray.dm
+++ b/code/modules/reagents/reagent_containers/hypospray.dm
@@ -156,9 +156,9 @@
name = "survival medipen"
desc = "A medipen for surviving in the harshest of environments, heals and protects from environmental hazards. WARNING: Do not inject more than one pen in quick succession."
icon_state = "stimpen"
- volume = 57
- amount_per_transfer_from_this = 57
- list_reagents = list("salbutamol" = 10, "leporazine" = 15, "tricordrazine" = 15, "epinephrine" = 10, "lavaland_extract" = 2, "omnizine" = 5)
+ volume = 52
+ amount_per_transfer_from_this = 52
+ list_reagents = list("salbutamol" = 10, "leporazine" = 15, "neo_jelly" = 15, "epinephrine" = 10, "lavaland_extract" = 2)
/obj/item/reagent_containers/hypospray/medipen/species_mutator
name = "species mutator medipen"
diff --git a/html/changelogs/AutoChangeLog-pr-7559.yml b/html/changelogs/AutoChangeLog-pr-7559.yml
new file mode 100644
index 0000000000..2f881b5565
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7559.yml
@@ -0,0 +1,4 @@
+author: "Poojawa"
+delete-after: True
+changes:
+ - bugfix: "Fixes APCs being replaced in maint from counting Maint as their wall turff"
diff --git a/html/changelogs/AutoChangeLog-pr-7560.yml b/html/changelogs/AutoChangeLog-pr-7560.yml
new file mode 100644
index 0000000000..cf5dc1e4a7
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7560.yml
@@ -0,0 +1,4 @@
+author: "izzyinbox"
+delete-after: True
+changes:
+ - tweak: "changes the admin-pm input box from single line to multi-line"
diff --git a/html/changelogs/AutoChangeLog-pr-7567.yml b/html/changelogs/AutoChangeLog-pr-7567.yml
new file mode 100644
index 0000000000..ec086fdd41
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7567.yml
@@ -0,0 +1,4 @@
+author: "deathride58"
+delete-after: True
+changes:
+ - rscadd: "mushroom people are now roundstart on live"
diff --git a/html/changelogs/AutoChangeLog-pr-7569.yml b/html/changelogs/AutoChangeLog-pr-7569.yml
new file mode 100644
index 0000000000..e63badc693
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7569.yml
@@ -0,0 +1,4 @@
+author: "Tupinambis"
+delete-after: True
+changes:
+ - tweak: "By popular request, makes the Head of Security spawn with a telebaton instead of a stun baton."
diff --git a/html/changelogs/AutoChangeLog-pr-7582.yml b/html/changelogs/AutoChangeLog-pr-7582.yml
new file mode 100644
index 0000000000..619d36b2f5
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7582.yml
@@ -0,0 +1,4 @@
+author: "izzyinbox"
+delete-after: True
+changes:
+ - bugfix: "Tennis balls now equip and show up in the correct slots"
diff --git a/html/changelogs/AutoChangeLog-pr-7583.yml b/html/changelogs/AutoChangeLog-pr-7583.yml
new file mode 100644
index 0000000000..ddf4225679
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7583.yml
@@ -0,0 +1,4 @@
+author: "izzyinbox"
+delete-after: True
+changes:
+ - rscadd: "Adds option in the hide/expose genitals verb to hide genitals even without clothes"
diff --git a/html/changelogs/AutoChangeLog-pr-7587.yml b/html/changelogs/AutoChangeLog-pr-7587.yml
new file mode 100644
index 0000000000..c82480e06e
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-7587.yml
@@ -0,0 +1,4 @@
+author: "Poojawa"
+delete-after: True
+changes:
+ - rscadd: "Added Vore based moodlets, primitive and ain't gunna adapt for not belly things but w/e"
diff --git a/modular_citadel/code/datums/mood_events/generic_negative_events.dm b/modular_citadel/code/datums/mood_events/generic_negative_events.dm
index cc7e714819..c0f2591656 100644
--- a/modular_citadel/code/datums/mood_events/generic_negative_events.dm
+++ b/modular_citadel/code/datums/mood_events/generic_negative_events.dm
@@ -9,3 +9,13 @@
description = "A plush I tried to pet had no stuffing...\n"
mood_change = -1
timeout = 1200
+
+/datum/mood_event/emptypred
+ description = "I had to let someone out.\n"
+ mood_change = -2
+ timeout = 600
+
+/datum/mood_event/emptyprey
+ description = "It feels quite cold out here.\n"
+ mood_change = -2
+ timeout = 600
\ No newline at end of file
diff --git a/modular_citadel/code/datums/mood_events/generic_positive_events.dm b/modular_citadel/code/datums/mood_events/generic_positive_events.dm
index 798d77db99..4c581d8184 100644
--- a/modular_citadel/code/datums/mood_events/generic_positive_events.dm
+++ b/modular_citadel/code/datums/mood_events/generic_positive_events.dm
@@ -23,4 +23,12 @@
/datum/mood_event/orgasm
description = "I came!" //funny meme haha
mood_change = 3
- timeout = 1000
\ No newline at end of file
+ timeout = 1000
+
+/datum/mood_event/fedpred
+ description = "I've devoured someone!\n"
+ mood_change = 3
+
+/datum/mood_event/fedprey
+ description = "It feels quite cozy in here.\n"
+ mood_change = 3
\ No newline at end of file
diff --git a/modular_citadel/code/game/objects/items/balls.dm b/modular_citadel/code/game/objects/items/balls.dm
index 4095a4bb20..79552bff6d 100644
--- a/modular_citadel/code/game/objects/items/balls.dm
+++ b/modular_citadel/code/game/objects/items/balls.dm
@@ -16,7 +16,7 @@
righthand_file = 'modular_citadel/icons/mob/inhands/balls_right.dmi'
item_state = "tennis_classic"
alternate_worn_icon = 'modular_citadel/icons/mob/mouthball.dmi'
- slot_flags = SLOT_HEAD | SLOT_NECK | SLOT_EARS //Fluff item, put it wherever you want!
+ slot_flags = ITEM_SLOT_HEAD | ITEM_SLOT_NECK | ITEM_SLOT_EARS //Fluff item, put it wherever you want!
throw_range = 14
w_class = WEIGHT_CLASS_SMALL
diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm
index ea44c6d671..a9e8744975 100644
--- a/modular_citadel/code/modules/arousal/organs/breasts.dm
+++ b/modular_citadel/code/modules/arousal/organs/breasts.dm
@@ -57,9 +57,3 @@
color = "#[skintone2hex(H.skin_tone)]"
else
color = "#[owner.dna.features["breasts_color"]]"
-
-/obj/item/organ/genital/breasts/is_exposed()
- . = ..()
- if(.)
- return TRUE
- return owner.is_chest_exposed()
diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm
index ee706fa7f9..b43f17e58a 100644
--- a/modular_citadel/code/modules/arousal/organs/genitals.dm
+++ b/modular_citadel/code/modules/arousal/organs/genitals.dm
@@ -19,6 +19,7 @@
var/obj/item/organ/genital/linked_organ
var/through_clothes = FALSE
var/internal = FALSE
+ var/hidden = FALSE
/obj/item/organ/genital/Initialize()
. = ..()
@@ -47,18 +48,39 @@
/obj/item/organ/genital/proc/is_exposed()
if(!owner)
return FALSE
+ if(hidden)
+ return FALSE
if(internal)
return FALSE
if(through_clothes)
return TRUE
-/obj/item/organ/genital/proc/toggle_through_clothes()
- if(through_clothes)
- through_clothes = FALSE
- owner.exposed_genitals -= src
- else
- through_clothes = TRUE
- owner.exposed_genitals += src
+ switch(zone) //update as more genitals are added
+ if("chest")
+ return owner.is_chest_exposed()
+ if("groin")
+ return owner.is_groin_exposed()
+
+ return FALSE
+
+/obj/item/organ/genital/proc/toggle_visibility(visibility)
+ switch(visibility)
+ if("Always visible")
+ through_clothes = TRUE
+ hidden = FALSE
+ if(!(src in owner.exposed_genitals))
+ owner.exposed_genitals += src
+ if("Hidden by clothes")
+ through_clothes = FALSE
+ hidden = FALSE
+ if(src in owner.exposed_genitals)
+ owner.exposed_genitals -= src
+ if("Always hidden")
+ through_clothes = FALSE
+ hidden = TRUE
+ if(src in owner.exposed_genitals)
+ owner.exposed_genitals -= src
+
if(ishuman(owner)) //recast to use update genitals proc
var/mob/living/carbon/human/H = owner
H.update_genitals()
@@ -78,9 +100,10 @@
return
//Full list of exposable genitals created
var/obj/item/organ/genital/picked_organ
- picked_organ = input(src, "Expose/Hide genitals", "Choose which genitalia to expose/hide", null) in genital_list
+ picked_organ = input(src, "Choose which genitalia to expose/hide", "Expose/Hide genitals", null) in genital_list
if(picked_organ)
- picked_organ.toggle_through_clothes()
+ var/picked_visibility = input(src, "Choose visibility setting", "Expose/Hide genitals", "Hidden by clothes") in list("Always visible", "Hidden by clothes", "Always hidden")
+ picked_organ.toggle_visibility(picked_visibility)
return
@@ -251,6 +274,8 @@
return
if(NOGENITALS in species_traits)//golems and such
return
+ if(H.has_trait(TRAIT_HUSK))
+ return
var/list/genitals_to_add = list()
var/list/relevant_layers = list(GENITALS_BEHIND_LAYER, GENITALS_ADJ_LAYER, GENITALS_FRONT_LAYER)
@@ -260,8 +285,6 @@
for(var/L in relevant_layers) //Less hardcode
H.remove_overlay(L)
- if(H.has_trait(TRAIT_HUSK))
- return
//start scanning for genitals
//var/list/worn_stuff = H.get_equipped_items()//cache this list so it's not built again
for(var/obj/item/organ/O in H.internal_organs)
diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/modular_citadel/code/modules/arousal/organs/penis.dm
index ae58aabf51..38e8e44f39 100644
--- a/modular_citadel/code/modules/arousal/organs/penis.dm
+++ b/modular_citadel/code/modules/arousal/organs/penis.dm
@@ -58,9 +58,3 @@
if(linked_organ)
linked_organ.linked_organ = null
linked_organ = null
-
-/obj/item/organ/genital/penis/is_exposed()
- . = ..()
- if(.)
- return TRUE
- return owner.is_groin_exposed()
diff --git a/modular_citadel/code/modules/arousal/organs/vagina.dm b/modular_citadel/code/modules/arousal/organs/vagina.dm
index 4d9eedb1cf..228c3141e3 100644
--- a/modular_citadel/code/modules/arousal/organs/vagina.dm
+++ b/modular_citadel/code/modules/arousal/organs/vagina.dm
@@ -64,9 +64,3 @@
if(linked_organ)
linked_organ.linked_organ = null
linked_organ = null
-
-/obj/item/organ/genital/vagina/is_exposed()
- . = ..()
- if(.)
- return TRUE
- return owner.is_groin_exposed()
diff --git a/modular_citadel/code/modules/clothing/under/trek_under.dm b/modular_citadel/code/modules/clothing/under/trek_under.dm
index 8abe564176..00f84b7583 100644
--- a/modular_citadel/code/modules/clothing/under/trek_under.dm
+++ b/modular_citadel/code/modules/clothing/under/trek_under.dm
@@ -241,7 +241,6 @@
icon_state = "fedcapofficer"
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
item_state = "fedcapofficer_mob"
- armor = list("melee" = 10, "bullet" = 10, "laser" = 10,"energy" = 10, "bomb" = 0, "bio" = 10, "rad" = 10, "fire" = 0, "acid" = 0)
//Variants
/obj/item/clothing/head/caphat/formal/fedcover/medsci
diff --git a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm
index f026bd1045..a651541870 100644
--- a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm
+++ b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm
@@ -183,11 +183,16 @@
var/atom/movable/AM = thing
if(isliving(AM))
var/mob/living/L = AM
+ var/mob/living/OW = owner
if(L.absorbed && !include_absorbed)
continue
L.absorbed = FALSE
L.stop_sound_channel(CHANNEL_PREYLOOP)
L.cure_blind("belly_[REF(src)]")
+ SEND_SIGNAL(OW, COMSIG_CLEAR_MOOD_EVENT, "fedpred", /datum/mood_event/fedpred)
+ SEND_SIGNAL(L, COMSIG_CLEAR_MOOD_EVENT, "fedprey", /datum/mood_event/fedprey)
+ SEND_SIGNAL(OW, COMSIG_ADD_MOOD_EVENT, "emptypred", /datum/mood_event/emptypred)
+ SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "emptyprey", /datum/mood_event/emptyprey)
AM.forceMove(destination) // Move the belly contents into the same location as belly's owner.
count++
for(var/mob/M in get_hearers_in_view(5, get_turf(owner)))
@@ -219,6 +224,11 @@
var/mob/living/OW = owner
ML.stop_sound_channel(CHANNEL_PREYLOOP)
ML.cure_blind("belly_[REF(src)]")
+ SEND_SIGNAL(OW, COMSIG_CLEAR_MOOD_EVENT, "fedpred", /datum/mood_event/fedpred)
+ SEND_SIGNAL(ML, COMSIG_CLEAR_MOOD_EVENT, "fedprey", /datum/mood_event/fedprey)
+ SEND_SIGNAL(OW, COMSIG_ADD_MOOD_EVENT, "emptypred", /datum/mood_event/emptypred)
+ SEND_SIGNAL(ML, COMSIG_ADD_MOOD_EVENT, "emptyprey", /datum/mood_event/emptyprey)
+
if(ML.absorbed)
ML.absorbed = FALSE
if(ishuman(M) && ishuman(OW))
@@ -242,7 +252,14 @@
return
if (prey.buckled)
prey.buckled.unbuckle_mob(prey,TRUE)
-
+
+ if(!isbelly(prey.loc))
+ SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "fedpred", /datum/mood_event/fedpred)
+ SEND_SIGNAL(prey, COMSIG_ADD_MOOD_EVENT, "fedprey", /datum/mood_event/fedprey)
+ else
+ SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "emptypred", /datum/mood_event/emptypred)
+ SEND_SIGNAL(prey, COMSIG_CLEAR_MOOD_EVENT, "emptyprey", /datum/mood_event/emptyprey)
+
prey.forceMove(src)
var/sound/preyloop = sound('sound/vore/prey/loop.ogg', repeat = TRUE)
if(!silent)
diff --git a/strings/cas_white.txt b/strings/cas_white.txt
index 6ff7dbddc7..8cf224d1db 100644
--- a/strings/cas_white.txt
+++ b/strings/cas_white.txt
@@ -293,4 +293,5 @@ A salt overdose.
Mindswap.
Potassium in the toilet bowls.
Giving head to the heads.
-A lizard wearing cat ears.
\ No newline at end of file
+A lizard wearing cat ears.
+DOOR STUCK!!