mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-07-14 01:34:04 +01:00
Merge pull request #6312 from TheFurryFeline/TFF-No_Absorbee,_No_Absorbee,_Noooo_Absorbee
Absorption Permission Stuff
This commit is contained in:
@@ -223,21 +223,24 @@
|
||||
|
||||
for (var/target in touchable_mobs)
|
||||
var/mob/living/M = target
|
||||
if(prob(10)) //Less often than gurgles. People might leave this on forever.
|
||||
if(M && M.client && M.is_preference_enabled(/datum/client_preference/digestion_noises))
|
||||
SEND_SOUND(M,prey_digest)
|
||||
play_sound = pick(pred_digest)
|
||||
if(M.absorbable == FALSE)
|
||||
return
|
||||
else
|
||||
if(prob(10)) //Less often than gurgles. People might leave this on forever.
|
||||
if(M && M.client && M.is_preference_enabled(/datum/client_preference/digestion_noises))
|
||||
SEND_SOUND(M,prey_digest)
|
||||
play_sound = pick(pred_digest)
|
||||
|
||||
if(M.absorbed)
|
||||
continue
|
||||
if(M.absorbed)
|
||||
continue
|
||||
|
||||
if(M.nutrition >= 100) //Drain them until there's no nutrients left. Slowly "absorb" them.
|
||||
var/oldnutrition = (M.nutrition * 0.05)
|
||||
M.nutrition = (M.nutrition * 0.95)
|
||||
owner.nutrition += oldnutrition
|
||||
else if(M.nutrition < 100) //When they're finally drained.
|
||||
absorb_living(M)
|
||||
to_update = TRUE
|
||||
if(M.nutrition >= 100) //Drain them until there's no nutrients left. Slowly "absorb" them.
|
||||
var/oldnutrition = (M.nutrition * 0.05)
|
||||
M.nutrition = (M.nutrition * 0.95)
|
||||
owner.nutrition += oldnutrition
|
||||
else if(M.nutrition < 100) //When they're finally drained.
|
||||
absorb_living(M)
|
||||
to_update = TRUE
|
||||
|
||||
//////////////////////////// DM_UNABSORB ////////////////////////////
|
||||
else if(digest_mode == DM_UNABSORB)
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
var/digestable = TRUE // Can the mob be digested inside a belly?
|
||||
var/devourable = TRUE // Can the mob be devoured at all?
|
||||
var/feeding = TRUE // Can the mob be vorishly force fed or fed to others?
|
||||
var/absorbable = TRUE // Are you allowed to absorb this person? TFF addition 14/12/19
|
||||
var/digest_leave_remains = FALSE // Will this mob leave bones/skull/etc after the melty demise?
|
||||
var/allowmobvore = TRUE // Will simplemobs attempt to eat the mob?
|
||||
var/showvoreprefs = TRUE // Determines if the mechanical vore preferences button will be displayed on the mob or not.
|
||||
@@ -220,6 +221,7 @@
|
||||
P.digestable = src.digestable
|
||||
P.devourable = src.devourable
|
||||
P.feeding = src.feeding
|
||||
P.absorbable = src.absorbable //TFF 14/12/19 - choose whether allowing absorbing
|
||||
P.digest_leave_remains = src.digest_leave_remains
|
||||
P.allowmobvore = src.allowmobvore
|
||||
P.vore_taste = src.vore_taste
|
||||
@@ -249,6 +251,7 @@
|
||||
digestable = P.digestable
|
||||
devourable = P.devourable
|
||||
feeding = P.feeding
|
||||
absorbable = P.absorbable //TFF 14/12/19 - choose whether allowing absorbing
|
||||
digest_leave_remains = P.digest_leave_remains
|
||||
allowmobvore = P.allowmobvore
|
||||
vore_taste = P.vore_taste
|
||||
@@ -710,6 +713,7 @@
|
||||
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>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>"
|
||||
|
||||
@@ -46,6 +46,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
var/digestable = TRUE
|
||||
var/devourable = TRUE
|
||||
var/feeding = TRUE
|
||||
var/absorbable = TRUE //TFF 14/12/19 - choose whether allowing absorbing
|
||||
var/digest_leave_remains = FALSE
|
||||
var/allowmobvore = TRUE
|
||||
var/list/belly_prefs = list()
|
||||
@@ -116,6 +117,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
digestable = json_from_file["digestable"]
|
||||
devourable = json_from_file["devourable"]
|
||||
feeding = json_from_file["feeding"]
|
||||
absorbable = json_from_file["absorbable"] //TFF 14/12/19 - choose whether allowing absorbing
|
||||
digest_leave_remains = json_from_file["digest_leave_remains"]
|
||||
allowmobvore = json_from_file["allowmobvore"]
|
||||
vore_taste = json_from_file["vore_taste"]
|
||||
@@ -131,6 +133,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
devourable = TRUE
|
||||
if(isnull(feeding))
|
||||
feeding = TRUE
|
||||
if(isnull(absorbable))
|
||||
absorbable = TRUE
|
||||
if(isnull(digest_leave_remains))
|
||||
digest_leave_remains = FALSE
|
||||
if(isnull(allowmobvore))
|
||||
@@ -154,6 +158,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
|
||||
"version" = version,
|
||||
"digestable" = digestable,
|
||||
"devourable" = devourable,
|
||||
"absorbable" = absorbable,
|
||||
"feeding" = feeding,
|
||||
"digest_leave_remains" = digest_leave_remains,
|
||||
"allowmobvore" = allowmobvore,
|
||||
|
||||
@@ -326,6 +326,11 @@
|
||||
dat += "<br><a style='background:#173d15;' href='?src=\ref[src];toggledfeed=1'>Toggle Feeding (Currently: ON)</a>"
|
||||
if(FALSE)
|
||||
dat += "<br><a style='background:#990000;' href='?src=\ref[src];toggledfeed=1'>Toggle Feeding (Currently: OFF)</a>"
|
||||
switch(user.absorbable)
|
||||
if(TRUE)
|
||||
dat += "<a style='background:#173d15;' href='?src=\ref[src];toggleabsorbable=1'>Toggle Absorbtion Permission (Currently: ON)</a>"
|
||||
if(FALSE)
|
||||
dat += "<a style='background:#990000;' href='?src=\ref[src];toggleabsorbable=1'>Toggle Absorbtion Permission (Currently: OFF)</a>"
|
||||
switch(user.digest_leave_remains)
|
||||
if(TRUE)
|
||||
dat += "<a style='background:#173d15;' href='?src=\ref[src];toggledlm=1'>Toggle Leaving Remains (Currently: ON)</a>"
|
||||
@@ -961,6 +966,19 @@
|
||||
if(user.client.prefs_vr)
|
||||
user.client.prefs_vr.feeding = user.feeding
|
||||
|
||||
if(href_list["toggleabsorbable"])
|
||||
var/choice = alert(user, "This button allows preds to know whether you prefer or don't prefer to be absorbed. Currently you are [user.absorbable? "" : "not"] giving permission.", "", "Allow absorption", "Cancel", "Disallow absorption")
|
||||
switch(choice)
|
||||
if("Cancel")
|
||||
return FALSE
|
||||
if("Allow absorption")
|
||||
user.absorbable = TRUE
|
||||
if("Disallow absorption")
|
||||
user.absorbable = FALSE
|
||||
|
||||
if(user.client.prefs_vr)
|
||||
user.client.prefs_vr.absorbable = user.absorbable
|
||||
|
||||
if(href_list["toggledlm"])
|
||||
var/choice = alert(user, "This button allows preds to have your remains be left in their belly after you are digested. This will only happen if pred sets their belly to do so. Remains consist of skeletal parts. Currently you are [user.digest_leave_remains? "" : "not"] leaving remains.", "", "Allow Post-digestion Remains", "Cancel", "Disallow Post-digestion Remains")
|
||||
switch(choice)
|
||||
|
||||
Reference in New Issue
Block a user