diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm
index 994f0fd9d1..3eaf982026 100644
--- a/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm
+++ b/code/modules/mob/living/carbon/human/species/station/station_special_abilities_vr.dm
@@ -650,7 +650,7 @@
var/list/choices = list()
for(var/mob/living/carbon/human/M in oviewers(1))
choices += M
-
+
if(!choices.len)
to_chat(src,"There's nobody nearby to use this on.")
@@ -698,7 +698,7 @@
if(can_shred(T) != T)
to_chat(src,"Looks like you lost your chance...")
return
-
+
//Removing an internal organ
if(T_int && T_int.damage >= 25) //Internal organ and it's been severely damaged
T.apply_damage(15, BRUTE, T_ext) //Damage the external organ they're going through.
@@ -713,7 +713,7 @@
//Removing an external organ
else if(!T_int && (T_ext.damage >= 25 || T_ext.brute_dam >= 25))
T_ext.droplimb(1,DROPLIMB_EDGE) //Clean cut so it doesn't kill the prey completely.
-
+
//Is it groin/chest? You can't remove those.
if(T_ext.cannot_amputate)
T.apply_damage(25, BRUTE, T_ext)
@@ -726,12 +726,12 @@
visible_message("[src] tears off [T]'s [T_ext.name]!","You tear off [T]'s [T_ext.name]!")
//Not targeting an internal organ w/ > 25 damage , and the limb doesn't have < 25 damage.
- else
+ else
if(T_int)
T_int.damage = 25 //Internal organs can only take damage, not brute damage.
T.apply_damage(25, BRUTE, T_ext)
visible_message("[src] severely damages [T]'s [T_ext.name]!")
-
+
add_attack_logs(src,T,"Shredded (hardvore)")
/mob/living/proc/flying_toggle()
@@ -901,36 +901,4 @@ mob/living/carbon/proc/charmed() //TODO
if(prob(7))
M.show_message("You lose sensation of your body.")
M.Weaken(20)
- return
-
-/mob/living/carbon/human/proc/face_sit()
- set name = "Face Sit"
- set desc = "Sit on your Prey's Face"
- set category = "Abilities"
-
- if(last_special > world.time)
- return
-
- if(!ishuman(src))
- return //If you're not a human you don't have permission to do this.
-
- var/mob/living/carbon/human/C = src
-
- var/obj/item/weapon/grab/G = src.get_active_hand()
-
- if(!istype(G))
- to_chat(C, "You must be grabbing a creature in your active hand to sit on them.")
- return
-
- var/mob/living/carbon/human/T = G.affecting
-
- if(!istype(T) || T.isSynthetic())
- to_chat(src, "\The [T] is not able to be sit on.")
- return
-
- if(G.state != GRAB_AGGRESSIVE)
- to_chat(C, "You must have the creature pinned on the ground to sit on them ")
- return
-
- src.visible_message("[src] moves their ass to [T]'s head, sitting down on them, making them unable to see anything else than [src]'s butt ")
- return
+ return
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm
index 4ed17886be..8a364ca139 100644
--- a/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm
+++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/neutral.dm
@@ -114,15 +114,6 @@
H.verbs |= /mob/living/proc/glow_toggle
H.verbs |= /mob/living/proc/glow_color
-/datum/trait/face_sit
- name = "Face_Sitting"
- desc = "Makes you able to sit on your prey"
- cost = 0
-
-/datum/trait/face_sit/apply(var/datum/species/S,var/mob/living/carbon/human/H)
- ..(S,H)
- H.verbs |= /mob/living/carbon/human/proc/face_sit
-
/datum/trait/succubus_bite
name = "Succubus Bite"
desc = "Makes you able to bite prey in your grasp and subject them to a variety of chemicals.."
diff --git a/code/modules/mob/mob_grab.dm b/code/modules/mob/mob_grab.dm
index 58c530d06c..af4014ec27 100644
--- a/code/modules/mob/mob_grab.dm
+++ b/code/modules/mob/mob_grab.dm
@@ -144,6 +144,7 @@
else
affecting.Weaken(2)
+
if(state >= GRAB_NECK)
affecting.Stun(3)
if(isliving(affecting))
@@ -173,6 +174,15 @@
assailant.visible_message("[assailant] covers [affecting]'s eyes!")
if(affecting.eye_blind < 3)
affecting.Blind(3)
+ if(BP_HEAD)
+ if(force_down)
+ if(announce)
+ assailant.visible_message("[assailant] moves their ass to [target]'s head, sitting down on them, making them unable to see anything else than [assailant]'s butt!")
+ if(target.silent < 3)
+ target.silent = 3
+ if(target.eye_blind < 3)
+ target.Blind(3)
+
/obj/item/weapon/grab/attack_self()
return s_click(hud)
diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents_chomp.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents_chomp.dm
new file mode 100644
index 0000000000..b9099a30d7
--- /dev/null
+++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents_chomp.dm
@@ -0,0 +1,50 @@
+/// Recipes
+
+/datum/chemical_reaction/aphrodisiac
+ name = "aphrodisiac"
+ id = "aphrodisiac"
+ result = "aphrodisiac"
+ required_reagents = list("carbon" = 2, "hydrogen" = 2, "oxygen" = 2, "water" = 1)
+ result_amount = 6
+
+/datum/reagent/aphrodisiac
+ name = "aphrodisiac"
+ id = "aphrodisiac"
+ description = "You so horny."
+ taste_description = "sweetness"
+ reagent_state = LIQUID
+ color = "#FF9999"
+ scannable = 1
+
+/datum/reagent/aphrodisiac/affect_blood(var/mob/living/carbon/M, var/alien, var/removed)
+ if(!M) return
+
+ if(prob(3))
+ M.emote(pick("blush", "moan", "moan", "giggle"))
+
+ // Unsure if we want to allow cumming. I'm gonna disable it for now.
+/*
+ if(prob(1))
+ switch(M.gender)
+ if(MALE)
+ M.emote("mcum")
+ if(FEMALE)
+ M.emote("fcum")
+ if(PLURAL)
+ if(prob(50))
+ M.emote("mcum")
+ else
+ M.emote("fcum")
+*/
+// Disabled cause I'm unsure if we want to do this or not.
+/*
+/mob/living/proc/cum()
+ if(!check_has_mouth())
+ return
+ src.visible_message("[src] throws up!","You throw up!")
+
+ var/turf/simulated/T = get_turf(src) //TODO: Make add_blood_floor remove blood from human mobs
+ if(istype(T))
+ T.add_vomit_floor(src, 1)
+*/
+
diff --git a/html/changelogs/Jonathan-Facesitting-Icon.yml b/html/changelogs/Jonathan-Facesitting-Icon.yml
new file mode 100644
index 0000000000..6ce3eaa761
--- /dev/null
+++ b/html/changelogs/Jonathan-Facesitting-Icon.yml
@@ -0,0 +1,37 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+#################################
+
+# Your name.
+author: JonathanHybrid
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - tweak: "Replaced the method of facesitting, you don't need to have a trait anymore! You instead use grab, pin them down and aim at head. (I recommend using subtles for them to read your messages~)"
+ - tweak: "Replaced the image of SS13 to chomper's logo! :D"
diff --git a/icons/ss13_32.png b/icons/ss13_32.png
index 72bf4f0f97..0d8fcdd890 100644
Binary files a/icons/ss13_32.png and b/icons/ss13_32.png differ
diff --git a/icons/ss13_64.png b/icons/ss13_64.png
index 103ff0b264..d2d27bdafe 100644
Binary files a/icons/ss13_64.png and b/icons/ss13_64.png differ
diff --git a/vorestation.dme b/vorestation.dme
index 2140fa4a6a..bcdc1a3139 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -2467,6 +2467,7 @@
#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Other.dm"
#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Toxins.dm"
#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents-Vore_vr.dm"
+#include "code\modules\reagents\Chemistry-Reagents\Chemistry-Reagents_chomp.dm"
#include "code\modules\reagents\dispenser\_defines.dm"
#include "code\modules\reagents\dispenser\cartridge.dm"
#include "code\modules\reagents\dispenser\cartridge_presets.dm"