Adds in Throw Vore

This commit is contained in:
Casey
2022-09-22 21:42:03 -04:00
committed by Darlantan
parent 8f20bc823e
commit a5ec201436
8 changed files with 78 additions and 4 deletions
@@ -381,9 +381,28 @@ emp_act
// if(buckled && buckled == AM)
// return // Don't get hit by the thing we're buckled to.
//VORESTATION EDIT START - Allows for thrown vore!
//Throwing a prey into a pred takes priority. After that it checks to see if the person being thrown is a pred.
if(istype(AM, /mob/living))
var/mob/living/thrown_mob = AM
if((can_be_drop_pred && throw_vore) && (thrown_mob.devourable && thrown_mob.throw_vore && thrown_mob.can_be_drop_prey)) //Prey thrown into pred.
vore_selected.nom_mob(thrown_mob) //Eat them!!!
visible_message("<span class='warning'>[thrown_mob] is thrown right into [src]'s [lowertext(vore_selected.name)]!</span>")
if(thrown_mob.loc != vore_selected)
thrown_mob.forceMove(vore_selected) //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.
else if((can_be_drop_prey && throw_vore && devourable) && (thrown_mob.can_be_drop_pred && thrown_mob.throw_vore)) //Pred thrown into prey.
visible_message("<span class='warning'>[src] suddenly slips inside of [thrown_mob]'s [lowertext(thrown_mob.vore_selected.name)] as [thrown_mob] flies into them!</span>")
thrown_mob.vore_selected.nom_mob(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!
add_attack_logs(thrown_mob.LAssailant,src,"Was Devoured by [thrown_mob.name] via throw vore.")
return
//VORESTATION EDIT END - Allows for thrown vore!
if(istype(AM,/obj/))
var/obj/O = AM
if(in_throw_mode && speed <= THROWFORCE_SPEED_DIVISOR) //empty active hand and we're in throw mode
if(canmove && !restrained())
if(isturf(O.loc))
+1
View File
@@ -1088,6 +1088,7 @@
src.inertia_dir = get_dir(target, src)
step(src, inertia_dir)
item.throw_at(target, throw_range, item.throw_speed, src)
item.throwing = 1 //Small edit so thrown interactions actually work!
return TRUE
else
return FALSE
@@ -18,7 +18,12 @@
feeding = client.prefs_vr.feeding
can_be_drop_prey = client.prefs_vr.can_be_drop_prey
can_be_drop_pred = client.prefs_vr.can_be_drop_pred
<<<<<<< HEAD
latejoin_vore = client.prefs_vr.latejoin_vore //CHOMPedit
=======
throw_vore = client.prefs_vr.throw_vore
allow_inbelly_spawning = client.prefs_vr.allow_inbelly_spawning
>>>>>>> f02c3b6163... Merge pull request #13676 from Cameron653/TONGUE_VORE
allow_spontaneous_tf = client.prefs_vr.allow_spontaneous_tf
digest_leave_remains = client.prefs_vr.digest_leave_remains
allowmobvore = client.prefs_vr.allowmobvore