Merge pull request #4947 from CHOMPStation2/upstream-merge-13731

[MIRROR] Allows Long Predatorial Reach to toggle modes.
This commit is contained in:
Nadyr
2022-09-23 21:07:19 -04:00
committed by GitHub
6 changed files with 27 additions and 2 deletions
@@ -1185,12 +1185,19 @@
to_chat(src, "<span class='warning'>It doesn't work that way.</span>")
return
var/choice = tgui_alert(src, "Do you wish to change the color of your appendage or use it?", "Selection List", list("Use it", "Color"))
var/choice = tgui_alert(src, "Do you wish to change the color of your appendage, use it, or change its functionality?", "Selection List", list("Use it", "Color", "Functionality"))
if(choice == "Color") //Easy way to set color so we don't bloat up the menu with even more buttons.
var/new_color = input(usr, "Choose a color to set your appendage to!", "", appendage_color) as color|null
if(new_color)
appendage_color = new_color
if(choice == "Functionality") //Easy way to set color so we don't bloat up the menu with even more buttons.
var/choice2 = tgui_alert(usr, "Choose if you want to be pulled to the target or pull them to you!", "Functionality Setting", list("Pull target to self", "Pull self to target"))
if(choice2 == "Pull target to self")
appendage_alt_setting = 0
else
appendage_alt_setting = 1
else
var/list/targets = list() //IF IT IS NOT BROKEN. DO NOT FIX IT.
@@ -1271,9 +1278,16 @@
if(istype(target, /mob/living))
var/mob/living/M = target
var/throw_range = get_dist(firer,M)
if(istype(firer, /mob/living)) //Let's check for any alt settings. Such as: User selected to be thrown at target.
var/mob/living/F = firer
if(F.appendage_alt_setting == 1)
F.throw_at(M, throw_range, firer.throw_speed, F) //Firer thrown at target.
F.updateicon()
return
if(istype(M))
M.throw_at(firer, throw_range, M.throw_speed, firer) //Fun fact: living things have a throw_speed of 2.
M.updateicon()
return
else //Anything that isn't a /living
return
if(istype(target, /obj/item/)) //We hit an object? Pull it. This can only happen via admin shenanigans such as a gun being VV'd with this projectile.
@@ -1362,4 +1376,4 @@
name = "tongue ball"
hitsound = 'sound/vore/sunesound/pred/schlorp.ogg'
hitsound_wall = 'sound/vore/sunesound/pred/schlorp.ogg'
zaptype = /obj/item/projectile/beam/appendage
zaptype = /obj/item/projectile/beam/appendage
@@ -28,6 +28,7 @@
noisy = client.prefs_vr.noisy
selective_preference = client.prefs_vr.selective_preference
appendage_color = client.prefs_vr.appendage_color
appendage_alt_setting = client.prefs_vr.appendage_alt_setting
drop_vore = client.prefs_vr.drop_vore
stumble_vore = client.prefs_vr.stumble_vore
+3
View File
@@ -50,6 +50,7 @@
var/noisy_full = FALSE //CHOMPedit: Enables belching when a mob has overeaten
var/selective_preference = DM_DEFAULT // Preference for selective bellymode
var/appendage_color = "#e03997" //Default pink. Used for the 'long_vore' trait.
var/appendage_alt_setting = FALSE // Dictates if 'long_vore' user pulls prey to them or not. 1 = user thrown towards target.
var/regen_sounds = list(
'sound/effects/mob_effects/xenochimera/regen_1.ogg',
'sound/effects/mob_effects/xenochimera/regen_2.ogg',
@@ -279,6 +280,7 @@
P.can_be_drop_pred = src.can_be_drop_pred
P.allow_spontaneous_tf = src.allow_spontaneous_tf
P.appendage_color = src.appendage_color
P.appendage_alt_setting = src.appendage_alt_setting
P.step_mechanics_pref = src.step_mechanics_pref
P.pickup_pref = src.pickup_pref
P.drop_vore = src.drop_vore
@@ -334,6 +336,7 @@
// allow_inbelly_spawning = P.allow_inbelly_spawning //CHOMP Removal: we have vore spawning at home. Actually if this were to be enabled, it would break anyway. Just leaving this here as a reference to it.
allow_spontaneous_tf = P.allow_spontaneous_tf
appendage_color = P.appendage_color
appendage_alt_setting = P.appendage_alt_setting
step_mechanics_pref = P.step_mechanics_pref
pickup_pref = P.pickup_pref
drop_vore = P.drop_vore
+5
View File
@@ -78,6 +78,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
var/vore_taste = "nothing in particular"
var/vore_smell = "nothing in particular"
var/appendage_color = "#e03997" //Default pink. Used for the 'long_vore' trait.
var/appendage_alt_setting = 0 //Decides if appendage user is thrown at target or not.
var/selective_preference = DM_DEFAULT
@@ -185,6 +186,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
permit_healbelly = json_from_file["permit_healbelly"]
noisy = json_from_file["noisy"]
appendage_color = json_from_file["appendage_color"]
appendage_alt_setting = json_from_file["appendage_alt_setting"]
selective_preference = json_from_file["selective_preference"]
show_vore_fx = json_from_file["show_vore_fx"]
can_be_drop_prey = json_from_file["can_be_drop_prey"]
@@ -234,6 +236,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
noisy = FALSE
if (isnull(appendage_color))
appendage_color = "#e03997"
if (isnull(appendage_alt_setting))
appendage_alt_setting = 0
if(isnull(show_vore_fx))
show_vore_fx = TRUE
if(isnull(can_be_drop_prey))
@@ -324,6 +328,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE
"permit_healbelly" = permit_healbelly,
"noisy" = noisy,
"appendage_color" = appendage_color,
"appendage_alt_setting" = appendage_alt_setting,
"selective_preference" = selective_preference,
"show_vore_fx" = show_vore_fx,
"can_be_drop_prey" = can_be_drop_prey,
+1
View File
@@ -349,6 +349,7 @@
"latejoin_prey" = host.latejoin_prey, //CHOMPedit
"allow_spontaneous_tf" = host.allow_spontaneous_tf,
"appendage_color" = host.appendage_color,
"appendage_alt_setting" = host.appendage_alt_setting,
"step_mechanics_active" = host.step_mechanics_pref,
"pickup_mechanics_active" = host.pickup_pref,
"noisy" = host.noisy,
+1
View File
@@ -231,6 +231,7 @@
new_mob.noisy = noisy
new_mob.selective_preference = selective_preference
new_mob.appendage_color = appendage_color
new_mob.appendage_alt_setting = appendage_alt_setting
new_mob.drop_vore = drop_vore
new_mob.stumble_vore = stumble_vore
new_mob.slip_vore = slip_vore