mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
Merge pull request #13588 from dearmochi/more-fix-stuff
More fixes: Custodial Locator, e-swords, upside-down-itis and grabbing
This commit is contained in:
@@ -260,8 +260,6 @@
|
||||
add_attack_logs(user, src, "Grabbed passively", ATKLOG_ALL)
|
||||
|
||||
var/obj/item/grab/G = new /obj/item/grab(user, src)
|
||||
if(buckled)
|
||||
to_chat(user, "<span class='notice'>You cannot grab [src]; [p_they()] [p_are()] buckled in!</span>")
|
||||
if(!G) //the grab will delete itself in New if src is anchored
|
||||
return 0
|
||||
user.put_in_active_hand(G)
|
||||
|
||||
@@ -53,12 +53,11 @@
|
||||
hud.master = src
|
||||
|
||||
//check if assailant is grabbed by victim as well
|
||||
if(assailant.grabbed_by)
|
||||
for(var/obj/item/grab/G in assailant.grabbed_by)
|
||||
if(G.assailant == affecting && G.affecting == assailant)
|
||||
G.dancing = 1
|
||||
G.adjust_position()
|
||||
dancing = 1
|
||||
for(var/obj/item/grab/G in assailant.grabbed_by)
|
||||
if(G.assailant == affecting && G.affecting == assailant)
|
||||
G.dancing = 1
|
||||
G.adjust_position()
|
||||
dancing = 1
|
||||
|
||||
clean_grabbed_by(assailant, affecting)
|
||||
adjust_position()
|
||||
@@ -276,7 +275,7 @@
|
||||
assailant.visible_message("<span class='warning'>[assailant] has reinforced [assailant.p_their()] grip on [affecting] (now neck)!</span>")
|
||||
state = GRAB_NECK
|
||||
icon_state = "grabbed+1"
|
||||
assailant.setDir(get_dir(assailant, affecting))
|
||||
|
||||
add_attack_logs(assailant, affecting, "Neck grabbed", ATKLOG_ALL)
|
||||
if(!iscarbon(assailant))
|
||||
affecting.LAssailant = null
|
||||
@@ -296,7 +295,7 @@
|
||||
assailant.next_move = world.time + 10
|
||||
if(!affecting.get_organ_slot("breathing_tube"))
|
||||
affecting.AdjustLoseBreath(1)
|
||||
affecting.setDir(WEST)
|
||||
|
||||
adjust_position()
|
||||
|
||||
//This is used to make sure the victim hasn't managed to yackety sax away before using the grab.
|
||||
@@ -433,9 +432,10 @@
|
||||
|
||||
/obj/item/grab/Destroy()
|
||||
if(affecting)
|
||||
affecting.pixel_x = 0
|
||||
affecting.pixel_y = 0 //used to be an animate, not quick enough for del'ing
|
||||
affecting.layer = initial(affecting.layer)
|
||||
if(!affecting.buckled)
|
||||
affecting.pixel_x = 0
|
||||
affecting.pixel_y = 0 //used to be an animate, not quick enough for del'ing
|
||||
affecting.layer = initial(affecting.layer)
|
||||
affecting.grabbed_by -= src
|
||||
affecting = null
|
||||
if(assailant)
|
||||
|
||||
Reference in New Issue
Block a user