Files
Aurora.3/code/modules/psionics/abilities/pull.dm
Matt Atlas eb3bc19014 A lot of bugfixes. (#20358)
- bugfix: "Fixed PDAs not being automatically updated by the Force
Change Name admin action."
- bugfix: "Announcements from non-Horizon ships drifting into hazards no
longer spawn observer chat. You will only get the announcements if you
are on the same z-level. The Horizon will still send its announcements
globally."
  - bugfix: "Offships no longer send newscaster announcements."
  - bugfix: "Fixed ling stings not working. Again."
- bugfix: "The robotics core console no longer reverts into a normal R&D
console when disassembled and reassembled."
- bugfix: "The robotics core console now has its own circuit that can be
made through R&D."
- bugfix: "Fixed the message that simple mobs print when they step on a
trap."
  - bugfix: "Fixed the foam sword sprite."
  - bugfix: "Fixed damaged wall overlays."
  - bugfix: "Fixed the INDRA field getting messed up by pointing at it."
  - bugfix: "Apple pies now count for the pie bounty."
- bugfix: "Changeling chameleon claws no longer spawn in the warehouse."
  - bugfix: "Admin click-drag to possess has been fixed."
- bugfix: "Added a minimum damage threshold to delimb, in order to stops
ridiculously small damage from taking off limbs. The threshold is the
organ's max damage divided by 3."
  - bugfix: "The Pull psionic ability no longer pulls anchored objects."

Fixes #17739
Fixes #17369
Fixes #19535
Fixes #19166
Fixes #20184
Fixes #20165
Fixes #20164
Fixes #20117
Fixes #19961
Fixes #20231
Fixes #20277
Fixes #20346

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2025-01-13 22:13:44 +00:00

43 lines
1.4 KiB
Plaintext

/singleton/psionic_power/pull
name = "Pull"
desc = "Pulls the target straight towards the user, smashing windows along the way. If it can be held in your hands, \
it goes straight to your hand. Note that you can catch items you pull to yourself if you toggle throw mode before pulling an item."
icon_state = "tech_passwall"
point_cost = 2
ability_flags = PSI_FLAG_ANTAG
spell_path = /obj/item/spell/pull
/obj/item/spell/pull
name = "pull"
desc = "Not as cool as the Mass Effect one."
icon_state = "control"
cast_methods = CAST_RANGED
aspect = ASPECT_PSIONIC
cooldown = 50
psi_cost = 10
/obj/item/spell/pull/on_ranged_cast(atom/hit_atom, mob/user, bypass_psi_check)
if(!ismovable(hit_atom))
return
if(!ishuman(user))
return
. = ..()
if(!.)
return
var/atom/movable/AM = hit_atom
var/mob/living/carbon/human/H = user
if(isobj(hit_atom) && w_class < WEIGHT_CLASS_GIGANTIC)
var/obj/object = hit_atom
if(object.anchored)
to_chat(user, SPAN_WARNING("That object is bolted down!"))
return
if(length(get_line(hit_atom, user)))
if(H.put_in_any_hand_if_possible(hit_atom))
return
user.visible_message(SPAN_WARNING("[user] extends [user.get_pronoun("his")] hand at [hit_atom] and pulls!"), SPAN_WARNING("You mimic pulling at [hit_atom]!"))
if(ismob(hit_atom))
to_chat(hit_atom, SPAN_WARNING("A psychic force pulls you!"))
AM.throw_at(user, 10, 7)
playsound(user, 'sound/effects/psi/power_evoke.ogg', 40)