Added bolas to map and machines

- Bolas can now be found in sec lockers and the SecVend
 - Bolas can now be printed from a hacked autolathe
 - Fixed a bug where throwing a bolas at the same tile as its source would create a stationary projectile
This commit is contained in:
ComicIronic
2014-08-06 21:30:00 +01:00
parent 5995fc6c4e
commit a2f477d389
6 changed files with 13 additions and 5 deletions

View File

@@ -210,9 +210,13 @@
T.xo = (targetloc.x - T.starting.x)
if (ishuman(usr) && T.starting == usr.loc) // determines if the bolas should spawn an item when it dies (prevents infinite spam from mechs)
T.shot_from = /obj/item/weapon/legcuffs/bolas
T.firer = usr
else
T.shot_from = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/bolas
T.firer = T.shot_from
// log_admin("Bolas fired from [T.shot_from], location [T.starting] to [T.original], with [T.xo] and [T.yo]")
if(!T.xo && !T.yo) //Required. If you take this out, you can create stationary projectiles which never disappear
T.OnDeath()
T.process()
playsound(src, throw_sound, 20, 1)
Destroy() //gets rid of the bolas item in the hand

View File

@@ -61,6 +61,7 @@ var/global/list/autolathe_recipes_hidden = list( \
new /obj/item/device/radio/electropack(), \
new /obj/item/weapon/weldingtool/largetank(), \
new /obj/item/weapon/handcuffs(), \
new /obj/item/weapon/legcuffs/bolas(), \
new /obj/item/ammo_magazine/a357(), \
new /obj/item/ammo_casing/shotgun(), \
new /obj/item/ammo_casing/shotgun/dart(), \

View File

@@ -761,7 +761,8 @@
icon_deny = "sec-deny"
req_access_txt = "1"
products = list(/obj/item/weapon/handcuffs = 8,/obj/item/weapon/grenade/flashbang = 4,/obj/item/device/flash = 5,
/obj/item/weapon/reagent_containers/food/snacks/donut/normal = 12,/obj/item/weapon/storage/box/evidence = 6)
/obj/item/weapon/reagent_containers/food/snacks/donut/normal = 12,/obj/item/weapon/storage/box/evidence = 6,
/obj/item/weapon/legcuffs/bolas = 8)
contraband = list(/obj/item/clothing/glasses/sunglasses = 2,/obj/item/weapon/storage/fancy/donut_box = 2)
/obj/machinery/vending/hydronutrients

View File

@@ -188,6 +188,7 @@
new /obj/item/taperoll/police(src)
new /obj/item/device/hailer(src) //wonder if vg would spam this
new /obj/item/clothing/gloves/black(src)
new /obj/item/weapon/legcuffs/bolas(src) //I added this - Comic
return

View File

@@ -740,7 +740,7 @@
if(!CM.legcuffed || CM.buckled)
return // time leniency for lag which also might make this whole thing pointless but the server
for(var/mob/O in viewers(CM))// lags so hard that 40s isn't lenient enough - Quarxink
O.show_message("\red <B>[CM] manages to remove the legcuffs!</B>", 1)
O.show_message("\red <B>[CM] manages to remove the [HC.name]!</B>", 1)
CM << "\blue You successfully remove \the [CM.legcuffed]."
CM.legcuffed.loc = usr.loc
CM.legcuffed = null

View File

@@ -180,7 +180,6 @@
OnDeath()
OnDeath()
log_admin(shot_from)
if(shot_from == /obj/item/weapon/legcuffs/bolas) //if it's thrown, we want it to respawn the item. Mechs don't do this to avoid spam and infinite bolas works
// log_admin("Bolas created at [get_turf(src)]")
var /obj/item/weapon/legcuffs/bolas/B = new /obj/item/weapon/legcuffs/bolas
@@ -188,8 +187,10 @@
qdel(src)
Bump(atom/A as mob|obj|turf|area)
if(A == firer)
loc = A.loc
if(A == firer) //As if this ever happens
loc = get_turf(A)
A <<"\blue You run into your own bolas!"
OnDeath()
return
if(src)
if(A)