mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-18 19:44:58 +01:00
@@ -1,5 +1,6 @@
|
||||
var/global/list/cable_list = list() //Index for all cables, so that powernets don't have to look through the entire world all the time
|
||||
var/global/list/portals = list() //for use by portals
|
||||
var/global/list/portals = list() //list of all /obj/effect/portal
|
||||
var/global/list/airlocks = list() //list of all airlocks
|
||||
var/global/list/mechas_list = list() //list of all mechs. Used by hostile mobs target tracking.
|
||||
var/global/list/shuttle_caller_list = list() //list of all communication consoles and AIs, for automatic shuttle calls when there are none.
|
||||
|
||||
|
||||
@@ -99,7 +99,9 @@
|
||||
var/turf/curturf = get_turf(teleatom)
|
||||
var/area/destarea = get_area(destination)
|
||||
if(precision)
|
||||
var/list/posturfs = circlerangeturfs(destination,precision)
|
||||
var/list/posturfs = list()
|
||||
for(var/turf/T in range(precision,destination))
|
||||
posturfs.Add(T)
|
||||
destturf = safepick(posturfs)
|
||||
else
|
||||
destturf = get_turf(destination)
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
return
|
||||
|
||||
var/obj/machinery/door/airlock/AL
|
||||
for(var/obj/machinery/door/D in portals)
|
||||
for(var/obj/machinery/door/D in airlocks)
|
||||
spawn()
|
||||
if(istype(D, /obj/machinery/door/airlock))
|
||||
AL = D
|
||||
@@ -109,7 +109,7 @@
|
||||
return
|
||||
|
||||
var/obj/machinery/door/airlock/AL
|
||||
for(var/obj/machinery/door/D in portals)
|
||||
for(var/obj/machinery/door/D in airlocks)
|
||||
spawn()
|
||||
if(istype(D, /obj/machinery/door/airlock))
|
||||
AL = D
|
||||
|
||||
@@ -47,6 +47,9 @@ var/bomb_set
|
||||
/obj/machinery/nuclearbomb/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/nuclearbomb/attack_ai(mob/user as mob)
|
||||
return
|
||||
|
||||
/obj/machinery/nuclearbomb/attack_hand(mob/user as mob)
|
||||
user.set_machine(src)
|
||||
var/dat = text("<TT>\nAuth. Disk: <A href='?src=\ref[];auth=1'>[]</A><HR>", src, (src.auth ? "++++++++++" : "----------"))
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
explosion_resistance = 0
|
||||
update_freelook_sight()
|
||||
air_update_turf(1)
|
||||
portals += src
|
||||
airlocks += src
|
||||
return
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
density = 0
|
||||
air_update_turf(1)
|
||||
update_freelook_sight()
|
||||
portals -= src
|
||||
airlocks -= src
|
||||
..()
|
||||
return
|
||||
|
||||
|
||||
@@ -78,6 +78,8 @@
|
||||
spark_system.attach(src)
|
||||
// targets = new
|
||||
..()
|
||||
src.cover = new /obj/machinery/turretcover(src.loc)
|
||||
src.cover.host = src
|
||||
return
|
||||
|
||||
/obj/machinery/turretcover
|
||||
@@ -168,8 +170,9 @@
|
||||
if(stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
if(src.cover==null)
|
||||
src.cover = new /obj/machinery/turretcover(src.loc)
|
||||
src.cover.host = src
|
||||
src.loc = null
|
||||
qdel(src)
|
||||
return ..()
|
||||
protected_area = get_protected_area()
|
||||
if(!enabled || !protected_area || protected_area.turretTargets.len<=0)
|
||||
if(!isDown() && !isPopping())
|
||||
|
||||
@@ -68,12 +68,22 @@
|
||||
//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
|
||||
var/turf/other_loc = tmob.loc
|
||||
|
||||
loc = tmob.loc
|
||||
tmob.loc = oldloc
|
||||
now_pushing = 0
|
||||
|
||||
for(var/mob/living/carbon/slime/slime in view(1,tmob))
|
||||
if(slime.Victim == tmob)
|
||||
slime.UpdateFeed()
|
||||
|
||||
//cross any movable atoms on either turf
|
||||
for(var/atom/movable/M in other_loc)
|
||||
M.Crossed(src)
|
||||
for(var/atom/movable/M in oldloc)
|
||||
M.Crossed(tmob)
|
||||
|
||||
return
|
||||
|
||||
if(tmob.r_hand && istype(tmob.r_hand, /obj/item/weapon/shield/riot))
|
||||
|
||||
@@ -777,6 +777,12 @@
|
||||
// pipe affected by explosion
|
||||
ex_act(severity)
|
||||
|
||||
//pass on ex_act to our contents before calling it on ourself
|
||||
var/obj/structure/disposalholder/H = locate() in src
|
||||
if(H)
|
||||
for(var/atom/movable/AM in H)
|
||||
AM.ex_act(severity)
|
||||
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
broken(0)
|
||||
|
||||
Reference in New Issue
Block a user