mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-23 03:57:48 +01:00
Merge pull request #13546 from Cameron653/six_six_twelves_you
Adds Toxins & Cloneloss digestion damage.
This commit is contained in:
@@ -1528,7 +1528,7 @@
|
||||
return
|
||||
|
||||
// Puke if toxloss is too high
|
||||
if(!stat)
|
||||
if(!stat && !isbelly(loc))
|
||||
if (getToxLoss() >= 30 && isSynthetic())
|
||||
if(!confused)
|
||||
if(prob(5))
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
var/digest_brute = 0.5 // Brute damage per tick in digestion mode
|
||||
var/digest_burn = 0.5 // Burn damage per tick in digestion mode
|
||||
var/digest_oxy = 0 // Oxy damage per tick in digestion mode
|
||||
var/digest_tox = 0 // Toxins damage per tick in digestion mode
|
||||
var/digest_clone = 0 // Clone damage per tick in digestion mode
|
||||
var/immutable = FALSE // Prevents this belly from being deleted
|
||||
var/escapable = FALSE // Belly can be resisted out of at any time
|
||||
var/escapetime = 20 SECONDS // Deciseconds, how long to escape this belly
|
||||
@@ -174,6 +176,8 @@
|
||||
"digest_brute",
|
||||
"digest_burn",
|
||||
"digest_oxy",
|
||||
"digest_tox",
|
||||
"digest_clone",
|
||||
"immutable",
|
||||
"can_taste",
|
||||
"escapable",
|
||||
@@ -1106,6 +1110,8 @@
|
||||
dupe.digest_brute = digest_brute
|
||||
dupe.digest_burn = digest_burn
|
||||
dupe.digest_oxy = digest_oxy
|
||||
dupe.digest_tox = digest_tox
|
||||
dupe.digest_clone = digest_clone
|
||||
dupe.immutable = immutable
|
||||
dupe.can_taste = can_taste
|
||||
dupe.escapable = escapable
|
||||
|
||||
@@ -43,13 +43,19 @@ GLOBAL_LIST_INIT(digest_modes, list())
|
||||
var/old_brute = L.getBruteLoss()
|
||||
var/old_burn = L.getFireLoss()
|
||||
var/old_oxy = L.getOxyLoss()
|
||||
var/old_tox = L.getToxLoss()
|
||||
var/old_clone = L.getCloneLoss()
|
||||
L.adjustBruteLoss(B.digest_brute)
|
||||
L.adjustFireLoss(B.digest_burn)
|
||||
L.adjustOxyLoss(B.digest_oxy)
|
||||
L.adjustToxLoss(B.digest_tox)
|
||||
L.adjustCloneLoss(B.digest_clone)
|
||||
var/actual_brute = L.getBruteLoss() - old_brute
|
||||
var/actual_burn = L.getFireLoss() - old_burn
|
||||
var/actual_oxy = L.getOxyLoss() - old_oxy
|
||||
var/damage_gain = (actual_brute + actual_burn + actual_oxy/2)*(B.nutrition_percent / 100)
|
||||
var/actual_tox = L.getToxLoss() - old_tox
|
||||
var/actual_clone = L.getCloneLoss() - old_clone
|
||||
var/damage_gain = (actual_brute + actual_burn + actual_oxy/2 + actual_tox + actual_clone*2)*(B.nutrition_percent / 100)
|
||||
|
||||
var/offset = (1 + ((L.weight - 137) / 137)) // 130 pounds = .95 140 pounds = 1.02
|
||||
var/difference = B.owner.size_multiplier / L.size_multiplier
|
||||
|
||||
@@ -176,6 +176,8 @@
|
||||
"digest_brute" = selected.digest_brute,
|
||||
"digest_burn" = selected.digest_burn,
|
||||
"digest_oxy" = selected.digest_oxy,
|
||||
"digest_tox" = selected.digest_tox,
|
||||
"digest_clone" = selected.digest_clone,
|
||||
"bulge_size" = selected.bulge_size,
|
||||
"save_digest_mode" = selected.save_digest_mode,
|
||||
"display_absorbed_examine" = selected.display_absorbed_examine,
|
||||
@@ -1095,6 +1097,20 @@
|
||||
var/new_new_damage = CLAMP(new_damage, 0, 12)
|
||||
host.vore_selected.digest_oxy = new_new_damage
|
||||
. = TRUE
|
||||
if("b_tox_dmg")
|
||||
var/new_damage = tgui_input_number(user, "Choose the amount of toxins damage prey will take per tick. Ranges from 0 to 6", "Set Belly Toxins Damage.", host.vore_selected.digest_tox, 6, 0)
|
||||
if(new_damage == null)
|
||||
return FALSE
|
||||
var/new_new_damage = CLAMP(new_damage, 0, 6)
|
||||
host.vore_selected.digest_tox = new_new_damage
|
||||
. = TRUE
|
||||
if("b_clone_dmg")
|
||||
var/new_damage = tgui_input_number(user, "Choose the amount of brute DNA damage (clone) prey will take per tick. Ranges from 0 to 6", "Set Belly Clone Damage.", host.vore_selected.digest_clone, 6, 0)
|
||||
if(new_damage == null)
|
||||
return FALSE
|
||||
var/new_new_damage = CLAMP(new_damage, 0, 6)
|
||||
host.vore_selected.digest_clone = new_new_damage
|
||||
. = TRUE
|
||||
if("b_emoteactive")
|
||||
host.vore_selected.emote_active = !host.vore_selected.emote_active
|
||||
. = TRUE
|
||||
|
||||
@@ -495,6 +495,8 @@ const VoreSelectedBellyOptions = (props, context) => {
|
||||
digest_brute,
|
||||
digest_burn,
|
||||
digest_oxy,
|
||||
digest_tox,
|
||||
digest_clone,
|
||||
bulge_size,
|
||||
display_absorbed_examine,
|
||||
shrink_grow_size,
|
||||
@@ -603,6 +605,12 @@ const VoreSelectedBellyOptions = (props, context) => {
|
||||
<LabeledList.Item label="Digest Suffocation Damage">
|
||||
<Button onClick={() => act('set_attribute', { attribute: 'b_oxy_dmg' })} content={digest_oxy} />
|
||||
</LabeledList.Item>
|
||||
<LabeledList.Item label="Digest Toxins Damage">
|
||||
<Button onClick={() => act('set_attribute', { attribute: 'b_tox_dmg' })} content={digest_tox} />
|
||||
</LabeledList.Item>
|
||||
<LabeledList.Item label="Digest Clone Damage">
|
||||
<Button onClick={() => act('set_attribute', { attribute: 'b_clone_dmg' })} content={digest_clone} />
|
||||
</LabeledList.Item>
|
||||
<LabeledList.Item label="Shrink/Grow Size">
|
||||
<Button
|
||||
onClick={() => act('set_attribute', { attribute: 'b_grow_shrink' })}
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user