diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 8c5f15f7418..85ce88330ab 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -22,6 +22,7 @@ var/drain_finalized = 0 // Determines if the succubus drain will be KO'd/absorbed. Can be toggled on at any time. var/fuzzy = 1 // Preference toggle for sharp/fuzzy icon. var/tail_alt = 0 // Tail layer toggle. + var/permit_healbelly = TRUE var/can_be_drop_prey = 0 var/can_be_drop_pred = 1 // Mobs are pred by default. @@ -199,6 +200,7 @@ P.digest_leave_remains = src.digest_leave_remains P.allowmobvore = src.allowmobvore P.vore_taste = src.vore_taste + P.permit_healbelly = src.permit_healbelly P.can_be_drop_prey = src.can_be_drop_prey P.can_be_drop_pred = src.can_be_drop_pred @@ -225,6 +227,7 @@ digest_leave_remains = P.digest_leave_remains allowmobvore = P.allowmobvore vore_taste = P.vore_taste + permit_healbelly = P.permit_healbelly can_be_drop_prey = P.can_be_drop_prey can_be_drop_pred = P.can_be_drop_pred @@ -681,6 +684,7 @@ dispvoreprefs += "Digestable: [digestable ? "Enabled" : "Disabled"]
" dispvoreprefs += "Leaves Remains: [digest_leave_remains ? "Enabled" : "Disabled"]
" dispvoreprefs += "Mob Vore: [allowmobvore ? "Enabled" : "Disabled"]
" + dispvoreprefs += "Healbelly permission: [permit_healbelly ? "Allowed" : "Disallowed"]
" dispvoreprefs += "Drop-nom prey: [can_be_drop_prey ? "Enabled" : "Disabled"]
" dispvoreprefs += "Drop-nom pred: [can_be_drop_pred ? "Enabled" : "Disabled"]
" user << browse("Vore prefs: [src]
[dispvoreprefs]
", "window=[name];size=200x300;can_resize=0;can_minimize=0") diff --git a/code/modules/vore/eating/vore_vr.dm b/code/modules/vore/eating/vore_vr.dm index f89462f23c6..2b4a82da6c1 100644 --- a/code/modules/vore/eating/vore_vr.dm +++ b/code/modules/vore/eating/vore_vr.dm @@ -46,6 +46,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE var/allowmobvore = TRUE var/list/belly_prefs = list() var/vore_taste = "nothing in particular" + var/permit_healbelly = TRUE var/can_be_drop_prey = FALSE var/can_be_drop_pred = FALSE @@ -112,6 +113,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE digest_leave_remains = json_from_file["digest_leave_remains"] allowmobvore = json_from_file["allowmobvore"] vore_taste = json_from_file["vore_taste"] + permit_healbelly = json_from_file["permit_healbelly"] can_be_drop_prey = json_from_file["can_be_drop_prey"] can_be_drop_pred = json_from_file["can_be_drop_pred"] belly_prefs = json_from_file["belly_prefs"] @@ -123,6 +125,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE digest_leave_remains = FALSE if(isnull(allowmobvore)) allowmobvore = TRUE + if(isnull(permit_healbelly)) + permit_healbelly = TRUE if(isnull(can_be_drop_prey)) allowmobvore = FALSE if(isnull(can_be_drop_pred)) @@ -142,6 +146,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE "digest_leave_remains" = digest_leave_remains, "allowmobvore" = allowmobvore, "vore_taste" = vore_taste, + "permit_healbelly" = permit_healbelly, "can_be_drop_prey" = can_be_drop_prey, "can_be_drop_pred" = can_be_drop_pred, "belly_prefs" = belly_prefs, diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index c5e4391ef70..3f8788a2375 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -306,9 +306,15 @@ switch(user.allowmobvore) if(1) - dat += "Toggle Mob Vore" + dat += "
Toggle Mob Vore" if(0) - dat += "Toggle Mob Vore" + dat += "
Toggle Mob Vore" + + switch(user.permit_healbelly) + if(1) + dat += "Toggle Healbelly Permission" + if(0) + dat += "Toggle Healbelly Permission" dat += "
Toggle Drop-nom Prey" //These two get their own, custom row, too. dat += "Toggle Drop-nom Pred" @@ -871,6 +877,19 @@ if(user.client.prefs_vr) user.client.prefs_vr.allowmobvore = user.allowmobvore + if(href_list["togglehealbelly"]) + var/choice = alert(user, "This button is for those who don't like healbelly used on them as a mechanic. It does not affect anything, but is displayed under mechanical prefs for ease of quick checks. You are currently: [user.allowmobvore ? "Okay" : "Not Okay"] with players using healbelly on you.", "", "Allow Healing Belly", "Cancel", "Disallow Healing Belly") + switch(choice) + if("Cancel") + return 0 + if("Allow Healing Belly") + user.permit_healbelly = TRUE + if("Disallow Healing Belly") + user.permit_healbelly = FALSE + + if(user.client.prefs_vr) + user.client.prefs_vr.permit_healbelly = user.permit_healbelly + if(href_list["togglenoisy"]) var/choice = alert(user, "Toggle audible hunger noises. Currently: [user.noisy ? "Enabled" : "Disabled"]", "", "Enable audible hunger", "Cancel", "Disable audible hunger") switch(choice)