diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm
index 9b2d5b6f5d..78c4789e68 100644
--- a/code/game/machinery/computer/cloning.dm
+++ b/code/game/machinery/computer/cloning.dm
@@ -410,12 +410,12 @@
if(isbrain(mob_occupant))
dna = B.stored_dna
- if(!can_scan(dna, mob_occupant, FALSE, has_bank_account))
+ if(HAS_TRAIT(mob_occupant, TRAIT_NEVER_CLONE))
+ scantemp = "Subject has an active DNC record on file. Unable to clone."
+ playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0)
return
- if(HAS_TRAIT(mob_occupant, TRAIT_NEVER_CLONE))
- scantemp = "Subject has an active DNC record on file. Unable to clone."
- playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0)
+ if(!can_scan(dna, mob_occupant, FALSE, has_bank_account))
return
var/datum/data/record/R = new()
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 82f533df3b..88c00ccbbf 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -3704,6 +3704,12 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if(character.custom_body_size)
character.resize(character.custom_body_size)
+ //GS13 Port - Add back arousal
+ if(NOAROUSAL in pref_species.species_traits)
+ character.canbearoused = FALSE
+ else
+ character.canbearoused = arousable
+
//speech stuff
if(custom_tongue != "default")
var/new_tongue = GLOB.roundstart_tongues[custom_tongue]
diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm
index ce240c0e35..0f1f307242 100644
--- a/code/modules/mob/living/carbon/carbon_defense.dm
+++ b/code/modules/mob/living/carbon/carbon_defense.dm
@@ -296,11 +296,10 @@
else if(check_zone(M.zone_selected) == BODY_ZONE_HEAD)
var/datum/species/S
+ S = dna.species
if(ishuman(src))
var/mob/living/carbon/human/H = src
- S = dna.species
-
- if(HAS_TRAIT(src, TRAIT_DISTANT)) //No mood buff since you're not really liking it.
+ if(HAS_TRAIT(H, TRAIT_DISTANT)) //No mood buff since you're not really liking it.
M.visible_message("[M] gives [H] a pat on the head to make [p_them()] feel better! They seem annoyed...", \
"You give [H] a pat on the head to make [p_them()] feel better! They seem annoyed as they're now glaring towards you...")
H.adjustArousal(-5) //Why are you touching me?
@@ -315,12 +314,12 @@
else if(HAS_TRAIT(H, TRAIT_HEADPAT_SLUT))
M.visible_message("[M] gives [H] a pat on the head to make [p_them()] feel better! They seem incredibly pleased!", \
"You give [H] a pat on the head to make [p_them()] feel better! They seem to like it way too much")
- SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "lewd_headpat", /datum/mood_event/lewd_headpat)
+ SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "lewd_headpat", /datum/mood_event/lewd_headpat)
H.adjustArousal(5) //Headpats are hot af
else
M.visible_message("[M] gives [H] a pat on the head to make [p_them()] feel better!", \
"You give [H] a pat on the head to make [p_them()] feel better!")
- SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "headpat", /datum/mood_event/headpat)
+ SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "headpat", /datum/mood_event/headpat)
friendly_check = TRUE
if(!(HAS_TRAIT(src, TRAIT_DISTANT)))
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index b62a7f5277..a7113c1a06 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -546,13 +546,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
SEND_SIGNAL(C, COMSIG_SPECIES_GAIN, src, old_species)
- //GS13 Port - Add back arousal
- if(NOAROUSAL in species_traits)
- C.canbearoused = FALSE
- else
- if(C.client)
- C.canbearoused = C.client?.prefs?.arousable
-
/datum/species/proc/update_species_slowdown(mob/living/carbon/human/H)
H.add_or_update_variable_movespeed_modifier(/datum/movespeed_modifier/species, TRUE, multiplicative_slowdown = speedmod)