mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
Adds selectable sets of contamination flavors for bellies.
-Divides item contamination flavors into categories to match better with the "belly" types. -The selection menu shows up when itemweak mode is selected. -The selection should save for each belly along with other prefs. -The flavors have been cropped into following categories: ->All, contains the whole list as before apart from possible specific ones. Is the designated default option. ->Acrid, contains flavors implying regular nasty digestion. ->Dirty, contains flavors related to visual contamination. ->Musky, contains suggestively sloppy flavors without excess filth. ->Smelly, contains more airborne flavors without visual slop or crud. ->Wet, contains flavors of more neutral-ish soakage.
This commit is contained in:
@@ -161,6 +161,177 @@ var/global/list/edible_trash = list(/obj/item/trash,
|
||||
/obj/item/device/mmi/digital/posibrain,
|
||||
/obj/item/device/aicard)
|
||||
|
||||
var/global/list/cont_flavors = list(
|
||||
"All" = cont_flavors_all,
|
||||
"Acrid" = cont_flavors_acrid,
|
||||
"Dirty" = cont_flavors_dirty,
|
||||
"Musky" = cont_flavors_musky,
|
||||
"Smelly" = cont_flavors_smelly,
|
||||
"Wet" = cont_flavors_wet)
|
||||
|
||||
var/global/list/cont_flavors_all = list("soggy",
|
||||
"soaked",
|
||||
"dirty",
|
||||
"nasty",
|
||||
"slimy",
|
||||
"drenched",
|
||||
"sloppy",
|
||||
"grimy",
|
||||
"sludgy",
|
||||
"stinky",
|
||||
"mucky",
|
||||
"stained",
|
||||
"soiled",
|
||||
"filthy",
|
||||
"saucy",
|
||||
"foul",
|
||||
"icky",
|
||||
"tarnished",
|
||||
"unsanitary",
|
||||
"messy",
|
||||
"begrimed",
|
||||
"cruddy",
|
||||
"funky",
|
||||
"disgusting",
|
||||
"repulsive",
|
||||
"noxious",
|
||||
"gruesome",
|
||||
"gross",
|
||||
"putrid",
|
||||
"yucky",
|
||||
"tainted",
|
||||
"putrescent",
|
||||
"unsavory",
|
||||
"smelly",
|
||||
"smutty",
|
||||
"acrid",
|
||||
"pungent",
|
||||
"unclean",
|
||||
"contaminated",
|
||||
"gunky",
|
||||
"gooey",
|
||||
"sticky",
|
||||
"drippy",
|
||||
"oozing",
|
||||
"sloshed",
|
||||
"digested",
|
||||
"sopping",
|
||||
"damp",
|
||||
"gloppy",
|
||||
"begraggled",
|
||||
"churned",
|
||||
"juicy")
|
||||
|
||||
var/global/list/cont_flavors_wet = list("soggy",
|
||||
"soaked",
|
||||
"slimy",
|
||||
"drenched",
|
||||
"sloppy",
|
||||
"sludgy",
|
||||
"gooey",
|
||||
"sticky",
|
||||
"drippy",
|
||||
"oozing",
|
||||
"sloshed",
|
||||
"sopping",
|
||||
"damp",
|
||||
"gloppy",
|
||||
"juicy")
|
||||
|
||||
var/global/list/cont_flavors_smelly = list("nasty",
|
||||
"stinky",
|
||||
"filthy",
|
||||
"foul",
|
||||
"icky",
|
||||
"funky",
|
||||
"disgusting",
|
||||
"repulsive",
|
||||
"noxious",
|
||||
"gross",
|
||||
"putrid",
|
||||
"yucky",
|
||||
"putrescent",
|
||||
"unsavory",
|
||||
"smelly",
|
||||
"pungent")
|
||||
|
||||
var/global/list/cont_flavors_acrid = list("nasty",
|
||||
"slimy",
|
||||
"sloppy",
|
||||
"grimy",
|
||||
"sludgy",
|
||||
"mucky",
|
||||
"stained",
|
||||
"saucy",
|
||||
"foul",
|
||||
"icky",
|
||||
"disgusting",
|
||||
"repulsive",
|
||||
"noxious",
|
||||
"gruesome",
|
||||
"gross",
|
||||
"putrid",
|
||||
"yucky",
|
||||
"tainted",
|
||||
"putrescent",
|
||||
"unsavory",
|
||||
"smelly",
|
||||
"acrid",
|
||||
"pungent",
|
||||
"gooey",
|
||||
"sticky",
|
||||
"drippy",
|
||||
"oozing",
|
||||
"sloshed",
|
||||
"digested",
|
||||
"gloppy",
|
||||
"churned")
|
||||
|
||||
var/global/list/cont_flavors_dirty = list("dirty",
|
||||
"nasty",
|
||||
"slimy",
|
||||
"sloppy",
|
||||
"grimy",
|
||||
"mucky",
|
||||
"stained",
|
||||
"soiled",
|
||||
"filthy",
|
||||
"saucy",
|
||||
"tarnished",
|
||||
"unsanitary",
|
||||
"messy",
|
||||
"begrimed",
|
||||
"cruddy",
|
||||
"gruesome",
|
||||
"gross",
|
||||
"tainted",
|
||||
"unsavory",
|
||||
"smutty",
|
||||
"unclean",
|
||||
"contaminated",
|
||||
"gunky",
|
||||
"gooey",
|
||||
"sticky",
|
||||
"gloppy",
|
||||
"begraggled")
|
||||
|
||||
var/global/list/cont_flavors_musky = list("soggy",
|
||||
"nasty",
|
||||
"slimy",
|
||||
"drenched",
|
||||
"sloppy",
|
||||
"musky",
|
||||
"saucy",
|
||||
"messy",
|
||||
"funky",
|
||||
"tainted",
|
||||
"smelly",
|
||||
"smutty",
|
||||
"gooey",
|
||||
"sticky",
|
||||
"drippy",
|
||||
"juicy")
|
||||
|
||||
/hook/startup/proc/init_vore_datum_ref_lists()
|
||||
var/paths
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
var/transferlocation // Location that the prey is released if they struggle and get dropped off.
|
||||
var/release_sound = TRUE // Boolean for now, maybe replace with something else later
|
||||
var/mode_flags = 0 // Stripping, numbing, etc.
|
||||
var/cont_flavor = "All" // Selected contamination mode.
|
||||
|
||||
//I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere.
|
||||
//Actual full digest modes
|
||||
@@ -136,7 +137,8 @@
|
||||
"digest_messages_prey",
|
||||
"examine_messages",
|
||||
"emote_lists",
|
||||
"mode_flags"
|
||||
"mode_flags",
|
||||
"cont_flavor"
|
||||
)
|
||||
|
||||
/obj/belly/New(var/newloc)
|
||||
@@ -611,6 +613,7 @@
|
||||
dupe.bulge_size = bulge_size
|
||||
dupe.shrink_grow_size = shrink_grow_size
|
||||
dupe.mode_flags = mode_flags
|
||||
dupe.cont_flavor = cont_flavor
|
||||
|
||||
//// Object-holding variables
|
||||
//struggle_messages_outside - strings
|
||||
|
||||
@@ -38,8 +38,9 @@
|
||||
if(isitem(A) && !did_an_item)
|
||||
var/obj/item/I = A
|
||||
if(mode_flags & DM_FLAG_ITEMWEAK)
|
||||
I.gurgle_contaminate(contents, owner)
|
||||
I.gurgle_contaminate(contents, cont_flavor)
|
||||
items_preserved |= I
|
||||
to_update = TRUE
|
||||
else
|
||||
digest_item(I)
|
||||
to_update = TRUE
|
||||
@@ -69,7 +70,7 @@
|
||||
if(I)
|
||||
H.unEquip(I,force = TRUE)
|
||||
if(mode_flags & DM_FLAG_ITEMWEAK)
|
||||
I.gurgle_contaminate(contents, owner)
|
||||
I.gurgle_contaminate(contents, cont_flavor)
|
||||
items_preserved |= I
|
||||
else
|
||||
digest_item(I)
|
||||
|
||||
@@ -5,20 +5,33 @@ var/image/gurgled_overlay = image('icons/effects/sludgeoverlay_vr.dmi')
|
||||
var/cleanname
|
||||
var/cleandesc
|
||||
|
||||
/obj/item/proc/gurgle_contaminate(var/atom/movable/item_storage = null)
|
||||
/obj/item/proc/gurgle_contaminate(var/atom/movable/item_storage = null, var/cont_flavor = "All")
|
||||
if(!can_gurgle())
|
||||
return FALSE
|
||||
|
||||
if(!gurgled)
|
||||
gurgled = TRUE
|
||||
overlays += gurgled_overlay
|
||||
var/gurgleflavor = pick("soggy","soaked","dirty","nasty","slimy","drenched","sloppy","grimy","sludgy","stinky","mucky","stained","soiled","filthy","saucy","foul","icky","tarnished","unsanitary","messy","begrimed","cruddy","funky","disgusting","repulsive","noxious","gruesome","gross","putrid","yucky","tainted","putrescent","unsavory","smelly","smutty","acrid","pungent","unclean","contaminated","gunky","gooey","sticky","drippy","oozing","sloshed","digested","sopping","damp","gloppy","begraggled","churned")
|
||||
switch(cont_flavor)
|
||||
if("All")
|
||||
cont_flavor = cont_flavors_all
|
||||
if("Acrid")
|
||||
cont_flavor = cont_flavors_acrid
|
||||
if("Dirty")
|
||||
cont_flavor = cont_flavors_dirty
|
||||
if("Musky")
|
||||
cont_flavor = cont_flavors_musky
|
||||
if("Smelly")
|
||||
cont_flavor = cont_flavors_smelly
|
||||
if("Wet")
|
||||
cont_flavor = cont_flavors_wet
|
||||
var/gurgleflavor = pick(cont_flavor)
|
||||
cleanname = src.name
|
||||
cleandesc = src.desc
|
||||
name = "[gurgleflavor] [cleanname]"
|
||||
desc = "[cleandesc] It seems to be covered in ominously foul residue and needs a wash."
|
||||
for(var/obj/item/O in contents)
|
||||
O.gurgle_contaminate(item_storage)
|
||||
O.gurgle_contaminate(item_storage, cont_flavor)
|
||||
return TRUE
|
||||
|
||||
/obj/item/proc/can_gurgle()
|
||||
|
||||
@@ -204,6 +204,9 @@
|
||||
dat += " [english_list(flag_list)]"
|
||||
else
|
||||
dat += " None"
|
||||
if(selected.mode_flags & DM_FLAG_ITEMWEAK)
|
||||
dat += "<br><a href='?src=\ref[src];b_cont_flavor=\ref[selected]'>Contamination Mode:</a>"
|
||||
dat += "[selected.cont_flavor]"
|
||||
|
||||
//Belly verb
|
||||
dat += "<br><a href='?src=\ref[src];b_verb=\ref[selected]'>Vore Verb:</a>"
|
||||
@@ -533,6 +536,13 @@
|
||||
selected.mode_flags ^= selected.mode_flag_list[toggle_addon]
|
||||
selected.items_preserved.Cut() //Re-evaltuate all items in belly on addon toggle
|
||||
|
||||
if(href_list["b_cont_flavor"])
|
||||
var/list/menu_list = cont_flavors.Copy()
|
||||
var/new_flavor = input("Choose Contamination Mode (currently [selected.cont_flavor])") as null|anything in menu_list
|
||||
if(!new_flavor)
|
||||
return 0
|
||||
selected.cont_flavor = new_flavor
|
||||
|
||||
if(href_list["b_desc"])
|
||||
var/new_desc = html_encode(input(usr,"Belly Description ([BELLIES_DESC_MAX] char limit):","New Description",selected.desc) as message|null)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user