Skip to content

Commit

Permalink
Merge pull request #361 from LetterJay/master
Browse files Browse the repository at this point in the history
adds vore back
  • Loading branch information
LetterJay authored Apr 14, 2017
2 parents 097d432 + 971e314 commit 412b8da
Show file tree
Hide file tree
Showing 61 changed files with 2,310 additions and 5 deletions.
1 change: 1 addition & 0 deletions Test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Ignore this
66 changes: 66 additions & 0 deletions code/__DEFINES/voreconstants.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// Overhauled vore system
#define DM_HOLD "Hold"
#define DM_DIGEST "Digest"
#define DM_HEAL "Heal"
#define DM_DIGESTF "Fast Digest"

#define VORE_STRUGGLE_EMOTE_CHANCE 40

// Stance for hostile mobs to be in while devouring someone.
#define HOSTILE_STANCE_EATING 99


var/global/list/player_sizes_list = list("Macro" = SIZESCALE_HUGE, "Big" = SIZESCALE_BIG, "Normal" = SIZESCALE_NORMAL, "Small" = SIZESCALE_SMALL, "Tiny" = SIZESCALE_TINY)
/* // moved to sound.dm
var/global/list/digestion_sounds = list(
'sound/vore/digest1.ogg',
'sound/vore/digest2.ogg',
'sound/vore/digest3.ogg',
'sound/vore/digest4.ogg',
'sound/vore/digest5.ogg',
'sound/vore/digest6.ogg',
'sound/vore/digest7.ogg',
'sound/vore/digest8.ogg',
'sound/vore/digest9.ogg',
'sound/vore/digest10.ogg',
'sound/vore/digest11.ogg',
'sound/vore/digest12.ogg')
var/global/list/death_sounds = list(
'sound/vore/death1.ogg',
'sound/vore/death2.ogg',
'sound/vore/death3.ogg',
'sound/vore/death4.ogg',
'sound/vore/death5.ogg',
'sound/vore/death6.ogg',
'sound/vore/death7.ogg',
'sound/vore/death8.ogg',
'sound/vore/death9.ogg',
'sound/vore/death10.ogg') */

var/global/list/vore_sounds = list(
"Gulp" = 'sound/vore/gulp.ogg',
"Insert" = 'sound/vore/insert.ogg',
"Insertion1" = 'sound/vore/insertion1.ogg',
"Insertion2" = 'sound/vore/insertion2.ogg',
"Insertion3" = 'sound/vore/insertion3.ogg',
"Schlorp" = 'sound/vore/schlorp.ogg',
"Squish1" = 'sound/vore/squish1.ogg',
"Squish2" = 'sound/vore/squish2.ogg',
"Squish3" = 'sound/vore/squish3.ogg',
"Squish4" = 'sound/vore/squish4.ogg')
/* also moved to sound.dmi
var/global/list/struggle_sounds = list(
"Squish1" = 'sound/vore/squish1.ogg',
"Squish2" = 'sound/vore/squish2.ogg',
"Squish3" = 'sound/vore/squish3.ogg',
"Squish4" = 'sound/vore/squish4.ogg')
/proc/log_debug(text)
if (config.log_debug)
diary << "\[[time_stamp()]]DEBUG: [text][log_end]"
for(var/client/C in admins)
if(C.prefs.toggles & CHAT_DEBUGLOGS)
C << "DEBUG: [text]" */
2 changes: 2 additions & 0 deletions code/modules/client/client_procs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,8 @@ GLOBAL_LIST(external_rsc_urls)
if(!tooltips)
tooltips = new /datum/tooltip(src)

hook_vr("client_new",list(src))

//////////////
//DISCONNECT//
//////////////
Expand Down
2 changes: 2 additions & 0 deletions code/modules/client/preferences.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1535,8 +1535,10 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if("load")
load_preferences()
load_character()
attempt_vr(parent.prefs_vr,"load_vore","")

if("changeslot")
attempt_vr(parent.prefs_vr,"load_vore","")
if(!load_character(text2num(href_list["num"])))
random_character()
real_name = random_unique_name(gender)
Expand Down
8 changes: 8 additions & 0 deletions code/modules/client/preferences_vr.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
//File isn't currently being used.
/datum/preferences
var/biological_gender = MALE
var/identifying_gender = MALE

/datum/preferences/proc/set_biological_gender(var/gender)
biological_gender = gender
identifying_gender = gender
3 changes: 3 additions & 0 deletions code/modules/mob/living/carbon/human/examine.dm
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,9 @@
msg += "[t_He] looks like a drunken mess.\n"
if(91.01 to INFINITY)
msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n"
for (var/I in src.vore_organs)
var/datum/belly/B = vore_organs[I]
msg += B.get_examine_msg()

msg += "</span>"

