mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-24 05:38:15 +01:00
vorepanel setting update (#7567)
Co-authored-by: Selis <selis@xynolabs.com>
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
var/custom_ingested_alpha = 255 //Custom alpha for ingested reagent layer if not using normal mush layer.
|
||||
|
||||
var/nutri_reagent_gen = FALSE //if belly produces reagent over time using nutrition, needs to be optimized to use subsystem - Jack
|
||||
var/is_beneficial = FALSE //Sets a reagent as a beneficial one / healing reagents
|
||||
var/list/generated_reagents = list("water" = 1) //Any number of reagents, the associated value is how many units are generated per process()
|
||||
var/reagent_name = "water" //What is shown when reagents are removed, doesn't need to be an actual reagent
|
||||
var/reagentid = "water" //Selected reagent's id, for use in puddle system currently
|
||||
@@ -89,6 +90,7 @@
|
||||
"Cherry Jelly",
|
||||
"Digestive acid",
|
||||
"Diluted digestive acid",
|
||||
"Space cleaner",
|
||||
"Lube",
|
||||
"Biomass",
|
||||
"Concentrated Radium",
|
||||
@@ -182,10 +184,10 @@
|
||||
///////////////////// NUTRITION REAGENT PRODUCTION /////////////////
|
||||
|
||||
/obj/belly/proc/HandleBellyReagents()
|
||||
if(reagentbellymode && reagent_mode_flags & DM_FLAG_REAGENTSNUTRI && reagents.total_volume < custom_max_volume && !isnewplayer(owner)) //Removed if(reagentbellymode == TRUE) since that's less optimized
|
||||
if(show_liquids && reagentbellymode && reagent_mode_flags & DM_FLAG_REAGENTSNUTRI && reagents.total_volume < custom_max_volume && !isnewplayer(owner)) //Removed if(reagentbellymode == TRUE) since that's less optimized
|
||||
if(isrobot(owner))
|
||||
var/mob/living/silicon/robot/R = owner
|
||||
if(R.cell.charge >= gen_cost*10 && gen_interval >= gen_time)
|
||||
if(R.cell && R.cell.charge >= gen_cost*10 && gen_interval >= gen_time)
|
||||
GenerateBellyReagents()
|
||||
gen_interval = 0
|
||||
else
|
||||
@@ -199,15 +201,22 @@
|
||||
|
||||
/obj/belly/proc/HandleBellyReagentEffects(var/list/touchable_atoms)
|
||||
if(LAZYLEN(contents))
|
||||
if(reagent_touches && reagents.total_volume >= 5)
|
||||
if(show_liquids && reagent_touches && reagents.total_volume >= 5)
|
||||
var/affecting_amt = reagents.total_volume / max(LAZYLEN(touchable_atoms), 1)
|
||||
if(affecting_amt > 5)
|
||||
affecting_amt = 5
|
||||
if(affecting_amt >= 1)
|
||||
for(var/mob/living/L in touchable_atoms)
|
||||
if(L.digestable && digest_mode == DM_DIGEST)
|
||||
if(!L.apply_reagents)
|
||||
continue
|
||||
if((L.digestable && digest_mode == DM_DIGEST))
|
||||
if(!L.permit_healbelly && is_beneficial) // Healing reagents turned off in preferences!
|
||||
continue
|
||||
if(reagents.total_volume)
|
||||
reagents.trans_to(L, affecting_amt, 1, FALSE)
|
||||
if(L.permit_healbelly && digest_mode == DM_HEAL)
|
||||
if(is_beneficial && reagents.total_volume)
|
||||
reagents.trans_to(L, affecting_amt, 1, FALSE)
|
||||
for(var/obj/item/I in touchable_atoms)
|
||||
if(reagents.total_volume)
|
||||
reagents.trans_to(I, affecting_amt, 1, FALSE)
|
||||
@@ -277,88 +286,101 @@
|
||||
switch(reagent_chosen)
|
||||
if("Water")
|
||||
generated_reagents = list("water" = 1)
|
||||
reagent_name = "water"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "water"
|
||||
gen_amount = 1
|
||||
gen_cost = 1
|
||||
reagentid = "water"
|
||||
reagentcolor = "#0064C877"
|
||||
if("Milk")
|
||||
generated_reagents = list("milk" = 1)
|
||||
reagent_name = "milk"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "milk"
|
||||
gen_amount = 1
|
||||
gen_cost = 5
|
||||
reagentid = "milk"
|
||||
reagentcolor = "#DFDFDF"
|
||||
if("Cream")
|
||||
generated_reagents = list("cream" = 1)
|
||||
reagent_name = "cream"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "cream"
|
||||
gen_amount = 1
|
||||
gen_cost = 5
|
||||
reagentid = "cream"
|
||||
reagentcolor = "#DFD7AF"
|
||||
if("Honey")
|
||||
generated_reagents = list("honey" = 1)
|
||||
reagent_name = "honey"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "honey"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "honey"
|
||||
reagentcolor = "#FFFF00"
|
||||
if("Cherry Jelly") //Kinda WIP, allows slime like folks something to stuff others with, should make a generic jelly in future
|
||||
generated_reagents = list("cherryjelly" = 1)
|
||||
reagent_name = "cherry jelly"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "cherry jelly"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "cherryjelly"
|
||||
reagentcolor = "#801E28"
|
||||
if("Digestive acid")
|
||||
generated_reagents = list("stomacid" = 1)
|
||||
reagent_name = "digestive acid"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "digestive acid"
|
||||
gen_amount = 1
|
||||
gen_cost = 1
|
||||
reagentid = "stomacid"
|
||||
reagentcolor = "#664330"
|
||||
if("Diluted digestive acid")
|
||||
generated_reagents = list("diet_stomacid" = 1)
|
||||
reagent_name = "diluted digestive acid"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "diluted digestive acid"
|
||||
gen_amount = 1
|
||||
gen_cost = 1
|
||||
reagentid = "diet_stomacid"
|
||||
reagentcolor = "#664330"
|
||||
if("Space cleaner")
|
||||
generated_reagents = list("cleaner" = 1)
|
||||
reagent_name = "space cleaner"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "space cleaner"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "cleaner"
|
||||
reagentcolor = "#A5F0EE"
|
||||
if("Lube")
|
||||
generated_reagents = list("lube" = 1)
|
||||
reagent_name = "lube"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "lube"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "lube"
|
||||
reagentcolor = "#009CA8"
|
||||
if("Biomass")
|
||||
generated_reagents = list("biomass" = 1)
|
||||
reagent_name = "biomass"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "biomass"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "biomass"
|
||||
reagentcolor = "#DF9FBF"
|
||||
if("Concentrated Radium")
|
||||
generated_reagents = list("concentrated_radium" = 1)
|
||||
reagent_name = "concentrated radium"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "concentrated radium"
|
||||
gen_amount = 1
|
||||
gen_cost = 1
|
||||
reagentid = "concentrated_radium"
|
||||
reagentcolor = "#C7C7C7"
|
||||
if("Tricordrazine")
|
||||
generated_reagents = list("tricordrazine" = 1)
|
||||
reagent_name = "tricordrazine"
|
||||
if(capitalize(reagent_name) in reagent_choices)
|
||||
reagent_name = "tricordrazine"
|
||||
gen_amount = 1
|
||||
gen_cost = 10
|
||||
reagentid = "tricordrazine"
|
||||
reagentcolor = "#8040FF"
|
||||
is_beneficial = TRUE
|
||||
|
||||
|
||||
/////////////////////// FULLNESS MESSAGES //////////////////////
|
||||
@@ -374,7 +396,7 @@
|
||||
formatted_message = replacetext(raw_message,"%belly",lowertext(name))
|
||||
formatted_message = replacetext(formatted_message,"%pred",owner)
|
||||
|
||||
return("<span class='warning'>[formatted_message]</span><BR>")
|
||||
return(span_red("[formatted_message]<BR>"))
|
||||
|
||||
/obj/belly/proc/get_reagent_examine_msg2()
|
||||
if(fullness1_messages.len)
|
||||
@@ -384,7 +406,7 @@
|
||||
formatted_message = replacetext(raw_message,"%belly",lowertext(name))
|
||||
formatted_message = replacetext(formatted_message,"%pred",owner)
|
||||
|
||||
return("<span class='warning'>[formatted_message]</span><BR>")
|
||||
return(span_red("[formatted_message]<BR>"))
|
||||
|
||||
/obj/belly/proc/get_reagent_examine_msg3()
|
||||
if(fullness1_messages.len)
|
||||
@@ -394,7 +416,7 @@
|
||||
formatted_message = replacetext(raw_message,"%belly",lowertext(name))
|
||||
formatted_message = replacetext(formatted_message,"%pred",owner)
|
||||
|
||||
return("<span class='warning'>[formatted_message]</span><BR>")
|
||||
return(span_red("[formatted_message]<BR>"))
|
||||
|
||||
/obj/belly/proc/get_reagent_examine_msg4()
|
||||
if(fullness1_messages.len)
|
||||
@@ -404,7 +426,7 @@
|
||||
formatted_message = replacetext(raw_message,"%belly",lowertext(name))
|
||||
formatted_message = replacetext(formatted_message,"%pred",owner)
|
||||
|
||||
return("<span class='warning'>[formatted_message]</span><BR>")
|
||||
return(span_red("[formatted_message]<BR>"))
|
||||
|
||||
/obj/belly/proc/get_reagent_examine_msg5()
|
||||
if(fullness1_messages.len)
|
||||
@@ -414,7 +436,7 @@
|
||||
formatted_message = replacetext(raw_message,"%belly",lowertext(name))
|
||||
formatted_message = replacetext(formatted_message,"%pred",owner)
|
||||
|
||||
return("<span class='warning'>[formatted_message]</span><BR>")
|
||||
return(span_red("[formatted_message]<BR>"))
|
||||
|
||||
|
||||
// The next function gets the messages set on the belly, in human-readable format.
|
||||
|
||||
@@ -575,8 +575,8 @@
|
||||
//Stop AI processing in bellies
|
||||
if(M.ai_holder)
|
||||
M.ai_holder.go_sleep()
|
||||
if(reagents.total_volume >= 5 && M.digestable) //CHOMPEdit Start
|
||||
if(digest_mode == DM_DIGEST)
|
||||
if(reagents.total_volume >= 5) //CHOMPEdit Start
|
||||
if(digest_mode == DM_DIGEST && M.digestable)
|
||||
reagents.trans_to(M, reagents.total_volume * 0.1, 1 / max(LAZYLEN(contents), 1), FALSE)
|
||||
to_chat(M, "<span class='vwarning'><B>You splash into a pool of [reagent_name]!</B></span>")
|
||||
if(!isliving(thing) && count_items_for_sprite) //CHOMPEdit - If this is enabled also update fullness for non-living things
|
||||
@@ -727,7 +727,7 @@
|
||||
I.alpha = custom_ingested_alpha
|
||||
I.pixel_y = -450 + ((450 / max(max_ingested, 1)) * min(max_ingested, ingested.total_volume))
|
||||
F.add_overlay(I)
|
||||
if(L.liquidbelly_visuals && mush_overlay && (owner.nutrition > 0 || max_mush == 0 || min_mush > 0 || (LAZYLEN(contents) * item_mush_val) > 0))
|
||||
if(show_liquids && L.liquidbelly_visuals && mush_overlay && (owner.nutrition > 0 || max_mush == 0 || min_mush > 0 || (LAZYLEN(contents) * item_mush_val) > 0))
|
||||
I = image('modular_chomp/icons/mob/vore_fullscreens/bubbles.dmi', "mush")
|
||||
I.color = mush_color
|
||||
I.alpha = mush_alpha
|
||||
@@ -743,7 +743,7 @@
|
||||
I.alpha = min(mush_alpha, (extra_mush / max(total_mush_content, 1)) * mush_alpha)
|
||||
I.pixel_y = stored_y
|
||||
F.add_overlay(I)
|
||||
if(L.liquidbelly_visuals && liquid_overlay && reagents.total_volume)
|
||||
if(show_liquids && L.liquidbelly_visuals && liquid_overlay && reagents.total_volume)
|
||||
if(digest_mode == DM_HOLD && item_digest_mode == IM_HOLD)
|
||||
I = image('modular_chomp/icons/mob/vore_fullscreens/bubbles.dmi', "calm")
|
||||
else
|
||||
@@ -785,7 +785,7 @@
|
||||
I.alpha = custom_ingested_alpha
|
||||
I.pixel_y = -450 + (450 / max(max_ingested, 1) * max(min(max_ingested, ingested.total_volume), 1))
|
||||
F.add_overlay(I)
|
||||
if(L.liquidbelly_visuals && mush_overlay && (owner.nutrition > 0 || max_mush == 0 || min_mush > 0 || (LAZYLEN(contents) * item_mush_val) > 0))
|
||||
if(show_liquids && L.liquidbelly_visuals && mush_overlay && (owner.nutrition > 0 || max_mush == 0 || min_mush > 0 || (LAZYLEN(contents) * item_mush_val) > 0))
|
||||
I = image('modular_chomp/icons/mob/vore_fullscreens/bubbles.dmi', "mush")
|
||||
I.color = mush_color
|
||||
I.alpha = mush_alpha
|
||||
@@ -801,7 +801,7 @@
|
||||
I.alpha = min(mush_alpha, (extra_mush / max(total_mush_content, 1)) * mush_alpha)
|
||||
I.pixel_y = stored_y
|
||||
F.add_overlay(I)
|
||||
if(L.liquidbelly_visuals && liquid_overlay && reagents.total_volume)
|
||||
if(show_liquids && L.liquidbelly_visuals && liquid_overlay && reagents.total_volume)
|
||||
if(digest_mode == DM_HOLD && item_digest_mode == IM_HOLD)
|
||||
I = image('modular_chomp/icons/mob/vore_fullscreens/bubbles.dmi', "calm")
|
||||
else
|
||||
|
||||
@@ -101,7 +101,7 @@ GLOBAL_LIST_INIT(digest_modes, list())
|
||||
var/mob/living/silicon/robot/R = B.owner
|
||||
R.cell.charge += 25*damage_gain */
|
||||
if(offset && damage_gain > 0) // If any different than default weight, multiply the % of offset.
|
||||
if(B.reagent_mode_flags & DM_FLAG_REAGENTSDIGEST && B.reagents.total_volume < B.reagents.maximum_volume) //digestion producing reagents
|
||||
if(B.show_liquids && B.reagent_mode_flags & DM_FLAG_REAGENTSDIGEST && B.reagents.total_volume < B.reagents.maximum_volume) //digestion producing reagents
|
||||
B.owner_adjust_nutrition(offset * (3 * damage_gain / difference) * L.get_digestion_nutrition_modifier() * B.owner.get_digestion_efficiency_modifier()) //Uncertain if balanced fairly, can adjust by multiplier for the cost of reagent, dont go below 1 or else it will result in more nutrition than normal - Jack
|
||||
B.digest_nutri_gain += offset * (1.5 * damage_gain / difference) * L.get_digestion_nutrition_modifier() * B.owner.get_digestion_efficiency_modifier() //for transfering nutrition value over to GenerateBellyReagents_digesting()
|
||||
B.GenerateBellyReagents_digesting()
|
||||
@@ -124,7 +124,7 @@ GLOBAL_LIST_INIT(digest_modes, list())
|
||||
B.steal_nutrition(L)
|
||||
if(L.nutrition < 100)
|
||||
B.absorb_living(L)
|
||||
if(B.reagent_mode_flags & DM_FLAG_REAGENTSABSORB && B.reagents.total_volume < B.reagents.maximum_volume) //CHOMPedit: absorption reagent production
|
||||
if(B.show_liquids && B.reagent_mode_flags & DM_FLAG_REAGENTSABSORB && B.reagents.total_volume < B.reagents.maximum_volume) //CHOMPedit: absorption reagent production
|
||||
B.GenerateBellyReagents_absorbed() //CHOMPedit end: A bonus for pred, I know for a fact prey is usually at zero nutrition when absorption finally happens
|
||||
consider_healthbar(L, old_nutrition, B.owner)
|
||||
return list("to_update" = TRUE)
|
||||
@@ -191,7 +191,7 @@ GLOBAL_LIST_INIT(digest_modes, list())
|
||||
|
||||
/datum/digest_mode/heal/process_mob(obj/belly/B, mob/living/L)
|
||||
var/oldstat = L.stat
|
||||
if(L.stat == DEAD)
|
||||
if(L.stat == DEAD || !L.permit_healbelly) //CHOMPEdit healpref check
|
||||
return null // Can't heal the dead with healbelly
|
||||
var/mob/living/carbon/human/H = L
|
||||
if(B.owner.nutrition > 90 && H.isSynthetic())
|
||||
|
||||
@@ -230,7 +230,7 @@
|
||||
touchable_atoms |= I
|
||||
|
||||
//Stripping flag
|
||||
if(mode_flags & DM_FLAG_STRIPPING)
|
||||
if((mode_flags & DM_FLAG_STRIPPING) && H.strip_pref) //CHOMPEdit Stripping pref check
|
||||
for(var/slot in slots)
|
||||
var/obj/item/I = H.get_equipped_item(slot = slot)
|
||||
if(I && H.unEquip(I, force = FALSE))
|
||||
@@ -373,7 +373,7 @@
|
||||
GenerateBellyReagents_digested()
|
||||
else
|
||||
R.cell.charge += (nutrition_percent / 100) * compensation * 25 * personal_nutrition_modifier*/
|
||||
if(reagent_mode_flags & DM_FLAG_REAGENTSDIGEST && reagents.total_volume < reagents.maximum_volume) //CHOMP digestion producing reagents
|
||||
if(show_liquids && reagent_mode_flags & DM_FLAG_REAGENTSDIGEST && reagents.total_volume < reagents.maximum_volume) //CHOMP digestion producing reagents
|
||||
owner_adjust_nutrition((nutrition_percent / 100) * compensation * 3 * personal_nutrition_modifier)
|
||||
GenerateBellyReagents_digested()
|
||||
else
|
||||
@@ -383,7 +383,7 @@
|
||||
if(L.nutrition >= 100)
|
||||
var/oldnutrition = (L.nutrition * 0.05)
|
||||
L.nutrition = (L.nutrition * 0.95)
|
||||
if(reagent_mode_flags & DM_FLAG_REAGENTSDRAIN && reagents.total_volume < reagents.maximum_volume) //CHOMPedit: draining reagent production //Added to this proc now since it's used for draining
|
||||
if(show_liquids && reagent_mode_flags & DM_FLAG_REAGENTSDRAIN && reagents.total_volume < reagents.maximum_volume) //CHOMPedit: draining reagent production //Added to this proc now since it's used for draining
|
||||
owner_adjust_nutrition(oldnutrition * 0.75) //keeping the price static, due to how much nutrition can flunctuate
|
||||
GenerateBellyReagents_absorbing() //Dont need unique proc so far
|
||||
else
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
var/total_volume = B.reagents.total_volume
|
||||
vore_organs_reagents += total_volume
|
||||
|
||||
if(B.vorefootsteps_sounds == TRUE && highest_vol < total_volume)
|
||||
if(B.show_liquids && B.vorefootsteps_sounds && highest_vol < total_volume)
|
||||
highest_vol = total_volume
|
||||
|
||||
if(highest_vol < 20) //For now the volume will be off if less than 20 units of reagent are in vorebellies
|
||||
@@ -234,7 +234,7 @@
|
||||
choices += rc
|
||||
var/obj/item/weapon/reagent_containers/T = input(user,"Choose what to transfer to","Select Target") as null|anything in choices
|
||||
if(!T)
|
||||
return FALSE
|
||||
return FALSE
|
||||
if(!Adjacent(T) || !Adjacent(TG))
|
||||
return //No long distance transfer
|
||||
|
||||
|
||||
@@ -244,14 +244,25 @@
|
||||
P.weight_message_visible = src.weight_message_visible
|
||||
P.weight_messages = src.weight_messages
|
||||
|
||||
//CHOMP stuff
|
||||
//CHOMP stuff Start
|
||||
P.phase_vore = src.phase_vore
|
||||
P.noisy_full = src.noisy_full
|
||||
P.latejoin_vore = src.latejoin_vore
|
||||
P.latejoin_prey = src.latejoin_prey
|
||||
P.receive_reagents = src.receive_reagents
|
||||
P.give_reagents = src.give_reagents
|
||||
P.apply_reagents = src.apply_reagents
|
||||
P.autotransferable = src.autotransferable
|
||||
P.strip_pref = src.strip_pref
|
||||
P.vore_sprite_color = src.vore_sprite_color
|
||||
P.vore_sprite_multiply = src.vore_sprite_multiply
|
||||
P.no_latejoin_vore_warning = src.no_latejoin_vore_warning
|
||||
P.no_latejoin_prey_warning = src.no_latejoin_prey_warning
|
||||
P.no_latejoin_vore_warning_time = src.no_latejoin_vore_warning_time
|
||||
P.no_latejoin_prey_warning_time = src.no_latejoin_prey_warning_time
|
||||
P.no_latejoin_vore_warning_persists = src.no_latejoin_vore_warning_persists
|
||||
P.no_latejoin_prey_warning_persists = src.no_latejoin_prey_warning_persists
|
||||
//CHOMP Stuff End
|
||||
|
||||
var/list/serialized = list()
|
||||
for(var/obj/belly/B as anything in src.vore_organs)
|
||||
@@ -303,13 +314,23 @@
|
||||
weight_messages = P.weight_messages
|
||||
|
||||
//CHOMP stuff
|
||||
phase_vore = P.phase_vore
|
||||
noisy_full = P.noisy_full
|
||||
latejoin_vore = P.latejoin_vore
|
||||
latejoin_prey = P.latejoin_prey
|
||||
receive_reagents = P.receive_reagents
|
||||
give_reagents = P.give_reagents
|
||||
apply_reagents = P.apply_reagents
|
||||
autotransferable = P.autotransferable
|
||||
strip_pref = P.strip_pref
|
||||
vore_sprite_color = P.vore_sprite_color
|
||||
vore_sprite_multiply = P.vore_sprite_multiply
|
||||
no_latejoin_vore_warning = P.no_latejoin_vore_warning
|
||||
no_latejoin_prey_warning = P.no_latejoin_prey_warning
|
||||
no_latejoin_vore_warning_time = P.no_latejoin_vore_warning_time
|
||||
no_latejoin_prey_warning_time = P.no_latejoin_prey_warning_time
|
||||
no_latejoin_vore_warning_persists = P.no_latejoin_vore_warning_persists
|
||||
no_latejoin_prey_warning_persists = P.no_latejoin_prey_warning_persists
|
||||
|
||||
if(bellies)
|
||||
if(isliving(src))
|
||||
@@ -1135,31 +1156,43 @@
|
||||
dispvoreprefs += "<font color='red'><b>OOC DISABLED</b></font><br>"
|
||||
if("CHAT_LOOC" in client.prefs.preferences_disabled)
|
||||
dispvoreprefs += "<font color='red'><b>LOOC DISABLED</b></font><br>"
|
||||
dispvoreprefs += "<b>Digestable:</b> [digestable ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Devourable:</b> [devourable ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Feedable:</b> [feeding ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Autotransferable:</b> [autotransferable ? "Enabled" : "Disabled"]<br>" //CHOMPstation edit
|
||||
dispvoreprefs += "<b>Absorption Permission:</b> [absorbable ? "Allowed" : "Disallowed"]<br>"
|
||||
dispvoreprefs += "<b>Leaves Remains:</b> [digest_leave_remains ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Mob Vore:</b> [allowmobvore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Healbelly permission:</b> [permit_healbelly ? "Allowed" : "Disallowed"]<br>"
|
||||
dispvoreprefs += "<b>Selective Mode Pref:</b> [src.selective_preference]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous vore prey:</b> [can_be_drop_prey ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous vore pred:</b> [can_be_drop_pred ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Late join spawn point belly:</b> [latejoin_vore ? "Enabled" : "Disabled"]<br>" //CHOMPstation edit
|
||||
dispvoreprefs += "<b>Can be late join prey:</b> [latejoin_prey ? "Enabled" : "Disabled"]<br>" //CHOMPstation edit
|
||||
dispvoreprefs += "<b>Receiving liquids:</b> [receive_reagents ? "Enabled" : "Disabled"]<br>" //CHOMPstation edit
|
||||
dispvoreprefs += "<b>Giving liquids:</b> [give_reagents ? "Enabled" : "Disabled"]<br>" //CHOMPstation edit
|
||||
dispvoreprefs += "<b>Drop Vore:</b> [drop_vore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Slip Vore:</b> [slip_vore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Throw vore:</b> [throw_vore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Stumble Vore:</b> [stumble_vore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Food Vore:</b> [food_vore ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous transformation:</b> [allow_spontaneous_tf ? "Enabled" : "Disabled"]<br>"
|
||||
dispvoreprefs += "<b>Can be stepped on/over:</b> [step_mechanics_pref ? "Allowed" : "Disallowed"]<br>"
|
||||
dispvoreprefs += "<b>Can be picked up:</b> [pickup_pref ? "Allowed" : "Disallowed"]<br>"
|
||||
dispvoreprefs += "<b>Global Vore Privacy is:</b> [eating_privacy_global ? "Subtle" : "Loud"]<br>"
|
||||
//CHOMPEdit Start
|
||||
dispvoreprefs += "<b>Devourable:</b> [devourable ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
if(devourable)
|
||||
dispvoreprefs += "<b>Healbelly permission:</b> [permit_healbelly ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Digestable:</b> [digestable ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Absorption Permission:</b> [absorbable ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Selective Mode Pref:</b> [src.selective_preference]<br>"
|
||||
dispvoreprefs += "<b>Mob Vore:</b> [allowmobvore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Autotransferable:</b> [autotransferable ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Can be stripped:</b> [strip_pref ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Applying reagents:</b> [apply_reagents ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Leaves Remains:</b> [digest_leave_remains ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous vore prey:</b> [can_be_drop_prey ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous vore pred:</b> [can_be_drop_pred ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
if(can_be_drop_prey || can_be_drop_pred)
|
||||
dispvoreprefs += "<b>Drop Vore:</b> [drop_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Slip Vore:</b> [slip_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Stumble Vore:</b> [stumble_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Throw vore:</b> [throw_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Food Vore:</b> [food_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Phase Vore:</b> [phase_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Can be stepped on/over:</b> [step_mechanics_pref ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Can be picked up:</b> [pickup_pref ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Can be resized:</b> [resizable ? "<font color='green'>Allowed</font>" : "<font color='red'>Disallowed</font>"]<br>"
|
||||
dispvoreprefs += "<b>Spontaneous transformation:</b> [allow_spontaneous_tf ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Feedable:</b> [feeding ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Receiving liquids:</b> [receive_reagents ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Giving liquids:</b> [give_reagents ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Late join spawn point belly:</b> [latejoin_vore ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
if(latejoin_vore)
|
||||
dispvoreprefs += "<b>Late join spawn auto accept:</b> [no_latejoin_vore_warning ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Can be late join prey:</b> [latejoin_prey ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
if(latejoin_prey)
|
||||
dispvoreprefs += "<b>Late join prey auto accept:</b> [no_latejoin_prey_warning ? "<font color='green'>Enabled</font>" : "<font color='red'>Disabled</font>"]<br>"
|
||||
dispvoreprefs += "<b>Global Vore Privacy is:</b> [eating_privacy_global ? "<font color='green'>Subtle</font>" : "<font color='red'>Loud</font>"]<br>"
|
||||
dispvoreprefs += "<b>Current active belly:</b> [vore_selected ? vore_selected.name : "None"]<br>"
|
||||
//CHOMPEdit End
|
||||
user << browse("<html><head><title>Vore prefs: [src]</title></head><body><center>[dispvoreprefs]</center></body></html>", "window=[name]mvp;size=300x400;can_resize=1;can_minimize=0")
|
||||
onclose(user, "[name]")
|
||||
return
|
||||
|
||||
@@ -1,6 +1,18 @@
|
||||
/mob
|
||||
var/receive_reagents = FALSE //Pref for people to avoid others transfering reagents into them.
|
||||
var/give_reagents = FALSE //Pref for people to avoid others taking reagents from them.
|
||||
var/apply_reagents = TRUE //Pref for people to avoid having stomach reagents applied to them
|
||||
var/latejoin_vore = FALSE //If enabled, latejoiners can spawn into this, assuming they have a client
|
||||
var/latejoin_prey = FALSE //If enabled, latejoiners can spawn ontop of and instantly eat the victim
|
||||
var/noisy_full = FALSE //Enables belching when a mob has overeaten
|
||||
var/phase_vore = TRUE //Enabled by default since you have to enable drop pred/prey to do this anyway
|
||||
var/strip_pref = TRUE //Enables the ability for worn items to be stripped
|
||||
var/no_latejoin_vore_warning = FALSE //Auto accepts pred spwan notifications (roundbased / saveable)
|
||||
var/no_latejoin_prey_warning = FALSE //Auto accepts prey spawn notifications (roundbased / saveable)
|
||||
var/no_latejoin_vore_warning_time = 15 //Time until accepting prey
|
||||
var/no_latejoin_prey_warning_time = 15 //Time until accepting pred
|
||||
var/no_latejoin_vore_warning_persists = FALSE //Do we save it?
|
||||
var/no_latejoin_prey_warning_persists = FALSE //Do we save it?
|
||||
|
||||
// CHOMP vore icons refactor (Now on mob)
|
||||
var/vore_capacity = 0 // Maximum capacity, -1 for unlimited
|
||||
|
||||
@@ -23,9 +23,6 @@
|
||||
var/can_be_drop_pred = FALSE
|
||||
var/allow_spontaneous_tf = FALSE // Obviously.
|
||||
var/show_vore_fx = TRUE // Show belly fullscreens
|
||||
var/latejoin_vore = FALSE //CHOMPedit: If enabled, latejoiners can spawn into this, assuming they have a client
|
||||
var/latejoin_prey = FALSE //CHOMPedit: If enabled, latejoiners can spawn ontop of and instantly eat the victim
|
||||
var/noisy_full = FALSE //CHOMPedit: Enables belching when a mob has overeaten
|
||||
var/selective_preference = DM_DEFAULT // Preference for selective bellymode
|
||||
var/text_warnings = TRUE // Allows us to dismiss the text limit warning messages after viewing it once per round
|
||||
var/eating_privacy_global = FALSE // Makes eating attempt/success messages only reach for subtle range if true, overwritten by belly-specific var
|
||||
|
||||
@@ -69,14 +69,24 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
var/pickup_pref = TRUE
|
||||
|
||||
//CHOMP stuff
|
||||
var/phase_vore = TRUE
|
||||
var/noisy_full = FALSE
|
||||
var/receive_reagents = FALSE
|
||||
var/give_reagents = FALSE
|
||||
var/apply_reagents = TRUE
|
||||
var/latejoin_vore = FALSE
|
||||
var/latejoin_prey = FALSE
|
||||
var/autotransferable = TRUE
|
||||
var/strip_pref = FALSE
|
||||
var/vore_sprite_multiply = list("stomach" = FALSE, "taur belly" = FALSE)
|
||||
var/vore_sprite_color = list("stomach" = "#000", "taur belly" = "#000")
|
||||
//CHOMP stuff end
|
||||
var/no_latejoin_vore_warning = FALSE // Only load, when... no_latejoin_vore_warning_persists
|
||||
var/no_latejoin_prey_warning = FALSE // Only load, when... no_latejoin_vore_warning_persists
|
||||
var/no_latejoin_vore_warning_time = 15 // Only load, when... no_latejoin_vore_warning_persists
|
||||
var/no_latejoin_prey_warning_time = 15 // Only load, when... no_latejoin_vore_warning_persists
|
||||
var/no_latejoin_vore_warning_persists = FALSE
|
||||
var/no_latejoin_prey_warning_persists = FALSE
|
||||
//CHOMP stuff end
|
||||
|
||||
var/list/belly_prefs = list()
|
||||
var/vore_taste = "nothing in particular"
|
||||
@@ -207,14 +217,28 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
eating_privacy_global = json_from_file["eating_privacy_global"]
|
||||
|
||||
|
||||
//CHOMP stuff
|
||||
//CHOMP stuff Start
|
||||
phase_vore = json_from_file["phase_vore"]
|
||||
latejoin_vore = json_from_file["latejoin_vore"]
|
||||
latejoin_prey = json_from_file["latejoin_prey"]
|
||||
receive_reagents = json_from_file["receive_reagents"]
|
||||
noisy_full = json_from_file["noisy_full"]
|
||||
give_reagents = json_from_file["give_reagents"]
|
||||
apply_reagents = json_from_file["apply_reagents"]
|
||||
autotransferable = json_from_file["autotransferable"]
|
||||
vore_sprite_color = json_from_file["vore_sprite_color"]
|
||||
vore_sprite_multiply = json_from_file["vore_sprite_multiply"]
|
||||
strip_pref = json_from_file["strip_mechanics_pref"]
|
||||
|
||||
no_latejoin_vore_warning_persists = json_from_file["no_latejoin_vore_warning_persists"]
|
||||
if(no_latejoin_vore_warning_persists)
|
||||
no_latejoin_vore_warning = json_from_file["no_latejoin_vore_warning"]
|
||||
no_latejoin_vore_warning_time = json_from_file["no_latejoin_vore_warning_time"]
|
||||
no_latejoin_prey_warning_persists = json_from_file["no_latejoin_prey_warning_persists"]
|
||||
if(no_latejoin_prey_warning_persists)
|
||||
no_latejoin_prey_warning = json_from_file["no_latejoin_prey_warning"]
|
||||
no_latejoin_prey_warning_time = json_from_file["no_latejoin_prey_warning_time"]
|
||||
//CHOMP stuff End
|
||||
|
||||
|
||||
//Quick sanitize
|
||||
@@ -299,7 +323,9 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
while(weight_messages.len < 10)
|
||||
weight_messages.Add("")
|
||||
|
||||
//CHOMP stuff
|
||||
//CHOMP stuff Start
|
||||
if(isnull(phase_vore))
|
||||
phase_vore = TRUE
|
||||
if(isnull(latejoin_vore))
|
||||
latejoin_vore = FALSE
|
||||
if(isnull(latejoin_prey))
|
||||
@@ -308,12 +334,31 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
receive_reagents = FALSE
|
||||
if(isnull(give_reagents))
|
||||
give_reagents = FALSE
|
||||
if(isnull(apply_reagents))
|
||||
apply_reagents = TRUE
|
||||
if(isnull(noisy_full))
|
||||
noisy_full = FALSE
|
||||
if(isnull(autotransferable))
|
||||
autotransferable = TRUE
|
||||
if(isnull(vore_sprite_color))
|
||||
vore_sprite_color = list("stomach" = "#000", "taur belly" = "#000")
|
||||
if(isnull(vore_sprite_multiply))
|
||||
vore_sprite_multiply = list("stomach" = FALSE, "taur belly" = FALSE)
|
||||
if(isnull(strip_pref))
|
||||
strip_pref = TRUE
|
||||
if(isnull(no_latejoin_vore_warning))
|
||||
no_latejoin_vore_warning = FALSE
|
||||
if(isnull(no_latejoin_prey_warning))
|
||||
no_latejoin_prey_warning = FALSE
|
||||
if(isnull(no_latejoin_vore_warning_time))
|
||||
no_latejoin_vore_warning_time = 30
|
||||
if(isnull(no_latejoin_prey_warning_time))
|
||||
no_latejoin_prey_warning_time = 30
|
||||
if(isnull(no_latejoin_vore_warning_persists))
|
||||
no_latejoin_vore_warning_persists = FALSE
|
||||
if(isnull(no_latejoin_prey_warning_persists))
|
||||
no_latejoin_prey_warning_persists = FALSE
|
||||
//CHOMP stuff End
|
||||
|
||||
return TRUE
|
||||
|
||||
@@ -335,23 +380,26 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
"vore_smell" = vore_smell,
|
||||
"permit_healbelly" = permit_healbelly,
|
||||
"noisy" = noisy,
|
||||
"noisy_full" = noisy_full, //CHOMPedit
|
||||
"selective_preference" = selective_preference,
|
||||
"show_vore_fx" = show_vore_fx,
|
||||
"can_be_drop_prey" = can_be_drop_prey,
|
||||
"can_be_drop_pred" = can_be_drop_pred,
|
||||
"latejoin_vore" = latejoin_vore, //CHOMPedit
|
||||
"latejoin_prey" = latejoin_prey,
|
||||
"latejoin_prey" = latejoin_prey, //CHOMPedit
|
||||
"allow_spontaneous_tf" = allow_spontaneous_tf,
|
||||
"step_mechanics_pref" = step_mechanics_pref,
|
||||
"pickup_pref" = pickup_pref,
|
||||
"belly_prefs" = belly_prefs,
|
||||
"receive_reagents" = receive_reagents,
|
||||
"give_reagents" = give_reagents,
|
||||
"receive_reagents" = receive_reagents, //CHOMPedit
|
||||
"give_reagents" = give_reagents, //CHOMPedit
|
||||
"apply_reagents" = apply_reagents, //CHOMPedit
|
||||
"autotransferable" = autotransferable,
|
||||
"drop_vore" = drop_vore,
|
||||
"slip_vore" = slip_vore,
|
||||
"stumble_vore" = stumble_vore,
|
||||
"throw_vore" = throw_vore,
|
||||
"phase_vore" = phase_vore, //CHOMPedit
|
||||
"food_vore" = food_vore,
|
||||
"nutrition_message_visible" = nutrition_message_visible,
|
||||
"nutrition_messages" = nutrition_messages,
|
||||
@@ -360,6 +408,12 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
"eating_privacy_global" = eating_privacy_global,
|
||||
"vore_sprite_color" = vore_sprite_color, //CHOMPEdit
|
||||
"vore_sprite_multiply" = vore_sprite_multiply, //CHOMPEdit
|
||||
"no_latejoin_vore_warning" = no_latejoin_vore_warning, //CHOMPEdit
|
||||
"no_latejoin_prey_warning" = no_latejoin_prey_warning, //CHOMPEdit
|
||||
"no_latejoin_vore_warning_time" = no_latejoin_vore_warning_time, //CHOMPEdit
|
||||
"no_latejoin_prey_warning_time" = no_latejoin_prey_warning_time, //CHOMPEdit
|
||||
"no_latejoin_vore_warning_persists" = no_latejoin_vore_warning_persists, //CHOMPEdit
|
||||
"no_latejoin_prey_warning_persists" = no_latejoin_prey_warning_persists, //CHOMPEdit
|
||||
)
|
||||
|
||||
//List to JSON
|
||||
|
||||
@@ -56,6 +56,7 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
var/mob/host // Note, we do this in case we ever want to allow people to view others vore panels
|
||||
var/unsaved_changes = FALSE
|
||||
var/show_pictures = TRUE
|
||||
var/icon_overflow = FALSE
|
||||
var/max_icon_content = 21 //CHOMPedit: Contents above this disable icon mode. 21 for nice 3 rows to fill the default panel window.
|
||||
|
||||
/datum/vore_look/New(mob/new_host)
|
||||
@@ -118,6 +119,7 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
|
||||
data["unsaved_changes"] = unsaved_changes
|
||||
data["show_pictures"] = show_pictures
|
||||
data["overflow"] = icon_overflow
|
||||
|
||||
var/atom/hostloc = host.loc
|
||||
//CHOMPAdd Start - Allow VorePanel to show pred belly details even while indirectly inside
|
||||
@@ -152,6 +154,11 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
"desc" = inside_desc,
|
||||
"pred" = pred,
|
||||
"ref" = "\ref[inside_belly]",
|
||||
//CHOMPEdit Start
|
||||
"liq_lvl" = inside_belly.reagents.total_volume,
|
||||
"liq_reagent_type" = inside_belly.reagent_chosen,
|
||||
"liuq_name" = inside_belly.reagent_name,
|
||||
//CHOMPEdit End
|
||||
)
|
||||
|
||||
var/list/inside_contents = list()
|
||||
@@ -166,11 +173,13 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
"ref" = "\ref[O]",
|
||||
"outside" = FALSE,
|
||||
)
|
||||
if(show_pictures) //CHOMPedit: disables icon mode
|
||||
if(show_pictures) //CHOMPedit Start: disables icon mode
|
||||
if(inside_belly.contents.len <= max_icon_content)
|
||||
icon_overflow = FALSE
|
||||
info["icon"] = cached_nom_icon(O)
|
||||
else
|
||||
show_pictures = !show_pictures
|
||||
icon_overflow = TRUE
|
||||
//CHOMPEdit End
|
||||
if(isliving(O))
|
||||
var/mob/living/M = O
|
||||
info["stat"] = M.stat
|
||||
@@ -425,11 +434,13 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
"ref" = "\ref[O]",
|
||||
"outside" = TRUE,
|
||||
)
|
||||
if(show_pictures) //CHOMPedit: disables icon mode
|
||||
if(show_pictures) //CHOMPedit Start: disables icon mode
|
||||
if(selected.contents.len <= max_icon_content)
|
||||
icon_overflow = FALSE
|
||||
info["icon"] = cached_nom_icon(O)
|
||||
else
|
||||
show_pictures = !show_pictures
|
||||
icon_overflow = TRUE
|
||||
//CHOMPEdit End
|
||||
if(isliving(O))
|
||||
var/mob/living/M = O
|
||||
info["stat"] = M.stat
|
||||
@@ -499,22 +510,34 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
"show_vore_fx" = host.show_vore_fx,
|
||||
"can_be_drop_prey" = host.can_be_drop_prey,
|
||||
"can_be_drop_pred" = host.can_be_drop_pred,
|
||||
"latejoin_vore" = host.latejoin_vore, //CHOMPedit
|
||||
"latejoin_prey" = host.latejoin_prey, //CHOMPedit
|
||||
//CHOMPedit Start
|
||||
"latejoin_vore" = host.latejoin_vore,
|
||||
"latejoin_prey" = host.latejoin_prey,
|
||||
"no_spawnpred_warning" = host.no_latejoin_vore_warning,
|
||||
"no_spawnprey_warning" = host.no_latejoin_prey_warning,
|
||||
"no_spawnpred_warning_time" = host.no_latejoin_vore_warning_time,
|
||||
"no_spawnprey_warning_time" = host.no_latejoin_prey_warning_time,
|
||||
"no_spawnpred_warning_save" = host.no_latejoin_vore_warning_persists,
|
||||
"no_spawnprey_warning_save" = host.no_latejoin_prey_warning_persists,
|
||||
//CHOMPedit End
|
||||
"allow_spontaneous_tf" = host.allow_spontaneous_tf,
|
||||
"step_mechanics_active" = host.step_mechanics_pref,
|
||||
"pickup_mechanics_active" = host.pickup_pref,
|
||||
"strip_mechanics_active" = host.strip_pref, //CHOMPedit
|
||||
"noisy" = host.noisy,
|
||||
//CHOMPedit start, liquid belly prefs
|
||||
"liq_rec" = host.receive_reagents,
|
||||
"liq_giv" = host.give_reagents,
|
||||
"liq_apply" = host.apply_reagents,
|
||||
"autotransferable" = host.autotransferable,
|
||||
"noisy_full" = host.noisy_full, //Belching while full
|
||||
"selective_active" = host.selective_preference, //Reveal active selective mode in prefs
|
||||
//CHOMPedit end
|
||||
"drop_vore" = host.drop_vore,
|
||||
"slip_vore" = host.slip_vore,
|
||||
"stumble_vore" = host.stumble_vore,
|
||||
"throw_vore" = host.throw_vore,
|
||||
"phase_vore" = host.phase_vore, //CHOMPedit
|
||||
"food_vore" = host.food_vore,
|
||||
"nutrition_message_visible" = host.nutrition_message_visible,
|
||||
"nutrition_messages" = host.nutrition_messages,
|
||||
@@ -1763,6 +1786,7 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
host.client.prefs_vr.can_be_drop_prey = host.can_be_drop_prey
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit Start
|
||||
if("toggle_latejoin_vore")
|
||||
host.latejoin_vore = !host.latejoin_vore
|
||||
if(host.client.prefs_vr)
|
||||
@@ -1775,6 +1799,7 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
host.client.prefs_vr.latejoin_prey = host.latejoin_prey
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit End
|
||||
if("toggle_allow_spontaneous_tf")
|
||||
host.allow_spontaneous_tf = !host.allow_spontaneous_tf
|
||||
if(host.client.prefs_vr)
|
||||
@@ -1841,6 +1866,14 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
host.client.prefs_vr.pickup_pref = host.pickup_pref
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit Start
|
||||
if("toggle_strippref")
|
||||
host.strip_pref = !host.strip_pref
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.strip_pref = host.strip_pref
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit End
|
||||
if("toggle_healbelly")
|
||||
host.permit_healbelly = !host.permit_healbelly
|
||||
if(host.client.prefs_vr)
|
||||
@@ -1884,6 +1917,12 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
host.client.prefs_vr.give_reagents = host.give_reagents
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_liq_apply")
|
||||
host.apply_reagents = !host.apply_reagents
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.apply_reagents = host.apply_reagents
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_autotransferable")
|
||||
host.autotransferable = !host.autotransferable
|
||||
if(host.client.prefs_vr)
|
||||
@@ -1898,22 +1937,50 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
//CHOMPedit end
|
||||
if("toggle_drop_vore")
|
||||
host.drop_vore = !host.drop_vore
|
||||
//CHOMPEdit Start
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.drop_vore = host.drop_vore
|
||||
//CHOMPEdit End
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_slip_vore")
|
||||
host.slip_vore = !host.slip_vore
|
||||
//CHOMPEdit Start
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.slip_vore = host.slip_vore
|
||||
//CHOMPEdit End
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_stumble_vore")
|
||||
host.stumble_vore = !host.stumble_vore
|
||||
//CHOMPEdit Start
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.stumble_vore = host.stumble_vore
|
||||
//CHOMPEdit End
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_throw_vore")
|
||||
host.throw_vore = !host.throw_vore
|
||||
//CHOMPEdit Start
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.throw_vore = host.throw_vore
|
||||
//CHOMPEdit End
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit Start
|
||||
if("toggle_phase_vore")
|
||||
host.phase_vore = !host.phase_vore
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.phase_vore = host.phase_vore
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit End
|
||||
if("toggle_food_vore")
|
||||
host.food_vore = !host.food_vore
|
||||
//CHOMPEdit Start
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.food_vore = host.food_vore
|
||||
//CHOMPEdit End
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("switch_selective_mode_pref")
|
||||
@@ -1945,6 +2012,46 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
host.vore_sprite_multiply[belly_choice] = FALSE
|
||||
host.update_icons_body()
|
||||
return TRUE
|
||||
if("toggle_no_latejoin_vore_warning")
|
||||
host.no_latejoin_vore_warning = !host.no_latejoin_vore_warning
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_vore_warning = host.no_latejoin_vore_warning
|
||||
if(host.no_latejoin_vore_warning_persists)
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_no_latejoin_prey_warning")
|
||||
host.no_latejoin_prey_warning = !host.no_latejoin_prey_warning
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_prey_warning = host.no_latejoin_prey_warning
|
||||
if(host.no_latejoin_prey_warning_persists)
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("adjust_no_latejoin_vore_warning_time")
|
||||
host.no_latejoin_vore_warning_time = text2num(params["new_pred_time"])
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_vore_warning_time = host.no_latejoin_vore_warning_time
|
||||
if(host.no_latejoin_vore_warning_persists)
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("adjust_no_latejoin_prey_warning_time")
|
||||
host.no_latejoin_prey_warning_time = text2num(params["new_prey_time"])
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_prey_warning_time = host.no_latejoin_prey_warning_time
|
||||
if(host.no_latejoin_prey_warning_persists)
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_no_latejoin_vore_warning_persists")
|
||||
host.no_latejoin_vore_warning_persists = !host.no_latejoin_vore_warning_persists
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_vore_warning_persists = host.no_latejoin_vore_warning_persists
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
if("toggle_no_latejoin_prey_warning_persists")
|
||||
host.no_latejoin_prey_warning_persists = !host.no_latejoin_prey_warning_persists
|
||||
if(host.client.prefs_vr)
|
||||
host.client.prefs_vr.no_latejoin_prey_warning_persists = host.no_latejoin_prey_warning_persists
|
||||
unsaved_changes = TRUE
|
||||
return TRUE
|
||||
//CHOMPEdit end
|
||||
|
||||
/datum/vore_look/proc/pick_from_inside(mob/user, params)
|
||||
@@ -3699,6 +3806,8 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
else
|
||||
host.vore_selected.reagents.clear_reagents()
|
||||
. = TRUE
|
||||
if(.)
|
||||
unsaved_changes = TRUE
|
||||
|
||||
/datum/vore_look/proc/liq_set_msg(mob/user, params)
|
||||
if(!host.vore_selected)
|
||||
@@ -3770,4 +3879,6 @@ var/global/list/belly_colorable_only_fullscreens = list("a_synth_flesh_mono",
|
||||
if(new_message)
|
||||
host.vore_selected.set_reagent_messages(new_message,"full5")
|
||||
. = TRUE
|
||||
if(.)
|
||||
unsaved_changes = TRUE
|
||||
//CHOMPedit end
|
||||
|
||||
@@ -259,7 +259,6 @@
|
||||
new_mob.feeding = feeding
|
||||
new_mob.can_be_drop_prey = can_be_drop_prey
|
||||
new_mob.can_be_drop_pred = can_be_drop_pred
|
||||
new_mob.latejoin_vore = latejoin_vore
|
||||
new_mob.digest_leave_remains = digest_leave_remains
|
||||
new_mob.allowmobvore = allowmobvore
|
||||
new_mob.permit_healbelly = permit_healbelly
|
||||
@@ -283,6 +282,26 @@
|
||||
new_mob.eating_privacy_global = eating_privacy_global
|
||||
new_mob.text_warnings = text_warnings
|
||||
|
||||
//CHOMP stuff Start
|
||||
new_mob.phase_vore = phase_vore
|
||||
new_mob.latejoin_vore = latejoin_vore
|
||||
new_mob.latejoin_prey = latejoin_prey
|
||||
new_mob.receive_reagents = receive_reagents
|
||||
new_mob.give_reagents = give_reagents
|
||||
new_mob.apply_reagents = apply_reagents
|
||||
new_mob.autotransferable = autotransferable
|
||||
new_mob.strip_pref = strip_pref
|
||||
new_mob.vore_sprite_color = vore_sprite_color
|
||||
new_mob.vore_sprite_multiply = vore_sprite_multiply
|
||||
new_mob.noisy_full = noisy_full
|
||||
new_mob.no_latejoin_vore_warning = no_latejoin_vore_warning
|
||||
new_mob.no_latejoin_prey_warning = no_latejoin_prey_warning
|
||||
new_mob.no_latejoin_vore_warning_time = no_latejoin_vore_warning_time
|
||||
new_mob.no_latejoin_prey_warning_time = no_latejoin_prey_warning_time
|
||||
new_mob.no_latejoin_vore_warning_persists = no_latejoin_vore_warning_persists
|
||||
new_mob.no_latejoin_prey_warning_persists = no_latejoin_prey_warning_persists
|
||||
//CHOMP stuff End
|
||||
|
||||
/////SUBTYPES/////
|
||||
|
||||
/obj/item/weapon/gun/energy/mouseray/medical //This just changes people back, it can't TF people into anything without shenanigans
|
||||
|
||||
Reference in New Issue
Block a user