Committing BubbleWrap's cuff buff! r3000, wooooooo~

See the changelog for details.
Also adding in some floors to make working on planet station easier.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3000 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
petethegoat@gmail.com
2012-01-28 18:35:27 +00:00
parent 08e9d22bf9
commit 6df79a4e62
4 changed files with 62 additions and 8 deletions

View File

@@ -115,7 +115,25 @@
now_pushing = 1
if (ismob(AM))
var/mob/tmob = AM
if(tmob.a_intent == "help" && a_intent == "help" && tmob.canmove && canmove) // mutual brohugs all around!
//BubbleWrap - Should stop you pushing a restrained person out of the way
if(istype(tmob, /mob/living/carbon/human))
for(var/mob/M in range(tmob, 1))
if( ((M.pulling == tmob && ( tmob.restrained() && !( M.restrained() ) && M.stat == 0)) || locate(/obj/item/weapon/grab, tmob.grabbed_by.len)) )
if ( !(world.time % 5) )
src << "\red [tmob] is restrained, you cannot push past"
now_pushing = 0
return
if( tmob.pulling == M && ( M.restrained() && !( tmob.restrained() ) && tmob.stat == 0) )
if ( !(world.time % 5) )
src << "\red [tmob] is restraining [M], you cannot push past"
now_pushing = 0
return
//BubbleWrap: people in handcuffs are always switched around as if they were on 'help' intent to prevent a person being pulled from being seperated from their puller
if((tmob.a_intent == "help" || tmob.restrained()) && (a_intent == "help" || src.restrained()) && tmob.canmove && canmove) // mutual brohugs all around!
var/turf/oldloc = loc
loc = tmob.loc
tmob.loc = oldloc

View File

@@ -119,14 +119,39 @@
visible_message("\red <B>[M] has pushed [src]!</B>")
return
var/talked = 0 // BubbleWrap
if(randn <= 60)
drop_item()
//BubbleWrap: Disarming breaks a pull
if ( pulling )
visible_message("\red <b>[M] has broken [src]'s grip on [pulling]!</B>")
talked = 1
pulling = null
//BubbleWrap: Disarming also breaks a grab - this will also stop someone being choked, won't it?
var/obj/item/weapon/grab/lgrab = l_hand
var/obj/item/weapon/grab/rgrab = r_hand
if ( lgrab )
if ( lgrab.affecting )
visible_message("\red <b>[M] has broken [src]'s grip on [lgrab.affecting]!</B>")
talked = 1
spawn(1)
del(lgrab)
if ( rgrab )
if ( rgrab.affecting )
visible_message("\red <b>[M] has broken [src]'s grip on [rgrab.affecting]!</B>")
talked = 1
spawn(1)
del(rgrab)
//End BubbleWrap
if( !talked ) //BubbleWrap
drop_item()
visible_message("\red <B>[M] has disarmed [src]!</B>")
playsound(loc, 'thudswoosh.ogg', 50, 1, -1)
visible_message("\red <B>[M] has disarmed [src]!</B>")
return
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
visible_message("\red <B>[M] attempted to disarm [src]!</B>")
return
return