mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-24 20:47:43 +01:00
Merge pull request #13028 from lm40/modes
(badly) implements saved belly modes
This commit is contained in:
@@ -30,6 +30,7 @@
|
||||
var/escapechance = 0 // % Chance of prey beginning to escape if prey struggles.
|
||||
var/transferchance = 0 // % Chance of prey being trasnsfered, goes from 0-100%
|
||||
var/transferchance_secondary = 0 // % Chance of prey being transfered to transferchance_secondary, also goes 0-100%
|
||||
var/save_digest_mode = TRUE // Whether this belly's digest mode persists across rounds
|
||||
var/can_taste = FALSE // If this belly prints the flavor of prey when it eats someone.
|
||||
var/bulge_size = 0.25 // The minimum size the prey has to be in order to show up on examine.
|
||||
var/display_absorbed_examine = FALSE // Do we display absorption examine messages for this belly at all?
|
||||
@@ -157,61 +158,67 @@
|
||||
|
||||
//For serialization, keep this updated, required for bellies to save correctly.
|
||||
/obj/belly/vars_to_save()
|
||||
return ..() + list(
|
||||
"name",
|
||||
"desc",
|
||||
"absorbed_desc",
|
||||
"vore_sound",
|
||||
"vore_verb",
|
||||
"human_prey_swallow_time",
|
||||
"nonhuman_prey_swallow_time",
|
||||
"emote_time",
|
||||
"nutrition_percent",
|
||||
"digest_brute",
|
||||
"digest_burn",
|
||||
"digest_oxy",
|
||||
"immutable",
|
||||
"can_taste",
|
||||
"escapable",
|
||||
"escapetime",
|
||||
"digestchance",
|
||||
"absorbchance",
|
||||
"escapechance",
|
||||
"transferchance",
|
||||
"transferchance_secondary",
|
||||
"transferlocation",
|
||||
"transferlocation_secondary",
|
||||
"bulge_size",
|
||||
"display_absorbed_examine",
|
||||
"shrink_grow_size",
|
||||
"struggle_messages_outside",
|
||||
"struggle_messages_inside",
|
||||
"absorbed_struggle_messages_outside",
|
||||
"absorbed_struggle_messages_inside",
|
||||
"digest_messages_owner",
|
||||
"digest_messages_prey",
|
||||
"absorb_messages_owner",
|
||||
"absorb_messages_prey",
|
||||
"unabsorb_messages_owner",
|
||||
"unabsorb_messages_prey",
|
||||
"examine_messages",
|
||||
"examine_messages_absorbed",
|
||||
"emote_lists",
|
||||
"emote_time",
|
||||
"emote_active",
|
||||
"mode_flags",
|
||||
"item_digest_mode",
|
||||
"contaminates",
|
||||
"contamination_flavor",
|
||||
"contamination_color",
|
||||
"release_sound",
|
||||
"fancy_vore",
|
||||
"is_wet",
|
||||
"wet_loop",
|
||||
"belly_fullscreen",
|
||||
"disable_hud",
|
||||
"egg_type"
|
||||
)
|
||||
var/list/saving = list(
|
||||
"name",
|
||||
"desc",
|
||||
"absorbed_desc",
|
||||
"vore_sound",
|
||||
"vore_verb",
|
||||
"human_prey_swallow_time",
|
||||
"nonhuman_prey_swallow_time",
|
||||
"emote_time",
|
||||
"nutrition_percent",
|
||||
"digest_brute",
|
||||
"digest_burn",
|
||||
"digest_oxy",
|
||||
"immutable",
|
||||
"can_taste",
|
||||
"escapable",
|
||||
"escapetime",
|
||||
"digestchance",
|
||||
"absorbchance",
|
||||
"escapechance",
|
||||
"transferchance",
|
||||
"transferchance_secondary",
|
||||
"transferlocation",
|
||||
"transferlocation_secondary",
|
||||
"bulge_size",
|
||||
"display_absorbed_examine",
|
||||
"shrink_grow_size",
|
||||
"struggle_messages_outside",
|
||||
"struggle_messages_inside",
|
||||
"absorbed_struggle_messages_outside",
|
||||
"absorbed_struggle_messages_inside",
|
||||
"digest_messages_owner",
|
||||
"digest_messages_prey",
|
||||
"absorb_messages_owner",
|
||||
"absorb_messages_prey",
|
||||
"unabsorb_messages_owner",
|
||||
"unabsorb_messages_prey",
|
||||
"examine_messages",
|
||||
"examine_messages_absorbed",
|
||||
"emote_lists",
|
||||
"emote_time",
|
||||
"emote_active",
|
||||
"mode_flags",
|
||||
"item_digest_mode",
|
||||
"contaminates",
|
||||
"contamination_flavor",
|
||||
"contamination_color",
|
||||
"release_sound",
|
||||
"fancy_vore",
|
||||
"is_wet",
|
||||
"wet_loop",
|
||||
"belly_fullscreen",
|
||||
"disable_hud",
|
||||
"egg_type",
|
||||
"save_digest_mode"
|
||||
)
|
||||
|
||||
if (save_digest_mode == 1)
|
||||
return ..() + saving + list("digest_mode")
|
||||
|
||||
return ..() + saving
|
||||
|
||||
/obj/belly/Initialize()
|
||||
. = ..()
|
||||
@@ -1101,6 +1108,7 @@
|
||||
dupe.egg_type = egg_type
|
||||
dupe.emote_time = emote_time
|
||||
dupe.emote_active = emote_active
|
||||
dupe.save_digest_mode = save_digest_mode
|
||||
|
||||
//// Object-holding variables
|
||||
//struggle_messages_outside - strings
|
||||
|
||||
@@ -176,6 +176,7 @@
|
||||
"digest_burn" = selected.digest_burn,
|
||||
"digest_oxy" = selected.digest_oxy,
|
||||
"bulge_size" = selected.bulge_size,
|
||||
"save_digest_mode" = selected.save_digest_mode,
|
||||
"display_absorbed_examine" = selected.display_absorbed_examine,
|
||||
"shrink_grow_size" = selected.shrink_grow_size,
|
||||
"emote_time" = selected.emote_time,
|
||||
@@ -1074,6 +1075,9 @@
|
||||
if("b_disable_hud")
|
||||
host.vore_selected.disable_hud = !host.vore_selected.disable_hud
|
||||
. = TRUE
|
||||
if("b_save_digest_mode")
|
||||
host.vore_selected.save_digest_mode = !host.vore_selected.save_digest_mode
|
||||
. = TRUE
|
||||
if("b_del")
|
||||
var/alert = tgui_alert(usr, "Are you sure you want to delete your [lowertext(host.vore_selected.name)]?","Confirmation",list("Cancel","Delete"))
|
||||
if(!(alert == "Delete"))
|
||||
|
||||
@@ -414,6 +414,7 @@ const VoreSelectedBellyOptions = (props, context) => {
|
||||
contaminate_flavor,
|
||||
contaminate_color,
|
||||
egg_type,
|
||||
save_digest_mode,
|
||||
} = belly;
|
||||
|
||||
return (
|
||||
@@ -467,6 +468,14 @@ const VoreSelectedBellyOptions = (props, context) => {
|
||||
selected={display_absorbed_examine}
|
||||
content={display_absorbed_examine ? "True" : "False"} />
|
||||
</LabeledList.Item>
|
||||
|
||||
<LabeledList.Item label="Save Digest Mode">
|
||||
<Button
|
||||
onClick={() => act("set_attribute", { attribute: "b_save_digest_mode" })}
|
||||
icon={save_digest_mode ? "toggle-on" : "toggle-off"}
|
||||
selected={save_digest_mode}
|
||||
content={save_digest_mode ? "True" : "False"} />
|
||||
</LabeledList.Item>
|
||||
</LabeledList>
|
||||
</Flex.Item>
|
||||
<Flex.Item basis="49%" grow={1}>
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user