mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Fix conflicts with OOP solars, fix exploit with shard welding, add TG unlocking borgs with PDA, robotizing fixed to prevent getting stuck within objects, number of DNA blocks increased to 54 to match number of genes, fix numerous problems with solar construction and deconstruction.
Changelog
This commit is contained in:
@@ -32,7 +32,7 @@ var/global/datum/sun/sun
|
||||
angle = ((rotationRate * time / 100) % 360 + 360) % 360
|
||||
|
||||
if(angle != lastAngle)
|
||||
var/obj/machinery/power/solar/tracker/T
|
||||
var/obj/machinery/power/solar/panel/tracker/T
|
||||
for(T in solars_list)
|
||||
if(!T.powernet)
|
||||
solars_list.Remove(T)
|
||||
@@ -90,4 +90,4 @@ var/global/datum/sun/sun
|
||||
return
|
||||
|
||||
S.obscured = 0 //If hit the edge or stepped 20 times, not obscured.
|
||||
S.update_solar_exposure()
|
||||
S.update_solar_exposure()
|
||||
@@ -17,6 +17,25 @@
|
||||
viewers(user) << "\red <b>[user] wraps the cord of the [src.name] around \his neck! It looks like \he's trying to commit suicide.</b>"
|
||||
return(OXYLOSS)
|
||||
|
||||
/*/obj/item/weapon/syndicate_uplink
|
||||
name = "station bounced radio"
|
||||
desc = "Remain silent about this..."
|
||||
icon = 'icons/obj/radio.dmi'
|
||||
icon_state = "radio"
|
||||
var/temp = null
|
||||
var/uses = 10.0
|
||||
var/selfdestruct = 0.0
|
||||
var/traitor_frequency = 0.0
|
||||
var/mob/currentUser = null
|
||||
var/obj/item/device/radio/origradio = null
|
||||
flags = FPRINT | CONDUCT | ONBELT
|
||||
w_class = 2.0
|
||||
item_state = "radio"
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
m_amt = 100
|
||||
origin_tech = "magnets=2;syndicate=3"*/
|
||||
|
||||
/obj/item/weapon/rsp
|
||||
name = "\improper Rapid-Seed-Producer (RSP)"
|
||||
desc = "A device used to rapidly deploy seeds."
|
||||
@@ -500,74 +519,6 @@
|
||||
w_type = RECYK_METAL
|
||||
melt_temperature=MELTPOINT_STEEL
|
||||
|
||||
/obj/item/weapon/shard
|
||||
name = "shard"
|
||||
icon = 'icons/obj/shards.dmi'
|
||||
icon_state = "large"
|
||||
sharp = 1
|
||||
desc = "Could probably be used as ... a throwing weapon?"
|
||||
w_class = 1.0
|
||||
force = 5.0
|
||||
throwforce = 15.0
|
||||
item_state = "shard-glassnew"
|
||||
g_amt = 3750
|
||||
w_type = RECYK_GLASS
|
||||
melt_temperature = MELTPOINT_GLASS
|
||||
attack_verb = list("stabbed", "slashed", "sliced", "cut")
|
||||
|
||||
suicide_act(mob/user)
|
||||
viewers(user) << pick("\red <b>[user] is slitting \his wrists with the shard of glass! It looks like \he's trying to commit suicide.</b>", \
|
||||
"\red <b>[user] is slitting \his throat with the shard of glass! It looks like \he's trying to commit suicide.</b>")
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/weapon/shard/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return ..()
|
||||
|
||||
/*/obj/item/weapon/syndicate_uplink
|
||||
name = "station bounced radio"
|
||||
desc = "Remain silent about this..."
|
||||
icon = 'icons/obj/radio.dmi'
|
||||
icon_state = "radio"
|
||||
var/temp = null
|
||||
var/uses = 10.0
|
||||
var/selfdestruct = 0.0
|
||||
var/traitor_frequency = 0.0
|
||||
var/mob/currentUser = null
|
||||
var/obj/item/device/radio/origradio = null
|
||||
flags = FPRINT | CONDUCT | ONBELT
|
||||
w_class = 2.0
|
||||
item_state = "radio"
|
||||
throw_speed = 4
|
||||
throw_range = 20
|
||||
m_amt = 100
|
||||
origin_tech = "magnets=2;syndicate=3"*/
|
||||
|
||||
/obj/item/weapon/shard/shrapnel
|
||||
name = "shrapnel"
|
||||
icon = 'icons/obj/shards.dmi'
|
||||
icon_state = "shrapnellarge"
|
||||
desc = "A bunch of tiny bits of shattered metal."
|
||||
m_amt=5
|
||||
w_type=RECYK_METAL
|
||||
melt_temperature=MELTPOINT_STEEL
|
||||
|
||||
/obj/item/weapon/shard/shrapnel/New()
|
||||
|
||||
src.icon_state = pick("shrapnellarge", "shrapnelmedium", "shrapnelsmall")
|
||||
switch(src.icon_state)
|
||||
if("shrapnelsmall")
|
||||
src.pixel_x = rand(-12, 12)
|
||||
src.pixel_y = rand(-12, 12)
|
||||
if("shrapnelmedium")
|
||||
src.pixel_x = rand(-8, 8)
|
||||
src.pixel_y = rand(-8, 8)
|
||||
if("shrapnellarge")
|
||||
src.pixel_x = rand(-5, 5)
|
||||
src.pixel_y = rand(-5, 5)
|
||||
else
|
||||
return
|
||||
|
||||
/obj/item/weapon/SWF_uplink
|
||||
name = "station-bounced radio"
|
||||
desc = "used to comunicate it appears."
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#define DNA_UI_HAIR_STYLE 13
|
||||
#define DNA_UI_LENGTH 13 // Update this when you add something, or you WILL break shit.
|
||||
|
||||
#define DNA_SE_LENGTH 50 // Was STRUCDNASIZE, size 27. 15 new blocks added = 42, plus room to grow.
|
||||
#define DNA_SE_LENGTH 54 // Was STRUCDNASIZE, size 27. 15 new blocks added = 42, plus room to grow.
|
||||
|
||||
// Defines which values mean "on" or "off".
|
||||
// This is to make some of the more OP superpowers a larger PITA to activate,
|
||||
|
||||
@@ -14,9 +14,11 @@
|
||||
var/windoor = null
|
||||
var/reinforced = 0
|
||||
var/rglass = 0
|
||||
//For solars created from this glass type
|
||||
var/glass_quality = 0.5 //Quality of a solar made from this
|
||||
var/shealth = 5 //Health of a solar made from this
|
||||
var/sname = "glass"
|
||||
var/shard_type = /obj/item/weapon/shard
|
||||
|
||||
/obj/item/stack/sheet/glass/attack_self(mob/user as mob)
|
||||
construct_window(user)
|
||||
@@ -256,6 +258,7 @@
|
||||
melt_temperature = MELTPOINT_STEEL+500
|
||||
glass_quality = 1.15 //Can you imagine a world in which plasmaglass is worse than rglass
|
||||
shealth = 20
|
||||
shard_type = /obj/item/weapon/shard/plasma
|
||||
|
||||
/obj/item/stack/sheet/glass/plasmaglass/recycle(var/datum/materials/rec)
|
||||
rec.addAmount("plasma",1*src.amount)
|
||||
@@ -281,6 +284,7 @@
|
||||
reinforced = 1
|
||||
glass_quality = 1.3
|
||||
shealth = 30
|
||||
shard_type = /obj/item/weapon/shard/plasma
|
||||
|
||||
/obj/item/stack/sheet/glass/plasmarglass/recycle(var/datum/materials/rec)
|
||||
rec.addAmount("plasma",1*src.amount)
|
||||
|
||||
@@ -186,8 +186,7 @@
|
||||
continue
|
||||
oldsrc.attackby(item, usr)
|
||||
usr << "You add new [item.singular_name] to the stack. It now contains [item.amount] [item.singular_name]\s."
|
||||
if(!oldsrc)
|
||||
break
|
||||
break
|
||||
|
||||
/obj/item/stack/attack_hand(mob/user as mob)
|
||||
if (user.get_inactive_hand() == src)
|
||||
|
||||
@@ -477,6 +477,8 @@ var/global/list/RPD_recipes=list(
|
||||
return 0
|
||||
if(istype(A,/area/shuttle)||istype(A,/turf/space/transit))
|
||||
return 0
|
||||
if(istype(A, /obj/structure/lattice))
|
||||
A = get_turf(A)
|
||||
|
||||
switch(p_class)
|
||||
if(-2) // Paint pipes
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
/*
|
||||
* Glass shards
|
||||
*/
|
||||
/obj/item/weapon/shard/resetVariables()
|
||||
..("icon_state", "pixel_y", "pixel_x")
|
||||
|
||||
/obj/item/weapon/shard/Bump()
|
||||
|
||||
spawn( 0 )
|
||||
if (prob(20))
|
||||
src.force = 15
|
||||
else
|
||||
src.force = 4
|
||||
..()
|
||||
return
|
||||
return
|
||||
/obj/item/weapon/shard
|
||||
name = "shard"
|
||||
icon = 'icons/obj/shards.dmi'
|
||||
icon_state = "large"
|
||||
sharp = 1
|
||||
desc = "Could probably be used as ... a throwing weapon?"
|
||||
w_class = 1.0
|
||||
force = 5.0
|
||||
throwforce = 15.0
|
||||
item_state = "shard-glassnew"
|
||||
g_amt = 3750
|
||||
w_type = RECYK_GLASS
|
||||
melt_temperature = MELTPOINT_GLASS
|
||||
attack_verb = list("stabbed", "slashed", "sliced", "cut")
|
||||
var/glass = /obj/item/stack/sheet/glass/glass
|
||||
|
||||
/obj/item/weapon/shard/New()
|
||||
|
||||
@@ -31,19 +34,63 @@
|
||||
else
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/plasma
|
||||
name = "plasma shard"
|
||||
desc = "A shard of plasma glass. Considerably tougher then normal glass shards. Apparently not tough enough to be a window."
|
||||
force = 8.0
|
||||
throwforce = 15.0
|
||||
icon_state = "plasmalarge"
|
||||
item_state = "shard-plasglass"
|
||||
glass = /obj/item/stack/sheet/glass/plasmaglass
|
||||
|
||||
/obj/item/weapon/shard/plasma/New()
|
||||
..()
|
||||
src.icon_state = pick("plasmalarge", "plasmamedium", "plasmasmall")
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/shrapnel
|
||||
name = "shrapnel"
|
||||
icon = 'icons/obj/shards.dmi'
|
||||
icon_state = "shrapnellarge"
|
||||
desc = "A bunch of tiny bits of shattered metal."
|
||||
m_amt=5
|
||||
w_type=RECYK_METAL
|
||||
melt_temperature=MELTPOINT_STEEL
|
||||
|
||||
/obj/item/weapon/shard/shrapnel/New()
|
||||
..()
|
||||
src.icon_state = pick("shrapnellarge", "shrapnelmedium", "shrapnelsmall")
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/suicide_act(mob/user)
|
||||
viewers(user) << pick("\red <b>[user] is slitting \his wrists with the shard of glass! It looks like \he's trying to commit suicide.</b>", \
|
||||
"\red <b>[user] is slitting \his throat with the shard of glass! It looks like \he's trying to commit suicide.</b>")
|
||||
return (BRUTELOSS)
|
||||
|
||||
/obj/item/weapon/shard/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/shard/resetVariables()
|
||||
..("icon_state", "pixel_y", "pixel_x")
|
||||
|
||||
/obj/item/weapon/shard/Bump()
|
||||
|
||||
spawn( 0 )
|
||||
if (prob(20))
|
||||
src.force = 15
|
||||
else
|
||||
src.force = 4
|
||||
..()
|
||||
return
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if ( istype(W, /obj/item/weapon/weldingtool))
|
||||
if (iswelder(W))
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if(WT.remove_fuel(0, user))
|
||||
var/obj/item/stack/sheet/glass/glass/NG = new (user.loc)
|
||||
for (var/obj/item/stack/sheet/glass/glass/G in user.loc)
|
||||
if(G==NG)
|
||||
continue
|
||||
if(G.amount>=G.max_amount)
|
||||
continue
|
||||
G.attackby(NG, user)
|
||||
usr << "You add the newly-formed glass to the stack. It now contains [NG.amount] sheets."
|
||||
//SN src = null
|
||||
var/obj/item/stack/sheet/glass/new_item = new glass(user.loc)
|
||||
new_item.add_to_stacks(usr)
|
||||
returnToPool(src)
|
||||
return
|
||||
return ..()
|
||||
@@ -64,4 +111,4 @@
|
||||
if(affecting.take_damage(5, 0))
|
||||
H.QueueUpdateDamageIcon()
|
||||
H.updatehealth()
|
||||
..()
|
||||
..()
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
return
|
||||
|
||||
/obj/structure/lattice/attackby(obj/item/C as obj, mob/user as mob)
|
||||
if(istype(C, /obj/item/weapon/weldingtool))
|
||||
if(iswelder(C))
|
||||
var/obj/item/weapon/weldingtool/WeldingTool = C
|
||||
if(WeldingTool.remove_fuel(0, user))
|
||||
user << "<span class='notice'>Slicing lattice joints...</span>"
|
||||
@@ -55,7 +55,8 @@
|
||||
qdel(src)
|
||||
else
|
||||
var/turf/T = get_turf(src)
|
||||
return T.attackby(C, user) //Attacking to the lattice will attack to the space turf
|
||||
T.attackby(C, user) //Attacking to the lattice will attack to the space turf
|
||||
return
|
||||
|
||||
/obj/structure/lattice/proc/updateOverlays()
|
||||
set waitfor = 0
|
||||
|
||||
@@ -62,7 +62,7 @@ var/GLASSESBLOCK = 0
|
||||
var/EPILEPSYBLOCK = 0
|
||||
var/TWITCHBLOCK = 0
|
||||
var/NERVOUSBLOCK = 0
|
||||
var/MONKEYBLOCK = 50 // Monkey block will always be the DNA_SE_LENGTH
|
||||
var/MONKEYBLOCK = 54 // Monkey block will always be the DNA_SE_LENGTH
|
||||
|
||||
var/BLOCKADD = 0
|
||||
var/DIFFMUT = 0
|
||||
|
||||
@@ -1121,8 +1121,8 @@
|
||||
else if(istype(M, /mob/living/carbon/monkey))
|
||||
var/mob/living/carbon/monkey/george = M
|
||||
//they can only hold things :(
|
||||
if(george.get_active_hand() && istype(george.get_active_hand(), /obj/item/weapon/card/id) && check_access(george.get_active_hand()))
|
||||
return 1
|
||||
if(istype(george.get_active_hand(), /obj/item))
|
||||
return check_access(george.get_active_hand())
|
||||
return 0
|
||||
|
||||
/mob/living/silicon/robot/proc/check_access(obj/item/weapon/card/id/I)
|
||||
@@ -1132,7 +1132,9 @@
|
||||
var/list/L = req_access
|
||||
if(!L.len) //no requirements
|
||||
return 1
|
||||
if(!I || !istype(I, /obj/item/weapon/card/id) || !I.access) //not ID or no access
|
||||
if(!istype(I, /obj/item/weapon/card/id) && istype(I, /obj/item))
|
||||
I = I.GetID()
|
||||
if(!I || !I.access) //not ID or no access
|
||||
return 0
|
||||
for(var/req in req_access)
|
||||
if(!(req in I.access)) //doesn't have this access
|
||||
|
||||
@@ -183,7 +183,7 @@
|
||||
for(var/t in organs)
|
||||
del(t)
|
||||
|
||||
var/mob/living/silicon/robot/O = new /mob/living/silicon/robot( loc )
|
||||
var/mob/living/silicon/robot/O = new /mob/living/silicon/robot(get_turf(src))
|
||||
|
||||
// cyborgs produced by Robotize get an automatic power cell
|
||||
O.cell = new(O)
|
||||
|
||||
103
code/modules/power/solar.dm
Normal file
103
code/modules/power/solar.dm
Normal file
@@ -0,0 +1,103 @@
|
||||
#define SOLAR_MAX_DIST 40
|
||||
#define SOLARGENRATE 1500 // upgrade factor can happen later, regular solars start with rglass panels
|
||||
|
||||
var/list/solars_list = list()
|
||||
|
||||
/obj/machinery/power/solar
|
||||
icon = 'icons/obj/power.dmi'
|
||||
density = 1
|
||||
|
||||
/obj/machinery/power/proc/getPowernetNodes()
|
||||
if(!powernet)
|
||||
return list()
|
||||
|
||||
return powernet.nodes
|
||||
|
||||
/obj/machinery/power/solar/New(loc)
|
||||
..(loc)
|
||||
solars_list += src
|
||||
|
||||
if(ticker)
|
||||
initialize()
|
||||
|
||||
/obj/machinery/power/solar/Destroy()
|
||||
solars_list -= src
|
||||
..()
|
||||
|
||||
/obj/machinery/power/solar/initialize()
|
||||
..()
|
||||
connect_to_network()
|
||||
|
||||
// this is here because it is fucking here. If you found this, you're lucky !
|
||||
/obj/item/weapon/paper/solar
|
||||
name = "paper - 'Going green with Greencorps! Instrunctions on setting up your own solar array.'"
|
||||
info = "<h1>Welcome</h1><p>We at Greencorps we love the environment, and space. With this package you will help mother nature and produce energy without using fossil fuel or plasma! The Singularity Engine is dangerous while solar energy is safe, which is why it's better. Now here is how you setup your own solar array.</p><p>You can make a solar panel by wrenching the solar assembly onto a cable node. Add a glass panel, reinforced or regular glass will do, which will finish the construction of your solar panel. It's that easy!.</p><p>Now after setting up 19 more of these solar panels you will want to create a solar tracker to keep track of mother nature's gift, the sun. These are the same steps as before except you insert the tracker equipment circuit into the assembly before performing the final step of adding the glass. You now have a tracker! Now the last step is to add a computer to calculate the sun's movements and to send commands to the solar panels to change direction with the sun. Setting up the solar computer is the same as setting up any computer, so you should have no trouble in doing that. You do need to put a wire node under the computer, and the wire needs to be connected to the tracker.</p><p>Congratulations, you should have a working solar array. If you are having trouble, here are some tips. Make sure all solar equipment are on a cable node, even the computer. You can always deconstruct your creations if you make a mistake.</p><p>That's all to it, be safe, be green!</p>"
|
||||
|
||||
//Solar Assembly - For construction of solar arrays
|
||||
/obj/machinery/power/solar_assembly
|
||||
name = "solar panel assembly"
|
||||
desc = "A solar panel assembly kit, allows constructions of a solar panel, or with a tracking circuit board, a solar tracker"
|
||||
icon = 'icons/obj/power.dmi'
|
||||
icon_state = "sp_base"
|
||||
anchored = 0
|
||||
density = 0
|
||||
var/tracker = 0
|
||||
var/glass_type = null
|
||||
|
||||
//Give back the glass type we were supplied with
|
||||
/obj/machinery/power/solar_assembly/proc/give_glass() //And the lord said unto him, 'Give that fucker glass'
|
||||
if(glass_type)
|
||||
var/obj/item/stack/sheet/S = new glass_type(get_turf(src))
|
||||
S.amount = 2
|
||||
glass_type = null //Memory vars ho !
|
||||
|
||||
/obj/machinery/power/solar_assembly/attackby(var/obj/item/weapon/W, var/mob/user)
|
||||
if(!anchored && isturf(loc))
|
||||
if(iswrench(W))
|
||||
anchored = 1
|
||||
density = 1
|
||||
user.visible_message("<span class='notice'>[user] wrenches [src] down.</span>", \
|
||||
"<span class='notice'>You wrench [src] down.</span>")
|
||||
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 75, 1)
|
||||
return 1
|
||||
else
|
||||
if(iswrench(W))
|
||||
anchored = 0
|
||||
density = 0
|
||||
user.visible_message("<span class='notice'>[user] unwrenches [src] from the ground.</span>", \
|
||||
"<span class='notice'>You unwrench [src] from the ground.</span>")
|
||||
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 75, 1)
|
||||
return 1
|
||||
|
||||
if(istype(W, /obj/item/stack/sheet/glass))
|
||||
var/obj/item/stack/sheet/glass/S = W
|
||||
if(S.amount >= 2)
|
||||
glass_type = W.type
|
||||
S.use(2)
|
||||
playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1)
|
||||
user.visible_message("<span class='notice'>[user] carefully adds glass to [src].</span>", \
|
||||
"<span class='notice'>You carefully add glass to [src].</span>")
|
||||
if(tracker)
|
||||
new /obj/machinery/power/solar/panel/tracker(get_turf(src), src)
|
||||
else
|
||||
new /obj/machinery/power/solar/panel(get_turf(src), src)
|
||||
else
|
||||
user << "<span class='notice'>You lack enough [W.type] to finish the solar.</span>"
|
||||
return 1
|
||||
|
||||
if(!tracker)
|
||||
if(istype(W, /obj/item/weapon/tracker_electronics))
|
||||
tracker = 1
|
||||
user.drop_item()
|
||||
del(W)
|
||||
user.visible_message("<span class='notice'>[user] inserts the electronics into [src].</span>", \
|
||||
"<span class='notice'>You insert the electronics into [src].</span>")
|
||||
return 1
|
||||
else
|
||||
if(iscrowbar(W))
|
||||
new /obj/item/weapon/tracker_electronics(src.loc)
|
||||
tracker = 0
|
||||
user.visible_message("<span class='notice'>[user] takes the electronics out of [src].</span>", \
|
||||
"<span class='notice'>You take the electronics out of [src].</span>")
|
||||
return 1
|
||||
..()
|
||||
@@ -89,8 +89,8 @@
|
||||
A.anchored = 1
|
||||
qdel(src)
|
||||
else
|
||||
visible_message("<span class='notice'>[user] disconnects [src]'s monitor.</span>", \
|
||||
"<span class='notice'>You disconnect [src]'s monitor.</span>")
|
||||
visible_message("[user] begins to unscrew \the [src]'s monitor.",
|
||||
"You begin to unscrew the monitor...")
|
||||
var/obj/structure/computerframe/A = new /obj/structure/computerframe(src.loc)
|
||||
var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control(A)
|
||||
for (var/obj/C in src)
|
||||
@@ -118,7 +118,7 @@
|
||||
return
|
||||
|
||||
if ((get_dist(src, user) > 1))
|
||||
if (!istype(user, /mob/living/silicon/ai))
|
||||
if (!issilicon(user)&&!isobserver(user))
|
||||
user.unset_machine()
|
||||
user << browse(null, "window=solcon")
|
||||
return
|
||||
@@ -195,7 +195,7 @@ Manual Tracking Direction:"}
|
||||
track = text2num(href_list["track"])
|
||||
|
||||
if(track == 2)
|
||||
for(var/obj/machinery/power/solar/tracker/T in getPowernetNodes())
|
||||
for(var/obj/machinery/power/solar/panel/tracker/T in getPowernetNodes())
|
||||
cdir = T.sun_angle
|
||||
break
|
||||
|
||||
@@ -245,4 +245,4 @@ Manual Tracking Direction:"}
|
||||
/obj/machinery/power/solar/control/blob_act()
|
||||
if(prob(75))
|
||||
broken()
|
||||
density = 0
|
||||
density = 0
|
||||
@@ -9,34 +9,48 @@
|
||||
var/ndir = SOUTH
|
||||
var/turn_angle = 0
|
||||
var/glass_quality_factor = 1 //Rglass is average. Glass is shite. Tinted glass is "Are you even trying ?" tier if anyone ever makes a sheet version
|
||||
var/tracker = 0
|
||||
var/obj/machinery/power/solar/control/control
|
||||
var/obj/machinery/power/solar_assembly/solar_assembly
|
||||
|
||||
/obj/machinery/power/solar/panel/New(loc)
|
||||
/obj/machinery/power/solar/panel/New(loc, var/obj/machinery/power/solar_assembly/S)
|
||||
..(loc)
|
||||
make()
|
||||
make(S)
|
||||
|
||||
/obj/machinery/power/solar/panel/proc/make()
|
||||
if(!solar_assembly)
|
||||
/obj/machinery/power/solar/panel/proc/make(var/obj/machinery/power/solar_assembly/S)
|
||||
if(!S)
|
||||
solar_assembly = new /obj/machinery/power/solar_assembly()
|
||||
solar_assembly.glass_type = /obj/item/stack/sheet/rglass
|
||||
solar_assembly.glass_type = /obj/item/stack/sheet/glass/rglass
|
||||
solar_assembly.anchored = 1
|
||||
|
||||
solar_assembly.density = 1
|
||||
solar_assembly.tracker = tracker
|
||||
else
|
||||
solar_assembly = S
|
||||
var/obj/item/stack/sheet/glass/G = solar_assembly.glass_type //This is how you call up variables from an object without making one
|
||||
src.glass_quality_factor = initial(G.glass_quality) //Don't use istype checks kids
|
||||
src.maxhealth = initial(G.shealth)
|
||||
src.health = initial(G.shealth)
|
||||
solar_assembly.loc = src
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/power/solar/panel/attackby(obj/item/weapon/W, mob/user)
|
||||
if(iscrowbar(W))
|
||||
var/turf/T = get_turf(src)
|
||||
var/obj/item/stack/sheet/glass/G = solar_assembly.glass_type
|
||||
user << "<span class='notice'>You begin taking the [initial(G.name)] off the [src].</span>"
|
||||
playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1)
|
||||
if(do_after(user, 50))
|
||||
if(solar_assembly)
|
||||
solar_assembly.loc = T
|
||||
solar_assembly.give_glass()
|
||||
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
user.visible_message("<span class='notice'>[user] takes the glass off the solar panel.</span>")
|
||||
user.visible_message("<span class='notice'>[user] takes the [initial(G.name)] off the [src].</span>",\
|
||||
"<span class='notice'>You takes the [initial(G.name)] off the [src].</span>")
|
||||
qdel(src)
|
||||
else if(W)
|
||||
add_fingerprint(user)
|
||||
health -= W.force
|
||||
healthcheck()
|
||||
|
||||
..()
|
||||
|
||||
/obj/machinery/power/solar/panel/blob_act()
|
||||
@@ -52,37 +66,25 @@
|
||||
if(!(stat & BROKEN))
|
||||
broken()
|
||||
else
|
||||
var/obj/item/stack/sheet/glass/G = solar_assembly.glass_type
|
||||
var/shard = initial(G.shard_type)
|
||||
solar_assembly.glass_type = null //The glass you're looking for is below pal
|
||||
getFromPool(/obj/item/weapon/shard, loc)
|
||||
getFromPool(/obj/item/weapon/shard, loc)
|
||||
solar_assembly.loc = get_turf(src)
|
||||
getFromPool(shard, loc)
|
||||
getFromPool(shard, loc)
|
||||
qdel(src)
|
||||
|
||||
/obj/machinery/power/solar/panel/update_icon()
|
||||
..()
|
||||
|
||||
overlays.len = 0
|
||||
|
||||
if(stat & BROKEN)
|
||||
if(solar_assembly.glass_type == /obj/item/stack/sheet/glass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel-b", layer = FLY_LAYER)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/rglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_ref-b", layer = FLY_LAYER)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/glass/plasmaglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_plasma-b", layer = FLY_LAYER)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/rglass/plasmarglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_plasma_ref-b", layer = FLY_LAYER)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/glass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel", layer = FLY_LAYER)
|
||||
src.dir = angle2dir(adir)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/rglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_ref", layer = FLY_LAYER)
|
||||
src.dir = angle2dir(adir)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/glass/plasmaglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_plasma", layer = FLY_LAYER)
|
||||
src.dir = angle2dir(adir)
|
||||
else if(solar_assembly.glass_type == /obj/item/stack/sheet/rglass/plasmarglass)
|
||||
overlays += image('icons/obj/power.dmi', icon_state = "solar_panel_plasma_ref", layer = FLY_LAYER)
|
||||
if(!tracker)
|
||||
overlays.len = 0
|
||||
var/obj/item/stack/sheet/glass/G = solar_assembly.glass_type
|
||||
var/icon = "solar_panel_" + initial(G.sname)
|
||||
if(stat & BROKEN)
|
||||
icon += "-b"
|
||||
overlays += image('icons/obj/power.dmi', icon_state = icon, layer = FLY_LAYER)
|
||||
src.dir = angle2dir(adir)
|
||||
return
|
||||
|
||||
/obj/machinery/power/solar/panel/proc/update_solar_exposure()
|
||||
if(!sun)
|
||||
@@ -160,4 +162,4 @@
|
||||
. = ..()
|
||||
|
||||
if(.)
|
||||
control = null
|
||||
control = null
|
||||
@@ -1,23 +1,12 @@
|
||||
/obj/machinery/power/solar/tracker
|
||||
/obj/machinery/power/solar/panel/tracker
|
||||
name = "solar tracker"
|
||||
desc = "A solar directional tracker."
|
||||
icon_state = "tracker"
|
||||
|
||||
var/sun_angle = 0 // sun angle as set by sun datum
|
||||
|
||||
/obj/machinery/power/solar/tracker/New(loc, obj/machinery/power/solar_assembly/S)
|
||||
..(loc)
|
||||
|
||||
if(!S)
|
||||
S = new(src)
|
||||
S.glass_type = /obj/item/stack/sheet/rglass
|
||||
S.tracker = 1
|
||||
S.anchored = 1
|
||||
|
||||
S.loc = src
|
||||
tracker = 1
|
||||
|
||||
// called by datum/sun/calc_position() as sun's angle changes
|
||||
/obj/machinery/power/solar/tracker/proc/set_angle(angle)
|
||||
/obj/machinery/power/solar/panel/tracker/proc/set_angle(angle)
|
||||
sun_angle = angle
|
||||
|
||||
//Set icon dir to show sun illumination
|
||||
@@ -34,22 +23,8 @@
|
||||
if(get_dist(C, src) < SOLAR_MAX_DIST)
|
||||
C.tracker_update(angle)
|
||||
|
||||
/obj/machinery/power/solar/tracker/attackby(var/obj/item/weapon/W, var/mob/user)
|
||||
if(iscrowbar(W))
|
||||
playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1)
|
||||
if(do_after(user, 50))
|
||||
var/obj/machinery/power/solar_assembly/S = locate() in src
|
||||
if(S)
|
||||
S.loc = src.loc
|
||||
S.give_glass()
|
||||
playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
user.visible_message("<span class='notice'>[user] takes the glass off the tracker.</span>")
|
||||
qdel(src)
|
||||
return
|
||||
..()
|
||||
|
||||
// make sure we can draw power from the powernet
|
||||
/obj/machinery/power/solar/tracker/process()
|
||||
/obj/machinery/power/solar/panel/tracker/process()
|
||||
var/avail = surplus()
|
||||
|
||||
if(avail > 500)
|
||||
@@ -63,4 +38,4 @@
|
||||
name = "tracker electronics"
|
||||
icon = 'icons/obj/doors/door_assembly.dmi'
|
||||
icon_state = "door_electronics"
|
||||
w_class = 2.0
|
||||
w_class = 2.0
|
||||
@@ -1,46 +1,4 @@
|
||||
|
||||
/obj/item/weapon/shard/plasma
|
||||
name = "plasma shard"
|
||||
desc = "A shard of plasma glass. Considerably tougher then normal glass shards. Apparently not tough enough to be a window."
|
||||
force = 8.0
|
||||
throwforce = 15.0
|
||||
icon_state = "plasmalarge"
|
||||
item_state = "shard-plasglass"
|
||||
|
||||
/obj/item/weapon/shard/plasma/New()
|
||||
|
||||
src.icon_state = pick("plasmalarge", "plasmamedium", "plasmasmall")
|
||||
switch(src.icon_state)
|
||||
if("plasmasmall")
|
||||
src.pixel_x = rand(-12, 12)
|
||||
src.pixel_y = rand(-12, 12)
|
||||
if("plasmamedium")
|
||||
src.pixel_x = rand(-8, 8)
|
||||
src.pixel_y = rand(-8, 8)
|
||||
if("plasmalarge")
|
||||
src.pixel_x = rand(-5, 5)
|
||||
src.pixel_y = rand(-5, 5)
|
||||
else
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/plasma/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ( istype(W, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if(WT.remove_fuel(0, user))
|
||||
var/obj/item/stack/sheet/glass/plasmaglass/NG = new (user.loc)
|
||||
for (var/obj/item/stack/sheet/glass/plasmaglass/G in user.loc)
|
||||
if(G==NG)
|
||||
continue
|
||||
if(G.amount>=G.max_amount)
|
||||
continue
|
||||
G.attackby(NG, user)
|
||||
usr << "You add the newly-formed plasma glass to the stack. It now contains [NG.amount] sheets."
|
||||
//SN src = null
|
||||
returnToPool(src)
|
||||
return
|
||||
return ..()
|
||||
|
||||
//legacy crystal
|
||||
/obj/machinery/crystal
|
||||
name = "Crystal"
|
||||
|
||||
@@ -2,7 +2,9 @@ author: Clusterfack
|
||||
delete-after: true
|
||||
changes:
|
||||
- bugfix: Modifying a turf to another type no longer adds/deletes gases to it
|
||||
- tweak: You can tell if an MMI is locked/unlocked by examining it now
|
||||
- rscadd: Added mommi parts should be dropped when mmi/posis finish a borg
|
||||
- bugfix: You should be able to view solar controls at a range as ghosts/mommi
|
||||
- bugfix: Glass should no longer stack together inappropriately
|
||||
- rscadd: Mommi parts should be dropped when an mmi/posis finishes a borg
|
||||
- bugfix: Solars should work properly now during construction and deconstruction
|
||||
- bugfix: Glass should no longer stack together inappropriately, also fixed a multiplication exploit from welding shards
|
||||
- tweak: You can unlock borgs with PDAs with proper access ID inside (TG Port)
|
||||
- bugfix: DNA block number increased to 54 so that all genes are properly assigned
|
||||
- bugfix: Robotizing (i.e. roboburgers) can no longer leave you trapped in objects
|
||||
@@ -1532,7 +1532,7 @@
|
||||
"aDx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/engineering/engine)
|
||||
"aDy" = (/obj/machinery/door/airlock/engineering{name = "Antimatter Room"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/engineering/antimatter_room)
|
||||
"aDz" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor,/area/engineering/engine)
|
||||
"aDA" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless,/area/solar/fport)
|
||||
"aDA" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless,/area/solar/fport)
|
||||
"aDB" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/fport)
|
||||
"aDC" = (/turf/simulated/floor/plating/airless{icon_state = "platingdmg1"},/area/solar/fport)
|
||||
"aDD" = (/turf/simulated/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/fport)
|
||||
@@ -5006,7 +5006,7 @@
|
||||
"bSn" = (/obj/effect/decal/cleanable/blood/splatter,/obj/item/stack/sheet/cardboard,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/medbay3)
|
||||
"bSo" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/effect/decal/cleanable/blood/splatter,/obj/item/weapon/retractor,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/medbay3)
|
||||
"bSp" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor{icon_state = "floorgrime"},/area/medical/medbay3)
|
||||
"bSq" = (/obj/structure/cable,/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/fstarboard)
|
||||
"bSq" = (/obj/structure/cable,/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/fstarboard)
|
||||
"bSr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/fstarboard)
|
||||
"bSs" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable,/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating/airless,/area/solar/fstarboard)
|
||||
"bSt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/fstarboard)
|
||||
@@ -6498,7 +6498,7 @@
|
||||
"cuX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/alarm{dir = 4; pixel_x = -22},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/security/gas_chamber)
|
||||
"cuY" = (/obj/machinery/power/apc{dir = 4; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/gas_chamber)
|
||||
"cuZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/gas_chamber)
|
||||
"cva" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/aport)
|
||||
"cva" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/aport)
|
||||
"cvb" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/aport)
|
||||
"cvc" = (/turf/simulated/floor/plating/airless,/area/solar/aport)
|
||||
"cvd" = (/turf/simulated/floor/plating/airless{icon_state = "panelscorched"},/area/solar/aport)
|
||||
@@ -7265,7 +7265,7 @@
|
||||
"cJK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless{icon_state = "platingdmg1"},/area/solar/astarboard)
|
||||
"cJL" = (/turf/space,/area/syndicate_station/south)
|
||||
"cJM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/astarboard)
|
||||
"cJN" = (/obj/structure/cable,/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/astarboard)
|
||||
"cJN" = (/obj/structure/cable,/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless{icon_state = "platingdmg3"},/area/solar/astarboard)
|
||||
"cJO" = (/turf/space{icon_state = "black"},/area)
|
||||
"cJP" = (/turf/unsimulated/wall{icon_state = "iron6"},/area)
|
||||
"cJQ" = (/obj/structure/window/reinforced,/turf/unsimulated/wall{icon_state = "iron12"},/area)
|
||||
@@ -8351,7 +8351,7 @@
|
||||
"deE" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/simulated/floor,/area/derelict/bridge)
|
||||
"deF" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/derelict/bridge)
|
||||
"deG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera{c_tag = "Bridge Maintenance"; dir = 4},/obj/effect/nmpi,/turf/simulated/floor/plating,/area/maintenance/maintcentral)
|
||||
"deH" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"deH" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"deI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/djstation/solars)
|
||||
"deJ" = (/obj/machinery/power/solar/panel{id_tag = "djstationsolar"; name = "DJ Station Solar Array"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"deK" = (/obj/machinery/power/solar/panel{id_tag = "djstationsolar"; name = "DJ Station Solar Array"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
@@ -8759,7 +8759,7 @@
|
||||
"dmw" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
|
||||
"dmx" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/control{id_tag = "derelictsolar"; name = "Primary Solar Control"},/turf/simulated/floor,/area/derelict/solar_control)
|
||||
"dmy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
|
||||
"dmz" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dmz" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dmA" = (/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
|
||||
"dmB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
|
||||
"dmC" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_aft)
|
||||
@@ -9670,7 +9670,7 @@
|
||||
"dDX" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/engineering/engine)
|
||||
"dDY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "SM_Monitor"; name = "radiation shutters"; opacity = 0},/turf/simulated/floor/plating,/area/engineering/supermatter_room)
|
||||
"dDZ" = (/obj/machinery/power/solar/panel{name = "Research Outpost Solar Array"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "solarpanel"},/area/research_outpost/solars)
|
||||
"dEa" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/research_outpost/solars)
|
||||
"dEa" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/research_outpost/solars)
|
||||
"dEb" = (/obj/machinery/vending/coffee,/turf/simulated/floor,/area/security/brig)
|
||||
"dEc" = (/obj/machinery/door/airlock/glass_security{name = "Interrogation"; req_access_txt = "63"},/turf/simulated/floor,/area/security/brig)
|
||||
"dEd" = (/obj/structure/stool/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_station/start)
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
"aai" = (/obj/structure/grille,/obj/structure/lattice,/turf/space,/area)
|
||||
"aaj" = (/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/structure/lattice,/turf/space,/area)
|
||||
"aak" = (/obj/structure/lattice,/turf/space,/area)
|
||||
"aal" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/auxstarboard)
|
||||
"aal" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/auxstarboard)
|
||||
"aam" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/auxstarboard)
|
||||
"aan" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/panel{id_tag = "forestarboard"; name = "Fore-Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/auxstarboard)
|
||||
"aao" = (/turf/space,/obj/structure/cable,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/auxstarboard)
|
||||
@@ -21,7 +21,7 @@
|
||||
"aau" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/auxstarboard)
|
||||
"aav" = (/turf/space,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/auxstarboard)
|
||||
"aaw" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk8"},/area/solar/auxstarboard)
|
||||
"aax" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/auxport)
|
||||
"aax" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/auxport)
|
||||
"aay" = (/obj/structure/cable,/obj/machinery/power/solar/panel{id_tag = "forestarboard"; name = "Fore-Starboard Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/auxstarboard)
|
||||
"aaz" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/auxstarboard)
|
||||
"aaA" = (/turf/space,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/auxport)
|
||||
@@ -1130,7 +1130,7 @@
|
||||
"avL" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor,/area/engineering/supermatter_room)
|
||||
"avM" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor/plating,/area/engineering/supermatter_room)
|
||||
"avN" = (/obj/machinery/atmospherics/pipe/manifold/insulated/hidden/blue{dir = 4},/obj/machinery/meter,/obj/effect/decal/warning_stripes{tag = "icon-warning_corner (NORTH)"; icon_state = "warning_corner"; dir = 1},/turf/simulated/floor/plating,/area/engineering/supermatter_room)
|
||||
"avO" = (/turf/space,/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/prison/solar{name = "\improper MiniSat Solar Array"})
|
||||
"avO" = (/turf/space,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/prison/solar{name = "\improper MiniSat Solar Array"})
|
||||
"avP" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/simulated/floor/plating/airless,/area)
|
||||
"avQ" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/effect/decal/cleanable/cobweb,/turf/simulated/floor/plating,/area/maintenance/fpmaint2{name = "Port Maintenance"})
|
||||
"avR" = (/turf/simulated/floor/plating{tag = "icon-platingdmg1"; icon_state = "platingdmg1"},/area/maintenance/fpmaint2{name = "Port Maintenance"})
|
||||
@@ -5829,7 +5829,7 @@
|
||||
"cia" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/engineering/atmos)
|
||||
"cib" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/engineering/atmos)
|
||||
"cic" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/light/small{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/primary/starboard)
|
||||
"cid" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/aport)
|
||||
"cid" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/aport)
|
||||
"cie" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/aport)
|
||||
"cif" = (/obj/structure/barricade/wooden,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"})
|
||||
"cig" = (/obj/item/trash/pistachios,/obj/structure/closet,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/extinguisher,/obj/item/weapon/storage/belt/utility,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"})
|
||||
@@ -7585,8 +7585,13 @@
|
||||
"cPO" = (/turf/simulated/shuttle/wall{icon_state = "swall14"},/area/supply/dock)
|
||||
"cPP" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/shower{tag = "icon-shower (EAST)"; icon_state = "shower"; dir = 4},/obj/effect/decal/warning_stripes{tag = "icon-warning (WEST)"; icon_state = "warning"; dir = 8},/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"cPQ" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
<<<<<<< HEAD
|
||||
"cPR" = (/obj/item/weapon/cigbutt,/turf/simulated/floor/plating,/area/maintenance/asmaint3)
|
||||
"cPS" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/fstarboard)
|
||||
=======
|
||||
"cPR" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera{c_tag = "Xenobiology - Access"; dir = 8; network = list("SS13","RD")},/obj/effect/decal/warning_stripes{tag = "icon-warning (EAST)"; icon_state = "warning"; dir = 4},/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"cPS" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/fstarboard)
|
||||
>>>>>>> c4e1f34... Fix conflicts with OOP solars, fix exploit with shard welding, add TG unlocking borgs with PDA, robotizing fixed to prevent getting stuck within objects, number of DNA blocks increased to 54 to match number of genes, fix numerous problems with solar construction and deconstruction.
|
||||
"cPT" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"})
|
||||
"cPU" = (/obj/item/seeds/berryseed,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"})
|
||||
"cPV" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/plating,/area/maintenance/aft{name = "Aft Maintenance"})
|
||||
@@ -7807,7 +7812,7 @@
|
||||
"cUc" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"cUd" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"cUe" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"cUf" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cUf" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cUg" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet,/turf/simulated/floor/engine,/area/science/xenobiology)
|
||||
"cUh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/engine,/area/science/xenobiology)
|
||||
"cUi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/door/poddoor/preopen{id_tag = "xenobio3"; name = "containment blast door"},/turf/simulated/floor/engine,/area/science/xenobiology)
|
||||
@@ -9606,7 +9611,7 @@
|
||||
"dCY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/djstation)
|
||||
"dCZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/djstation)
|
||||
"dDa" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/djstation)
|
||||
"dDb" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dDb" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dDc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/djstation)
|
||||
"dDd" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/power/solar/control{id_tag = "derelictsolar"; name = "Primary Solar Control"},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
|
||||
"dDe" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/decal/warning_stripes{tag = "icon-warning (EAST)"; icon_state = "warning"; dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/djstation)
|
||||
|
||||
@@ -2394,7 +2394,7 @@
|
||||
"cap" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/simulated/floor/plating/airless,/area/AIsattele)
|
||||
"caq" = (/obj/structure/closet/crate,/obj/item/device/aicard,/obj/item/device/multitool,/turf/simulated/floor/plating/airless,/area/AIsattele)
|
||||
"car" = (/obj/structure/grille,/turf/simulated/floor/plating/airless,/area)
|
||||
"cas" = (/obj/machinery/power/solar/fake,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cas" = (/obj/machinery/power/solar/panel/fake,/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cat" = (/turf/simulated/floor/plating/airless,/area/djstation/solars)
|
||||
"cau" = (/turf/simulated/wall,/area/djstation)
|
||||
"cav" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/djstation)
|
||||
|
||||
@@ -268,7 +268,7 @@
|
||||
"afh" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
|
||||
"afi" = (/turf/simulated/wall,/area/crew_quarters/locker)
|
||||
"afj" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"afk" = (/turf/space,/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fore{name = "\improper Engineering Solar Array"})
|
||||
"afk" = (/turf/space,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fore{name = "\improper Engineering Solar Array"})
|
||||
"afl" = (/obj/structure/sign/vacuum,/turf/simulated/wall,/area/maintenance/fpmaint)
|
||||
"afm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fpmaint)
|
||||
"afn" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 273},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/medical/medbay)
|
||||
@@ -394,7 +394,7 @@
|
||||
"ahD" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"ahE" = (/turf/space,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"ahF" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk15"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"ahG" = (/turf/space,/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk8"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"ahG" = (/turf/space,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk8"},/area/solar/fstarboard{name = "\improper Medbay Solar Array"})
|
||||
"ahH" = (/obj/structure/cable,/obj/machinery/power/solar/panel{id_tag = "engisolar"; name = "Engineering Solar Array"},/turf/simulated/floor/airless{icon_state = "solarpanel"},/area/solar/fore{name = "\improper Engineering Solar Array"})
|
||||
"ahI" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/heat_exchanging,/turf/simulated/floor/bluegrid{name = "Server Base"; nitrogen = 500; oxygen = 0; temperature = 80},/area/tcomms/chamber)
|
||||
"ahJ" = (/turf/simulated/floor/bluegrid{name = "Server Base"; nitrogen = 500; oxygen = 0; temperature = 80},/area/tcomms/chamber)
|
||||
@@ -2042,7 +2042,7 @@
|
||||
"aNn" = (/turf/simulated/floor,/area/storage/tech)
|
||||
"aNo" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor,/area/storage/tech)
|
||||
"aNp" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor/plating,/area/engine/storage{name = "\improper Engineering Storage"})
|
||||
"aNq" = (/turf/space,/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk4"},/area/solar/aport{name = "\improper Cargo Solar Array"})
|
||||
"aNq" = (/turf/space,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk4"},/area/solar/aport{name = "\improper Cargo Solar Array"})
|
||||
"aNr" = (/turf/space,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/aport{name = "\improper Cargo Solar Array"})
|
||||
"aNs" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk12"},/area/solar/aport{name = "\improper Cargo Solar Array"})
|
||||
"aNt" = (/turf/space,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk15"},/area/solar/aport{name = "\improper Cargo Solar Array"})
|
||||
@@ -2157,7 +2157,7 @@
|
||||
"aPy" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge{name = "\improper Bridge Primary"})
|
||||
"aPz" = (/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge{name = "\improper Bridge Primary"})
|
||||
"aPA" = (/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge{name = "\improper Bridge Primary"})
|
||||
"aPB" = (/turf/space,/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fport{name = "\improper Security Solar Array"})
|
||||
"aPB" = (/turf/space,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fport{name = "\improper Security Solar Array"})
|
||||
"aPC" = (/turf/simulated/wall/r_wall,/area/bridge{name = "\improper Bridge Primary"})
|
||||
"aPD" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge{name = "\improper Bridge Primary"})
|
||||
"aPE" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/obj/structure/window/full/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "bridge blast"; name = "Bridge Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/bridge{name = "\improper Bridge Primary"})
|
||||
@@ -4587,7 +4587,7 @@
|
||||
"bKk" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/simulated/floor/plating/airless,/area/AIsattele)
|
||||
"bKl" = (/obj/structure/closet/crate,/obj/item/device/aicard,/obj/item/device/multitool,/turf/simulated/floor/plating/airless,/area/AIsattele)
|
||||
"bKm" = (/obj/structure/grille,/turf/space,/area)
|
||||
"bKn" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless,/area)
|
||||
"bKn" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating/airless,/area)
|
||||
"bKo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless,/area)
|
||||
"bKp" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating/airless,/area)
|
||||
"bKq" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless,/area)
|
||||
@@ -5825,7 +5825,7 @@
|
||||
"cia" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"cib" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"cic" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"cid" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"cid" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"cie" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/turf/simulated/floor/plating,/area/derelict/arrival)
|
||||
"cif" = (/obj/item/weapon/light/bulb,/turf/simulated/floor/plating,/area/derelict/arrival)
|
||||
"cig" = (/turf/simulated/floor{icon_state = "damaged3"; dir = 1},/area/derelict/arrival)
|
||||
|
||||
@@ -569,8 +569,8 @@
|
||||
"akW" = (/obj/machinery/newscaster{pixel_x = 32},/turf/simulated/floor{icon_state = "red"; dir = 6},/area/security/main)
|
||||
"akX" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fsmaint)
|
||||
"akY" = (/obj/structure/closet/emcloset,/obj/machinery/camera/xray{c_tag = "Security Escape Pod"},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
|
||||
"akZ" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fstarboard)
|
||||
"ala" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fport)
|
||||
"akZ" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fstarboard)
|
||||
"ala" = (/turf/space,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk2"},/area/solar/fport)
|
||||
"alb" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Brig Medbay Storage"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "white"},/area/security/medical)
|
||||
"alc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor,/area/security/brig)
|
||||
"ald" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/decal/warning_stripes{tag = "icon-warning (NORTH)"; icon_state = "warning"; dir = 1},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig)
|
||||
@@ -6742,7 +6742,7 @@
|
||||
"czH" = (/obj/machinery/camera{c_tag = "Xenobiology South"; dir = 8; network = list("RD"); pixel_y = -22},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor{icon_state = "white"},/area/science/xenobiology)
|
||||
"czI" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk3"},/area/solar/aport)
|
||||
"czJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating/airless,/area/maintenance/aportsolar)
|
||||
"czK" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk,/obj/machinery/power/solar/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk4"},/area/solar/aport)
|
||||
"czK" = (/turf/space,/turf/simulated/floor/plating/airless/catwalk,/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk4"},/area/solar/aport)
|
||||
"czL" = (/obj/machinery/power/apc{dir = 4; pixel_x = 24},/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1},/obj/structure/cable,/turf/simulated/floor/plating,/area/maintenance/aportsolar)
|
||||
"czM" = (/turf/simulated/wall/r_wall,/area/maintenance/aportsolar)
|
||||
"czN" = (/obj/structure/closet/wardrobe/black,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/aft)
|
||||
@@ -7191,7 +7191,7 @@
|
||||
"cIo" = (/obj/machinery/atmospherics/pipe/simple/filtering/hidden{dir = 4},/turf/simulated/wall,/area/maintenance/asmaint3)
|
||||
"cIp" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/filtering/hidden{dir = 4},/turf/simulated/floor/plating/airless/catwalk,/area)
|
||||
"cIq" = (/turf/space,/obj/machinery/atmospherics/pipe/simple/filtering/hidden{dir = 9},/turf/simulated/floor/plating/airless/catwalk,/area)
|
||||
"cIr" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/astarboard)
|
||||
"cIr" = (/turf/space,/obj/structure/cable,/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor/plating/airless/catwalk{icon_state = "catwalk1"},/area/solar/astarboard)
|
||||
"cIs" = (/obj/machinery/camera{c_tag = "Engine West"; dir = 4},/obj/machinery/power/terminal{dir = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/insulated/hidden{dir = 4},/obj/effect/decal/warning_stripes/pathmarkers/red{tag = "icon-pathmarker (WEST)"; icon_state = "pathmarker"; dir = 8},/obj/effect/decal/warning_stripes/pathmarkers/red{tag = "icon-pathmarker (EAST)"; icon_state = "pathmarker"; dir = 4},/turf/simulated/floor,/area/engineering/engine)
|
||||
"cIt" = (/obj/machinery/atmospherics/pipe/simple/insulated/hidden{dir = 4},/turf/simulated/wall/r_wall,/area/engineering/burn_chamber)
|
||||
"cIu" = (/obj/machinery/atmospherics/pipe/manifold/insulated/hidden{dir = 1},/turf/simulated/floor/engine{name = "vacuum floor"; nitrogen = 0.01; oxygen = 0.01},/area/engineering/burn_chamber)
|
||||
@@ -7323,7 +7323,7 @@
|
||||
"cKQ" = (/obj/effect/decal/warning_stripes{tag = "icon-warning_corner (WEST)"; icon_state = "warning_corner"; dir = 8},/turf/simulated/floor,/area/engineering/engine_storage)
|
||||
"cKR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating/airless/catwalk,/area/djstation/solars)
|
||||
"cKS" = (/obj/machinery/power/solar/panel{id_tag = "djstationsolar"; name = "DJ Station Solar Array"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cKT" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cKT" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar/panel/tracker,/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cKU" = (/obj/machinery/power/solar/panel{id_tag = "djstationsolar"; name = "DJ Station Solar Array"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor{icon_state = "solarpanel"},/area/djstation/solars)
|
||||
"cKV" = (/obj/machinery/atmospherics/portables_connector{dir = 4; name = "Cold Tap"},/obj/effect/decal/warning_stripes{icon_state = "bot"},/turf/simulated/floor,/area/engineering/burn_chamber)
|
||||
"cKW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/djstation)
|
||||
@@ -10027,7 +10027,7 @@
|
||||
"dKQ" = (/obj/machinery/power/terminal{dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
|
||||
"dKR" = (/turf/simulated/floor/plating/airless,/area/derelict/bridge/ai_upload)
|
||||
"dKS" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
|
||||
"dKT" = (/obj/machinery/power/solar/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dKT" = (/obj/machinery/power/solar/panel/tracker,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/airless,/area/solar/derelict_starboard)
|
||||
"dKU" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8; environ = 0; equipment = 0; lighting = 0; locked = 0; name = "Worn-out APC"; pixel_x = -24},/turf/simulated/floor/plating/airless,/area/derelict/bridge/ai_upload)
|
||||
"dKV" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'VACUUM'"; icon_state = "space"; layer = 4; name = "VACUUM"; pixel_x = -32; pixel_y = -32},/turf/unsimulated/floor/asteroid,/area/mine/explored)
|
||||
"dKW" = (/obj/machinery/light/small{dir = 4},/obj/item/clothing/head/helmet/space/syndicate,/turf/simulated/floor/airless,/area/derelict/bridge/ai_upload)
|
||||
|
||||
Reference in New Issue
Block a user