mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-26 05:27:39 +01:00
optimizes transfer (#18943)
* limits belly contetns to 200 items * there too * this too * don't strip blacklisted things * . * sometime later * no remains if belly is full * this * just warn for now * . * . * . * . * . * - * . * . * linter * faster * . * . * optimize * fix that * 20 should be ok * nom atom * . --------- Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
co-authored by
Cameron Lennox
parent
732a9f218d
commit
fb068c5c62
@@ -360,10 +360,10 @@ emp_act
|
||||
// PERSON BEING HIT: CAN BE DROP PRED, ALLOWS THROW VORE.
|
||||
// PERSON BEING THROWN: DEVOURABLE, ALLOWS THROW VORE, CAN BE DROP PREY.
|
||||
if(can_throw_vore(src, thrown_mob))
|
||||
vore_selected.nom_mob(thrown_mob) //Eat them!!!
|
||||
vore_selected.nom_atom(thrown_mob) //Eat them!!!
|
||||
visible_message(span_vwarning("[thrown_mob] is thrown right into [src]'s [lowertext(vore_selected.name)]!"))
|
||||
if(thrown_mob.loc != vore_selected)
|
||||
thrown_mob.forceMove(vore_selected) //Double check. Should never happen but...Weirder things have happened!
|
||||
vore_selected.nom_atom(thrown_mob) //Double check. Should never happen but...Weirder things have happened!
|
||||
add_attack_logs(thrown_mob.thrower,src,"Devoured [thrown_mob.name] via throw vore.")
|
||||
return //We can stop here. We don't need to calculate damage or anything else. They're eaten.
|
||||
|
||||
@@ -371,9 +371,9 @@ emp_act
|
||||
// PERSON BEING THROWN: CAN BE DROP PRED, ALLOWS THROW VORE.
|
||||
else if(can_throw_vore(thrown_mob, src)) //Pred thrown into prey.
|
||||
visible_message(span_vwarning("[src] suddenly slips inside of [thrown_mob]'s [lowertext(thrown_mob.vore_selected.name)] as [thrown_mob] flies into them!"))
|
||||
thrown_mob.vore_selected.nom_mob(src) //Eat them!!!
|
||||
thrown_mob.vore_selected.nom_atom(src) //Eat them!!!
|
||||
if(src.loc != thrown_mob.vore_selected)
|
||||
src.forceMove(thrown_mob.vore_selected) //Double check. Should never happen but...Weirder things have happened!
|
||||
thrown_mob.vore_selected.nom_atom(src) //Double check. Should never happen but...Weirder things have happened!
|
||||
add_attack_logs(thrown_mob.LAssailant,src,"Was Devoured by [thrown_mob.name] via throw vore.")
|
||||
return
|
||||
//VORESTATION EDIT END - Allows for thrown vore!
|
||||
@@ -384,7 +384,7 @@ emp_act
|
||||
if(adminbus_trash || is_type_in_list(O, GLOB.edible_trash) && O.trash_eatable && !is_type_in_list(O, GLOB.item_vore_blacklist))
|
||||
visible_message(span_vwarning("[O] is thrown directly into [src]'s [lowertext(vore_selected.name)]!"))
|
||||
O.throwing = 0
|
||||
O.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(O)
|
||||
return
|
||||
if(in_throw_mode && speed <= THROWFORCE_SPEED_DIVISOR) //empty active hand and we're in throw mode
|
||||
if(canmove && !restrained() && !src.is_incorporeal())
|
||||
|
||||
@@ -233,7 +233,7 @@
|
||||
if(target_list.len)
|
||||
for(var/mob/living/M in target_list)
|
||||
if(M.devourable && M.can_be_drop_prey)
|
||||
M.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(M)
|
||||
to_chat(M,span_vwarning("In a bright flash of white light, you suddenly find yourself trapped in \the [src]'s [vore_selected.get_belly_name()]!"))
|
||||
species.update_lleill_hud(src)
|
||||
|
||||
|
||||
@@ -386,7 +386,7 @@
|
||||
if(can_spontaneous_vore(src, target))
|
||||
if(target.buckled)
|
||||
target.buckled.unbuckle_mob(target, force = TRUE)
|
||||
target.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(target)
|
||||
to_chat(target,span_warning("\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.get_belly_name()]!"))
|
||||
update_canmove()
|
||||
|
||||
|
||||
@@ -736,7 +736,7 @@
|
||||
target.visible_message(span_vwarning("\The [target] suddenly disappears, being dragged into the water!"),\
|
||||
span_vdanger("You are dragged below the water and feel yourself slipping directly into \the [src]'s [vore_selected.get_belly_name()]!"))
|
||||
to_chat(src, span_vnotice("You successfully drag \the [target] into the water, slipping them into your [vore_selected.get_belly_name()]."))
|
||||
target.forceMove(src.vore_selected)
|
||||
vore_selected.nom_atom(target)
|
||||
|
||||
/mob/living/carbon/human/proc/toggle_pain_module()
|
||||
set name = "Toggle pain simulation."
|
||||
|
||||
@@ -185,7 +185,7 @@
|
||||
|
||||
/obj/item/dogborg/sleeper/proc/ingest_living(var/mob/living/victim, var/obj/belly/belly)
|
||||
if (victim.devourable && is_vore_predator(hound))
|
||||
belly.nom_mob(victim, hound)
|
||||
belly.nom_atom(victim, hound)
|
||||
add_attack_logs(hound, victim, "Eaten via [belly.name]")
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
B.owner.visible_message(span_boldwarning("Something grows inside [B.owner]'s [lowertext(B.name)]!"))
|
||||
to_chat(B.owner, span_warning("\The [src] suddenly evolves inside your [lowertext(B.name)]!"))
|
||||
B.release_specific_contents(src, TRUE)
|
||||
B.nom_mob(bigger, null)
|
||||
B.nom_atom(bigger, null)
|
||||
qdel(src)
|
||||
else
|
||||
visible_message(span_warning("\The [src] suddenly evolves!"))
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
B.owner.visible_message(span_boldwarning("Something grows inside [B.owner]'s [lowertext(B.name)]!"))
|
||||
to_chat(B.owner, span_warning("\The [src] suddenly evolves inside your [lowertext(B.name)]!"))
|
||||
B.release_specific_contents(src, TRUE)
|
||||
B.nom_mob(bigger, null)
|
||||
B.nom_atom(bigger, null)
|
||||
qdel(src)
|
||||
else
|
||||
visible_message(span_warning("\The [src] suddenly evolves!"))
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
if(potentials.len)
|
||||
var/mob/living/target = pick(potentials)
|
||||
if(can_phase_vore(src, target))
|
||||
target.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(target)
|
||||
to_chat(target,span_vwarning("\The [src] phases in around you, [vore_selected.vore_verb]ing you into their [vore_selected.get_belly_name()]!"))
|
||||
|
||||
// Do this after the potential vore, so we get the belly
|
||||
@@ -204,7 +204,7 @@
|
||||
if(potentials.len)
|
||||
var/mob/living/target = pick(potentials)
|
||||
if(can_phase_vore(src, target))
|
||||
target.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(target)
|
||||
to_chat(target,span_vwarning("\The [src] phases in around you, [vore_selected.vore_verb]ing you into their [vore_selected.get_belly_name()]!"))
|
||||
|
||||
// Do this after the potential vore, so we get the belly
|
||||
|
||||
@@ -169,7 +169,7 @@
|
||||
if(will_eat(L))
|
||||
var/obj/belly/B = vore_organs[1]
|
||||
automatic_custom_emote(message = "snatches and devours [L]!")
|
||||
B.nom_mob(L)
|
||||
B.nom_atom(L)
|
||||
ai_holder.find_target()
|
||||
return
|
||||
else if(L.size_multiplier <= 0.5 && L.step_mechanics_pref)
|
||||
|
||||
@@ -220,7 +220,7 @@
|
||||
if(can_spontaneous_vore(src, target))
|
||||
if(target.buckled)
|
||||
target.buckled.unbuckle_mob(target, force = TRUE)
|
||||
target.forceMove(vore_selected)
|
||||
vore_selected.nom_atom(target)
|
||||
to_chat(target,span_vwarning("\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.get_belly_name()]!"))
|
||||
else
|
||||
..()
|
||||
@@ -367,7 +367,7 @@
|
||||
parent_morph.forceMove(get_turf(prey_body))
|
||||
parent_morph.ckey = parent_morph.original_ckey
|
||||
prey_body.ckey = prey_ckey
|
||||
prey_body.forceMove(parent_morph.vore_selected)
|
||||
parent_morph.vore_selected.nom_atom(prey_body)
|
||||
log_and_message_admins("and [key_name_admin(parent_morph)] have been returned to their original bodies. [get_area(src)] - [COORD(src)].", prey_body)
|
||||
qdel(src)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user