Added Post-Drain belly modes (#15876)

* Added Post-Drain belly modes

Added "Drain Finishing Modes" that kick into effect once a drain belly has extracted all of the nutrition that it can out of a prey character.

These modes are currently:
Normal: Current behaviour, just stops when it runs out of nutrition to extract.
Sleep: Slowly increases the prey's tiredness until the fall asleep. Be warned that they won't be able to post or see posts when they fall asleep.
False Sleep: Slowly increases the prey's tiredness until just before they fall asleep, darkening their screen but NOT preventing them from posting and reading posts.
Weight Drain: You're done draining their nutrition? Well, time to start taking their weight directly and adding it to your own body. Is dependent on the prey's weight loss % chosen in character setup.

* Added a knockout process option

* I forgot eject all on the previous commit

* Update tgui.bundle.js
This commit is contained in:
SatinIsle
2024-03-31 10:03:47 +01:00
committed by GitHub
parent 5ff80dbdd8
commit 5f520271be
10 changed files with 91 additions and 9 deletions
@@ -1245,6 +1245,11 @@
Paralyse(10)
setHalLoss(species.total_health - 1)
if(tiredness) //tiredness for vore drain
tiredness = (tiredness - 1)
if(tiredness >= 100)
Sleeping(5)
if(paralysis || sleeping)
blinded = 1
set_stat(UNCONSCIOUS)
@@ -1429,6 +1434,21 @@
else
clear_fullscreen("brute")
//tiredness for drain vore
if(tiredness)
var/severity = 0
switch(tiredness)
if(10 to 20) severity = 1
if(20 to 30) severity = 2
if(30 to 45) severity = 3
if(45 to 60) severity = 4
if(60 to 75) severity = 5
if(75 to 90) severity = 6
if(90 to INFINITY) severity = 7
overlay_fullscreen("tired", /obj/screen/fullscreen/oxy, severity)
else
clear_fullscreen("tired")
if(healths)
if (chem_effects[CE_PAINKILLER] > 100)
healths.icon_state = "health_numb"
@@ -82,3 +82,4 @@
var/inventory_panel_type = /datum/inventory_panel
var/datum/inventory_panel/inventory_panel
var/last_resist_time = 0 // world.time of the most recent resist that wasn't on cooldown.
var/tiredness = 0 //For vore draining