Merge pull request #7801 from Mloc/bs12-glowypipes

refactor buckling + glowy HE pipes
This commit is contained in:
Chinsky
2015-02-03 18:12:09 +03:00
29 changed files with 250 additions and 145 deletions

View File

@@ -354,6 +354,8 @@
else if (W == handcuffed)
handcuffed = null
update_inv_handcuffed()
if(buckled && buckled.buckle_require_restraints)
buckled.unbuckle_mob()
else if (W == legcuffed)
legcuffed = null

View File

@@ -131,6 +131,10 @@
else
msg += "<span class='warning'>[t_He] [t_is] \icon[handcuffed] handcuffed!</span>\n"
//buckled
if(buckled)
msg += "<span class='warning'>[t_He] [t_is] \icon[buckled] buckled to [buckled]!</span>\n"
//belt
if(belt)
if(belt.blood_DNA)

View File

@@ -167,6 +167,8 @@
update_inv_back()
else if (W == handcuffed)
handcuffed = null
if(buckled && buckled.buckle_require_restraints)
buckled.unbuckle_mob()
success = 1
update_inv_handcuffed()
else if (W == legcuffed)

View File

@@ -56,7 +56,7 @@
var/cold_level_3 = 120 // Cold damage level 3 below this point.
var/heat_level_1 = 360 // Heat damage level 1 above this point.
var/heat_level_2 = 400 // Heat damage level 2 above this point.
var/heat_level_3 = 1000 // Heat damage level 2 above this point.
var/heat_level_3 = 1000 // Heat damage level 3 above this point.
var/synth_temp_gain = 0 // IS_SYNTHETIC species will gain this much temperature every second
var/hazard_high_pressure = HAZARD_HIGH_PRESSURE // Dangerously high pressure.
var/warning_high_pressure = WARNING_HIGH_PRESSURE // High pressure warning.

View File

@@ -555,9 +555,9 @@
for(var/mob/O in viewers(C))
O.show_message("\red <B>[usr] manages to unbuckle themself!</B>", 1)
C << "\blue You successfully unbuckle yourself."
C.buckled.manual_unbuckle(C)
C.buckled.user_unbuckle_mob(C)
else
L.buckled.manual_unbuckle(L)
L.buckled.user_unbuckle_mob(L)
//Breaking out of a locker?
else if( src.loc && (istype(src.loc, /obj/structure/closet)) )
@@ -657,6 +657,8 @@
CM.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
del(CM.handcuffed)
CM.handcuffed = null
if(buckled && buckled.buckle_require_restraints)
buckled.unbuckle_mob()
CM.update_inv_handcuffed()
else
var/obj/item/weapon/handcuffs/HC = CM.handcuffed

View File

@@ -853,21 +853,17 @@ note dizziness decrements automatically in the mob's Life() proc.
canmove = 0
pixel_y = V.mob_offset_y - 5
else
lying = 0
if(buckled.buckle_lying != -1) lying = buckled.buckle_lying
canmove = 1
pixel_y = V.mob_offset_y
else if(buckled)
if (!buckled.movable)
if(buckled.buckle_lying != -1) lying = buckled.buckle_lying
if (!buckled.buckle_movable)
anchored = 1
canmove = 0
if(istype(buckled,/obj/structure/stool/bed/chair) )
lying = 0
else
lying = 1
else
anchored = 0
canmove = 1
lying = 0
else if( stat || weakened || paralysis || resting || sleeping || (status_flags & FAKEDEATH))
lying = 1
canmove = 0
@@ -904,7 +900,7 @@ note dizziness decrements automatically in the mob's Life() proc.
if(!canface() || client.moving || world.time < client.move_delay)
return 0
set_dir(ndir)
if(buckled && buckled.movable)
if(buckled && buckled.buckle_movable)
buckled.set_dir(ndir)
client.move_delay += movement_delay()
return 1