mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-24 17:12:00 +00:00
Fixes #6647
grabbed_by assignment is now done in the grab constructor, instead of leaking out all over the place.
This commit is contained in:
@@ -26,7 +26,6 @@
|
|||||||
G.assailant = src
|
G.assailant = src
|
||||||
G.layer = 20
|
G.layer = 20
|
||||||
G.affecting = target
|
G.affecting = target
|
||||||
target.grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
target.LAssailant = src
|
target.LAssailant = src
|
||||||
|
|
||||||
|
|||||||
@@ -95,7 +95,6 @@
|
|||||||
M.r_hand = G
|
M.r_hand = G
|
||||||
G.layer = 20
|
G.layer = 20
|
||||||
G.affecting = src
|
G.affecting = src
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
@@ -150,7 +149,6 @@
|
|||||||
M.r_hand = G
|
M.r_hand = G
|
||||||
G.layer = 20
|
G.layer = 20
|
||||||
G.affecting = src
|
G.affecting = src
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|||||||
@@ -293,7 +293,6 @@
|
|||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|||||||
@@ -265,11 +265,10 @@
|
|||||||
if ("grab")
|
if ("grab")
|
||||||
if (M == src)
|
if (M == src)
|
||||||
return
|
return
|
||||||
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, M, src )
|
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, src )
|
||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|
||||||
|
|||||||
@@ -102,7 +102,6 @@
|
|||||||
if(!G) //the grab will delete itself in New if affecting is anchored
|
if(!G) //the grab will delete itself in New if affecting is anchored
|
||||||
return
|
return
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|
||||||
|
|||||||
@@ -681,6 +681,7 @@ It can still be worn/put on as normal.
|
|||||||
for (var/obj/item/weapon/grab/G in target.grabbed_by)
|
for (var/obj/item/weapon/grab/G in target.grabbed_by)
|
||||||
if (G.loc == source && G.state >= GRAB_AGGRESSIVE)
|
if (G.loc == source && G.state >= GRAB_AGGRESSIVE)
|
||||||
grabbing = 1
|
grabbing = 1
|
||||||
|
break
|
||||||
if (!grabbing)
|
if (!grabbing)
|
||||||
slot_to_process = null
|
slot_to_process = null
|
||||||
source << "\red Your grasp was broken before you could restrain [target]!"
|
source << "\red Your grasp was broken before you could restrain [target]!"
|
||||||
|
|||||||
@@ -277,7 +277,6 @@
|
|||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
@@ -342,11 +341,10 @@
|
|||||||
if ("grab")
|
if ("grab")
|
||||||
if (M == src)
|
if (M == src)
|
||||||
return
|
return
|
||||||
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, M, src )
|
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, src )
|
||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|||||||
@@ -839,11 +839,10 @@
|
|||||||
if ("grab")
|
if ("grab")
|
||||||
if (M == src)
|
if (M == src)
|
||||||
return
|
return
|
||||||
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, M, src )
|
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, src )
|
||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
playsound(loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||||
for(var/mob/O in viewers(src, null))
|
for(var/mob/O in viewers(src, null))
|
||||||
|
|||||||
@@ -253,7 +253,6 @@
|
|||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
G.affecting = src
|
G.affecting = src
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
@@ -285,11 +284,10 @@
|
|||||||
if(!(status_flags & CANPUSH))
|
if(!(status_flags & CANPUSH))
|
||||||
return
|
return
|
||||||
|
|
||||||
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, M, src )
|
var/obj/item/weapon/grab/G = new /obj/item/weapon/grab( M, src )
|
||||||
|
|
||||||
M.put_in_active_hand(G)
|
M.put_in_active_hand(G)
|
||||||
|
|
||||||
grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
G.affecting = src
|
G.affecting = src
|
||||||
LAssailant = M
|
LAssailant = M
|
||||||
|
|||||||
@@ -28,6 +28,8 @@
|
|||||||
del(src)
|
del(src)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
affecting.grabbed_by += src
|
||||||
|
|
||||||
hud = new /obj/screen/grab(src)
|
hud = new /obj/screen/grab(src)
|
||||||
hud.icon_state = "reinforce"
|
hud.icon_state = "reinforce"
|
||||||
hud.name = "reinforce grab"
|
hud.name = "reinforce grab"
|
||||||
|
|||||||
@@ -207,7 +207,6 @@
|
|||||||
M.r_hand = G
|
M.r_hand = G
|
||||||
G.layer = 20
|
G.layer = 20
|
||||||
G.affecting = src
|
G.affecting = src
|
||||||
src.grabbed_by += G
|
|
||||||
G.synch()
|
G.synch()
|
||||||
playsound(src.loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
playsound(src.loc, 'sound/weapons/thudswoosh.ogg', 50, 1, -1)
|
||||||
for(var/mob/O in viewers(src, null))
|
for(var/mob/O in viewers(src, null))
|
||||||
|
|||||||
Reference in New Issue
Block a user