Expand Down
54 changes: 54 additions & 0 deletions code/modules/mob/living/carbon/human/examine_vr.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
/mob/living/carbon/human/proc/examine_nutrition()
var/message = ""
var/nutrition_examine = round(nutrition)
var/t_He = "It" //capitalised for use at the start of each line.
var/t_His = "Its"
var/t_his = "its"
var/t_is = "is"
var/t_has = "has"
switch(gender)
if(MALE)
t_He = "He"
t_his = "his"
t_His = "His"
if(FEMALE)
t_He = "She"
t_his = "her"
t_His = "Her"
if(PLURAL)
t_He = "They"
t_his = "their"
t_His = "Their"
t_is = "are"
t_has = "have"
if(NEUTER)
t_He = "It"
t_his = "its"
t_His = "Its"
switch(nutrition_examine)
if(0 to 49)
message = "<span class='warning'>[t_He] [t_is] starving! You can hear [t_his] stomach snarling from across the room!</span>\n"
if(50 to 99)
message = "<span class='warning'>[t_He] [t_is] extremely hungry. A deep growl occasionally rumbles from [t_his] empty stomach.</span>\n"
if(100 to 499)
return message //Well that's pretty normal, really.
if(500 to 864) // Fat.
message = "[t_He] [t_has] a stuffed belly, bloated fat and round from eating too much.\n"
if(1200 to 1934) // One person fully digested.
message = "<span class='warning'>[t_He] [t_is] sporting a large, round, sagging stomach. It's contains at least their body weight worth of glorping slush.</span>\n"
if(1935 to 3004) // Two people.
message = "<span class='warning'>[t_He] [t_is] engorged with a huge stomach that sags and wobbles as they move. [t_He] must have consumed at least twice their body weight. It looks incredibly soft.</span>\n"
if(3005 to 4074) // Three people.
message = "<span class='warning'>[t_His] stomach is firmly packed with digesting slop. [t_He] must have eaten at least a few times worth their body weight! It looks hard for them to stand, and [t_his] gut jiggles when they move.</span>\n"
if(4075 to 10000) // Four or more people.
message = "<span class='warning'>[t_He] [t_is] so absolutely stuffed that you aren't sure how it's possible to move. [t_He] can't seem to swell any bigger. The surface of [t_his] belly looks sorely strained!</span>\n"
return message

/mob/living/carbon/human/proc/examine_bellies()
var/message = ""

for (var/I in src.vore_organs)
var/datum/belly/B = vore_organs[I]
message += B.get_examine_msg()

return message
4 changes: 2 additions & 2 deletions code/modules/mob/living/carbon/human/human_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,8 @@
return ..()

/mob/living/carbon/human/grabbedby(mob/living/carbon/user, supress_message = 0)
if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && (disabilities & FAT) && ismonkey(pulling))
devour_mob(pulling)
if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && isliving(pulling))
vore_attack(user, pulling)
else
..()

Expand Down
3 changes: 3 additions & 0 deletions code/modules/mob/living/carbon/life.dm
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@
return
if(istype(loc, /obj/machinery/atmospherics/components/unary/cryo_cell))
return
if(ismob(loc))
return


var/datum/gas_mixture/environment
if(loc)
Expand Down
3 changes: 3 additions & 0 deletions code/modules/mob/living/life.dm
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@
//stuff in the stomach
handle_stomach()

// Vore code for belly processes
handle_internal_contents()

update_gravity(mob_has_gravity())

if(machine)
Expand Down
3 changes: 3 additions & 0 deletions code/modules/mob/living/living.dm
Original file line number Diff line number Diff line change
Expand Up @@ -550,6 +550,9 @@
if(buckled && last_special <= world.time)
resist_buckle()

// climbing out of a gut
if(attempt_vr(src,"vore_process_resist",args)) return TRUE

//Breaking out of a container (Locker, sleeper, cryo...)
else if(isobj(loc))
var/obj/C = loc
Expand Down
5 changes: 4 additions & 1 deletion code/modules/mob/living/simple_animal/animal_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)

if("grab")
grabbedby(M)
if(grab_state >= GRAB_AGGRESSIVE && isliving(pulling))
vore_attack(M, pulling)
else
grabbedby(M)

if("harm", "disarm")
M.do_attack_animation(src, ATTACK_EFFECT_PUNCH)
Expand Down
3 changes: 2 additions & 1 deletion code/modules/mob/mob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
GLOB.living_mob_list += src
prepare_huds()
can_ride_typecache = typecacheof(can_ride_typecache)
hook_vr("mob_new",list(src))
..()

/atom/proc/prepare_huds()
Expand Down Expand Up @@ -110,7 +111,7 @@
if(self_message)
msg = self_message
else
if(M.see_invisible<invisibility || (T != loc && T != src))//if src is invisible to us or is inside something (and isn't a turf),
if(M.see_invisible<invisibility)//if src is invisible
if(blind_message) // then people see blind message if there is one, otherwise nothing.
msg = blind_message
else
Expand Down
Loading

0 comments on commit 412b8da

Please sign in to comment.