Merge branch 'master' of https://github.com/tgstation/tgstation into GG3
# Conflicts: # icons/obj/guns/projectile.dmi
@@ -1,7 +1,30 @@
|
||||
#ifndef ALL_MAPS
|
||||
|
||||
#include "map_files\generic\SpaceStation.dmm"
|
||||
#include "map_files\generic\Centcomm.dmm"
|
||||
#include "map_files\generic\Space.dmm"
|
||||
#include "map_files\generic\SpaceDock.dmm"
|
||||
#include "map_files\Mining\lavaland.dmm"
|
||||
|
||||
#else
|
||||
|
||||
#include "map_files\debug\runtimestation.dmm"
|
||||
#include "map_files\Deltastation\DeltaStation2.dmm"
|
||||
#include "map_files\MetaStation\MetaStation.dmm"
|
||||
#include "map_files\OmegaStation\OmegaStation.dmm"
|
||||
#include "map_files\PubbyStation\PubbyStation.dmm"
|
||||
#include "map_files\TgStation\tgstation.2.1.3.dmm"
|
||||
#include "map_files\Cerestation\cerestation.dmm"
|
||||
|
||||
#include "map_files\generic\Centcomm.dmm"
|
||||
#include "map_files\generic\SpaceStation.dmm"
|
||||
#include "map_files\generic\Space.dmm"
|
||||
#include "map_files\generic\SpaceDock.dmm"
|
||||
|
||||
#include "map_files\Mining\Lavaland.dmm"
|
||||
|
||||
#ifdef TRAVISBUILDING
|
||||
#include "templates.dm"
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -1,20 +0,0 @@
|
||||
#ifdef ALL_MAPS
|
||||
#include "map_files\debug\runtimestation.dmm"
|
||||
#include "map_files\Deltastation\DeltaStation2.dmm"
|
||||
#include "map_files\MetaStation\MetaStation.dmm"
|
||||
#include "map_files\OmegaStation\OmegaStation.dmm"
|
||||
#include "map_files\PubbyStation\PubbyStation.dmm"
|
||||
#include "map_files\TgStation\tgstation.2.1.3.dmm"
|
||||
#include "map_files\Cerestation\cerestation.dmm"
|
||||
|
||||
#include "map_files\generic\Centcomm.dmm"
|
||||
#include "map_files\generic\SpaceStation.dmm"
|
||||
#include "map_files\generic\Space.dmm"
|
||||
#include "map_files\generic\SpaceDock.dmm"
|
||||
|
||||
#include "map_files\Mining\Lavaland.dmm"
|
||||
|
||||
#ifdef TRAVISBUILDING
|
||||
#include "templates.dm"
|
||||
#endif
|
||||
#endif
|
||||
@@ -11573,9 +11573,7 @@
|
||||
"azq" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/closed/wall,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"azr" = (
|
||||
/obj/structure/grille/broken,
|
||||
/turf/open/floor/plating,
|
||||
@@ -11693,9 +11691,7 @@
|
||||
/area/ai_monitored/storage/eva)
|
||||
"azF" = (
|
||||
/turf/closed/wall,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"azG" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 9
|
||||
@@ -12096,15 +12092,11 @@
|
||||
icon_state = "0-8"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAx" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAy" = (
|
||||
/obj/machinery/power/smes{
|
||||
charge = 0
|
||||
@@ -12224,9 +12216,7 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAL" = (
|
||||
/obj/machinery/power/apc{
|
||||
dir = 2;
|
||||
@@ -12278,14 +12268,10 @@
|
||||
"aAP" = (
|
||||
/obj/machinery/hydroponics/soil,
|
||||
/turf/open/floor/grass,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAQ" = (
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAR" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -12305,23 +12291,17 @@
|
||||
pixel_y = 30
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAT" = (
|
||||
/obj/machinery/seed_extractor,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAU" = (
|
||||
/obj/structure/sink{
|
||||
pixel_y = 30
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aAV" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -12480,9 +12460,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aBn" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
|
||||
dir = 1
|
||||
@@ -12559,9 +12537,7 @@
|
||||
"aBv" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aBw" = (
|
||||
/obj/item/seeds/apple,
|
||||
/obj/item/seeds/banana,
|
||||
@@ -12577,9 +12553,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aBx" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 9
|
||||
@@ -12642,9 +12616,7 @@
|
||||
on = 1
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aBH" = (
|
||||
/obj/machinery/light{
|
||||
icon_state = "tube1";
|
||||
@@ -12683,9 +12655,7 @@
|
||||
"aBM" = (
|
||||
/obj/effect/landmark/start/assistant,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aBN" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/closed/wall,
|
||||
@@ -13237,9 +13207,7 @@
|
||||
scrub_Toxins = 0
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aDb" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/weapon/wirecutters,
|
||||
@@ -13295,9 +13263,7 @@
|
||||
"aDg" = (
|
||||
/obj/machinery/biogenerator,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aDh" = (
|
||||
/obj/machinery/vending/assist,
|
||||
/turf/open/floor/plasteel,
|
||||
@@ -14024,9 +13990,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 4
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aEG" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel/red/side{
|
||||
@@ -14068,9 +14032,7 @@
|
||||
req_access_txt = "0"
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aEM" = (
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/nuke_storage)
|
||||
@@ -14540,9 +14502,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 4
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aFO" = (
|
||||
/obj/machinery/camera{
|
||||
c_tag = "Garden";
|
||||
@@ -14555,17 +14515,13 @@
|
||||
pixel_x = 24
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aFP" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aFQ" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/cable_coil{
|
||||
@@ -15416,9 +15372,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 5
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aHA" = (
|
||||
/obj/item/weapon/reagent_containers/spray/plantbgone,
|
||||
/obj/item/weapon/reagent_containers/spray/pestspray{
|
||||
@@ -15437,9 +15391,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 9
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aHB" = (
|
||||
/obj/machinery/atmospherics/components/unary/vent_scrubber{
|
||||
dir = 1;
|
||||
@@ -16042,9 +15994,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 4
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aIT" = (
|
||||
/obj/item/weapon/storage/bag/plants/portaseeder,
|
||||
/obj/structure/table/glass,
|
||||
@@ -16062,9 +16012,7 @@
|
||||
/turf/open/floor/plasteel/green/side{
|
||||
dir = 8
|
||||
},
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aIU" = (
|
||||
/obj/machinery/navbeacon{
|
||||
codes_txt = "delivery;dir=8";
|
||||
@@ -16652,16 +16600,12 @@
|
||||
name = "Garden"
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aKn" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/fulltile,
|
||||
/turf/open/floor/plating,
|
||||
/area/hallway/secondary/construction{
|
||||
name = "\improper Garden"
|
||||
})
|
||||
/area/hydroponics/garden)
|
||||
"aKo" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel/neutral/side{
|
||||
@@ -20207,9 +20151,7 @@
|
||||
/area/shuttle/syndicate)
|
||||
"aTq" = (
|
||||
/turf/closed/wall,
|
||||
/area/security/vacantoffice{
|
||||
name = "Vacant Office A"
|
||||
})
|
||||
/area/security/vacantoffice/a)
|
||||
"aTr" = (
|
||||
/obj/machinery/door/firedoor,
|
||||
/obj/machinery/status_display{
|
||||
@@ -23749,9 +23691,7 @@
|
||||
d2 = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/security/vacantoffice{
|
||||
name = "Vacant Office A"
|
||||
})
|
||||
/area/security/vacantoffice/a)
|
||||
"bbJ" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/structure/cable{
|
||||
@@ -56908,14 +56848,10 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/yellow/visible,
|
||||
/obj/machinery/meter,
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"ctZ" = (
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cua" = (
|
||||
/turf/closed/wall,
|
||||
/area/ai_monitored/turret_protected/aisat_interior)
|
||||
@@ -56970,9 +56906,7 @@
|
||||
/area/ai_monitored/turret_protected/aisat_interior)
|
||||
"cuf" = (
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cug" = (
|
||||
/obj/machinery/ai_status_display{
|
||||
pixel_y = -32
|
||||
@@ -56989,15 +56923,11 @@
|
||||
/obj/item/weapon/crowbar/red,
|
||||
/obj/item/clothing/head/welding,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cui" = (
|
||||
/obj/machinery/atmospherics/components/unary/tank/air,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuj" = (
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/aisat_interior)
|
||||
@@ -57022,9 +56952,7 @@
|
||||
"cum" = (
|
||||
/obj/machinery/recharge_station,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cun" = (
|
||||
/obj/machinery/atmospherics/components/binary/pump{
|
||||
dir = 2;
|
||||
@@ -57034,9 +56962,7 @@
|
||||
/turf/open/floor/plating{
|
||||
icon_plating = "warnplate"
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuo" = (
|
||||
/obj/machinery/portable_atmospherics/canister/air,
|
||||
/obj/machinery/firealarm{
|
||||
@@ -57047,9 +56973,7 @@
|
||||
dir = 2
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cup" = (
|
||||
/obj/structure/showcase{
|
||||
density = 0;
|
||||
@@ -57069,9 +56993,7 @@
|
||||
/turf/open/floor/plating{
|
||||
icon_plating = "warnplate"
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuq" = (
|
||||
/obj/machinery/atmospherics/components/binary/pump{
|
||||
dir = 0;
|
||||
@@ -57082,9 +57004,7 @@
|
||||
/turf/open/floor/plating{
|
||||
icon_plating = "warnplate"
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cur" = (
|
||||
/obj/structure/showcase{
|
||||
density = 0;
|
||||
@@ -57163,17 +57083,13 @@
|
||||
/turf/open/floor/plating{
|
||||
icon_plating = "warnplate"
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuw" = (
|
||||
/obj/effect/turf_decal/stripes/line,
|
||||
/turf/open/floor/plating{
|
||||
icon_plating = "warnplate"
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cux" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/sheet/metal{
|
||||
@@ -57195,18 +57111,14 @@
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuy" = (
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/aisat_interior)
|
||||
"cuz" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuA" = (
|
||||
/obj/machinery/light/small{
|
||||
dir = 8
|
||||
@@ -57229,9 +57141,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuB" = (
|
||||
/obj/machinery/light/small{
|
||||
dir = 4
|
||||
@@ -57250,16 +57160,12 @@
|
||||
/turf/open/floor/plasteel/darkblue/corner{
|
||||
dir = 4
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuC" = (
|
||||
/obj/machinery/holopad,
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuD" = (
|
||||
/obj/machinery/light/small{
|
||||
dir = 8
|
||||
@@ -57340,9 +57246,7 @@
|
||||
/turf/open/floor/plasteel/darkblue/corner{
|
||||
dir = 1
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuI" = (
|
||||
/obj/machinery/atmospherics/components/unary/vent_scrubber{
|
||||
dir = 8;
|
||||
@@ -57350,18 +57254,14 @@
|
||||
scrub_Toxins = 0
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuJ" = (
|
||||
/obj/machinery/holopad,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuK" = (
|
||||
/obj/machinery/light/small{
|
||||
dir = 4
|
||||
@@ -57390,9 +57290,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuL" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57404,9 +57302,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuM" = (
|
||||
/obj/machinery/power/apc{
|
||||
dir = 8;
|
||||
@@ -57423,9 +57319,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuN" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57437,9 +57331,7 @@
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuO" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57452,9 +57344,7 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuP" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57531,9 +57421,7 @@
|
||||
dir = 10
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuU" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57559,9 +57447,7 @@
|
||||
pixel_y = 0
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuW" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 4;
|
||||
@@ -57578,9 +57464,7 @@
|
||||
icon_state = "2-8"
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuX" = (
|
||||
/obj/machinery/power/apc{
|
||||
dir = 4;
|
||||
@@ -57597,9 +57481,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cuY" = (
|
||||
/obj/machinery/porta_turret/ai{
|
||||
dir = 4
|
||||
@@ -57607,9 +57489,7 @@
|
||||
/turf/open/floor/plasteel/vault{
|
||||
dir = 8
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cuZ" = (
|
||||
/obj/machinery/atmospherics/components/unary/vent_pump{
|
||||
dir = 1;
|
||||
@@ -57617,9 +57497,7 @@
|
||||
},
|
||||
/mob/living/simple_animal/bot/floorbot,
|
||||
/turf/open/floor/plasteel/darkblue/corner,
|
||||
/area/ai_monitored/turret_protected/AIsatextAS{
|
||||
name = "AI Satellite Atmospherics"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/atmos)
|
||||
"cva" = (
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
@@ -57696,9 +57574,7 @@
|
||||
/turf/open/floor/plasteel/darkblue/corner{
|
||||
dir = 8
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cvh" = (
|
||||
/obj/machinery/porta_turret/ai{
|
||||
dir = 4
|
||||
@@ -57706,9 +57582,7 @@
|
||||
/turf/open/floor/plasteel/vault{
|
||||
dir = 8
|
||||
},
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cvi" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -57716,19 +57590,13 @@
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFP{
|
||||
name = "AI Satellite Service"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/service)
|
||||
"cvj" = (
|
||||
/turf/closed/wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvk" = (
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvl" = (
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
@@ -57739,15 +57607,11 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvn" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvo" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -57761,9 +57625,7 @@
|
||||
req_one_access_txt = "65"
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvp" = (
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
@@ -57778,9 +57640,7 @@
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvr" = (
|
||||
/obj/machinery/porta_turret/ai{
|
||||
dir = 4
|
||||
@@ -57790,30 +57650,22 @@
|
||||
"cvs" = (
|
||||
/obj/machinery/portable_atmospherics/scrubber,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvt" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvu" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvv" = (
|
||||
/turf/closed/wall,
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
"cvw" = (
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvx" = (
|
||||
/obj/effect/landmark/tripai,
|
||||
/obj/item/device/radio/intercom{
|
||||
@@ -57848,9 +57700,7 @@
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvz" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -57859,9 +57709,7 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvA" = (
|
||||
/obj/effect/landmark/tripai,
|
||||
/obj/item/device/radio/intercom{
|
||||
@@ -57896,9 +57744,7 @@
|
||||
/obj/item/weapon/crowbar/red,
|
||||
/obj/item/weapon/wrench,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvC" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -57906,21 +57752,15 @@
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvD" = (
|
||||
/obj/structure/reagent_dispensers/watertank,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvE" = (
|
||||
/obj/structure/reagent_dispensers/fueltank,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvF" = (
|
||||
/obj/structure/lattice,
|
||||
/obj/machinery/camera{
|
||||
@@ -57943,9 +57783,7 @@
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvH" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
@@ -57953,9 +57791,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvI" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -57970,9 +57806,7 @@
|
||||
scrub_Toxins = 0
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvJ" = (
|
||||
/obj/machinery/porta_turret/ai{
|
||||
dir = 4;
|
||||
@@ -57983,9 +57817,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvK" = (
|
||||
/obj/structure/lattice,
|
||||
/obj/machinery/camera{
|
||||
@@ -58005,9 +57837,7 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvM" = (
|
||||
/obj/machinery/camera/motion{
|
||||
c_tag = "MiniSat Core Hallway";
|
||||
@@ -58019,9 +57849,7 @@
|
||||
pixel_x = -24
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvN" = (
|
||||
/obj/structure/sign/securearea{
|
||||
pixel_x = -32;
|
||||
@@ -58033,9 +57861,7 @@
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvO" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
@@ -58051,17 +57877,13 @@
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvQ" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvR" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
@@ -58069,17 +57891,13 @@
|
||||
dir = 10
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvS" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvT" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -58089,9 +57907,7 @@
|
||||
/obj/machinery/holopad,
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvU" = (
|
||||
/obj/machinery/door/airlock/maintenance_hatch{
|
||||
name = "MiniSat Maintenance";
|
||||
@@ -58104,9 +57920,7 @@
|
||||
pixel_y = 0
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvV" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 2;
|
||||
@@ -58114,9 +57928,7 @@
|
||||
icon_state = "2-4"
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvW" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -58124,22 +57936,16 @@
|
||||
icon_state = "1-8"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvX" = (
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvY" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cvZ" = (
|
||||
/obj/machinery/airalarm{
|
||||
dir = 4;
|
||||
@@ -58147,9 +57953,7 @@
|
||||
pixel_y = 0
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwa" = (
|
||||
/obj/structure/cable,
|
||||
/obj/machinery/power/apc{
|
||||
@@ -58159,9 +57963,7 @@
|
||||
pixel_y = 0
|
||||
},
|
||||
/turf/open/floor/circuit,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwb" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
@@ -58169,9 +57971,7 @@
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwc" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -58184,9 +57984,7 @@
|
||||
on = 1
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwd" = (
|
||||
/obj/structure/cable{
|
||||
d1 = 1;
|
||||
@@ -58203,9 +58001,7 @@
|
||||
pixel_y = -29
|
||||
},
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwe" = (
|
||||
/obj/structure/sign/securearea,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
@@ -58318,9 +58114,7 @@
|
||||
"cwq" = (
|
||||
/obj/structure/grille,
|
||||
/turf/open/floor/plating,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cwr" = (
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/reinforced/fulltile,
|
||||
@@ -60716,9 +60510,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/obj/effect/landmark/event_spawn,
|
||||
/turf/open/floor/plasteel/black,
|
||||
/area/ai_monitored/turret_protected/AIsatextFS{
|
||||
name = "AI Satellite Hallway"
|
||||
})
|
||||
/area/ai_monitored/turret_protected/aisat/hallway)
|
||||
"cBT" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/light/small{
|
||||
|
||||
@@ -80,6 +80,15 @@
|
||||
#define AI_IDLE 2
|
||||
#define AI_OFF 3
|
||||
|
||||
#define ENVIRONMENT_SMASH_NONE 0
|
||||
|
||||
#define ENVIRONMENT_SMASH_STRUCTURES 1
|
||||
|
||||
#define ENVIRONMENT_SMASH_WALLS 2
|
||||
|
||||
#define ENVIRONMENT_SMASH_RWALLS 3
|
||||
|
||||
|
||||
//SNPCs
|
||||
//AI defines
|
||||
#define INTERACTING 2
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
}
|
||||
|
||||
// Subsystem init_order, from highest priority to lowest priority
|
||||
// Subsystems shutdown in the reverse of the order they initialize in
|
||||
// The numbers just define the ordering, they are meaningless otherwise.
|
||||
|
||||
#define INIT_ORDER_SERVER_MAINT 16
|
||||
@@ -70,4 +71,4 @@
|
||||
#define RUNLEVEL_GAME 4
|
||||
#define RUNLEVEL_POSTGAME 8
|
||||
|
||||
#define RUNLEVELS_DEFAULT (RUNLEVEL_SETUP | RUNLEVEL_GAME | RUNLEVEL_POSTGAME)
|
||||
#define RUNLEVELS_DEFAULT (RUNLEVEL_SETUP | RUNLEVEL_GAME | RUNLEVEL_POSTGAME)
|
||||
|
||||
@@ -723,7 +723,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
|
||||
//Irregular objects
|
||||
var/icon/AMicon = icon(AM.icon, AM.icon_state)
|
||||
var/icon/AMiconheight = AMicon.Height()
|
||||
var/icon/AMiconwidth = AMicon.Width()
|
||||
var/icon/AMiconwidth = AMicon.Width()
|
||||
if(AMiconheight != world.icon_size || AMiconwidth != world.icon_size)
|
||||
pixel_x_offset += ((AMicon.Width()/world.icon_size)-1)*(world.icon_size*0.5)
|
||||
pixel_y_offset += ((AMicon.Height()/world.icon_size)-1)*(world.icon_size*0.5)
|
||||
@@ -1415,25 +1415,4 @@ GLOBAL_PROTECT(valid_HTTPSGet)
|
||||
var/obj/item/organ/brain/brain = occupant
|
||||
mob_occupant = brain.brainmob
|
||||
|
||||
return mob_occupant
|
||||
|
||||
/proc/msglog_admins(text)
|
||||
message_admins(text)
|
||||
log_admin(text)
|
||||
|
||||
/proc/trigger_centcom_recall()
|
||||
if(SSshuttle.emergency.mode != SHUTTLE_CALL)
|
||||
return
|
||||
|
||||
var/time = rand(600, 1200)
|
||||
var/message = pick(GLOB.annoyed_admiral_messages)
|
||||
|
||||
message = input("Enter message from the on-call admiral to be put in the recall report.", "Annoyed Admiral Message", message) as text|null
|
||||
|
||||
if(!message)
|
||||
return
|
||||
|
||||
message_admins("[key_name_admin(usr)] triggered a Centcom recall in [time/10] seconds, with the annoyed admiral message of: [message]")
|
||||
log_game("[key_name(usr)] triggered a Centcom recall in [time/10] seconds, with the annoyed admiral message of: [message]")
|
||||
|
||||
addtimer(CALLBACK(SSshuttle, /datum/controller/subsystem/shuttle/.proc/centcom_recall, SSshuttle.emergency.timer, message), time)
|
||||
return mob_occupant
|
||||
@@ -162,4 +162,4 @@ GLOBAL_LIST_INIT(numbers_as_words, list("One", "Two", "Three", "Four",
|
||||
|
||||
GLOBAL_LIST_INIT(station_numerals, greek_letters + phonetic_alphabet + numbers_as_words + generate_number_strings())
|
||||
|
||||
GLOBAL_LIST_INIT(annoyed_admiral_messages, list("Do you know how expensive these stations are?","Stop wasting my time.","I was sleeping, thanks a lot.","Stand and fight you cowards!","You knew the risks coming in.","Stop being paranoid.","Whatever's broken just build a new one.","No.", "<i>null</i>","<i>Error: No comment given.</i>", "It's a good day to die!"))
|
||||
GLOBAL_LIST_INIT(admiral_messages, list("Do you know how expensive these stations are?","Stop wasting my time.","I was sleeping, thanks a lot.","Stand and fight you cowards!","You knew the risks coming in.","Stop being paranoid.","Whatever's broken just build a new one.","No.", "<i>null</i>","<i>Error: No comment given.</i>", "It's a good day to die!"))
|
||||
@@ -324,6 +324,8 @@
|
||||
ML.pulled(src)
|
||||
|
||||
/mob/living/carbon/human/CtrlClick(mob/user)
|
||||
if(world.time < user.next_click)
|
||||
return FALSE
|
||||
if(ishuman(user) && Adjacent(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
H.dna.species.grab(H, src, H.martial_art)
|
||||
|
||||
@@ -150,7 +150,7 @@ SUBSYSTEM_DEF(atoms)
|
||||
/datum/controller/subsystem/atoms/Shutdown()
|
||||
var/initlog = InitLog()
|
||||
if(initlog)
|
||||
text2file("[GLOB.log_directory]/initialize.log", initlog)
|
||||
text2file(initlog, "[GLOB.log_directory]/initialize.log")
|
||||
|
||||
#undef BAD_INIT_QDEL_BEFORE
|
||||
#undef BAD_INIT_DIDNT_INIT
|
||||
|
||||
@@ -61,7 +61,7 @@ SUBSYSTEM_DEF(garbage)
|
||||
for(var/path in sleptDestroy)
|
||||
dellog += "Path : [path] \n"
|
||||
dellog += "Sleeps : [sleptDestroy[path]] \n"
|
||||
text2file("[GLOB.log_directory]/qdel.log", dellog.Join())
|
||||
text2file(dellog.Join(), "[GLOB.log_directory]/qdel.log")
|
||||
|
||||
/datum/controller/subsystem/garbage/fire()
|
||||
HandleToBeQueued()
|
||||
|
||||
@@ -217,30 +217,25 @@ SUBSYSTEM_DEF(shuttle)
|
||||
log_game("[key_name(user)] has called the shuttle.")
|
||||
message_admins("[key_name_admin(user)] has called the shuttle. (<A HREF='?_src_=holder;trigger_centcom_recall=1'>TRIGGER CENTCOM RECALL</A>)")
|
||||
|
||||
/datum/controller/subsystem/shuttle/proc/centcom_recall(old_timer, annoyed_admiral_message)
|
||||
/datum/controller/subsystem/shuttle/proc/centcom_recall(old_timer, admiral_message)
|
||||
if(emergency.mode != SHUTTLE_CALL || emergency.timer != old_timer)
|
||||
return
|
||||
|
||||
emergency.cancel(/area/centcom)
|
||||
msglog_admins("Shuttle has been recalled from Centcom.")
|
||||
|
||||
addtimer(CALLBACK(src, .proc/centcom_recall2, annoyed_admiral_message), 50)
|
||||
|
||||
/datum/controller/subsystem/shuttle/proc/centcom_recall2(annoyed_admiral_message)
|
||||
if(!annoyed_admiral_message)
|
||||
annoyed_admiral_message = pick(GLOB.annoyed_admiral_messages)
|
||||
var/intercepttext = "<FONT size = 3><b>NanoTrasen Update</b>: Request For Shuttle.</FONT><HR>\
|
||||
To whom it may concern:<BR><BR>\
|
||||
if(!admiral_message)
|
||||
admiral_message = pick(GLOB.admiral_messages)
|
||||
var/intercepttext = "<font size = 3><b>NanoTrasen Update</b>: Request For Shuttle.</font><hr>\
|
||||
To whom it may concern:<br><br>\
|
||||
We have taken note of the situation upon [station_name()] and have come to the \
|
||||
conclusion that it does not warrant the abandonment of the station.<BR>\
|
||||
conclusion that it does not warrant the abandonment of the station.<br>\
|
||||
If you do not agree with our opinion we suggest that you open a direct \
|
||||
line with us and explain the nature of your crisis.<BR><BR>\
|
||||
line with us and explain the nature of your crisis.<br><br>\
|
||||
<i>This message has been automatically generated based upon readings from long \
|
||||
range diagnostic tools. To assure the quality of your request every finalized report \
|
||||
is reviewed by an on-call rear admiral.<BR>\
|
||||
is reviewed by an on-call rear admiral.<br>\
|
||||
<b>Rear Admiral's Notes:</b> \
|
||||
[annoyed_admiral_message]"
|
||||
print_command_report(intercepttext, announce=TRUE)
|
||||
[admiral_message]"
|
||||
print_command_report(intercepttext, announce = TRUE)
|
||||
|
||||
// Called when an emergency shuttle mobile docking port is
|
||||
// destroyed, which will only happen with admin intervention
|
||||
|
||||
@@ -117,6 +117,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/maintenance/atmos_control
|
||||
name = "Atmospherics Maintenance"
|
||||
icon_state = "fpmaint"
|
||||
|
||||
/area/maintenance/department/chapel
|
||||
name = "Chapel Maintenance"
|
||||
icon_state = "fpmaint"
|
||||
|
||||
/area/maintenance/department/chapel/monastery
|
||||
name = "Monastery Maintenance"
|
||||
icon_state = "fpmaint"
|
||||
|
||||
/area/maintenance/department/security
|
||||
name = "Security Maintenance"
|
||||
icon_state = "fpmaint"
|
||||
|
||||
/area/maintenance/department/security/brig
|
||||
name = "Brig Maintenance"
|
||||
icon_state = "fpmaint"
|
||||
|
||||
/area/maintenance/fpmaint
|
||||
name = "EVA Maintenance"
|
||||
@@ -161,6 +177,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/maintenance/maintcentral
|
||||
name = "Bridge Maintenance"
|
||||
icon_state = "maintcentral"
|
||||
|
||||
/area/maintenance/maintcentral/central
|
||||
name = "Central Maintenance"
|
||||
icon_state = "maintcentral"
|
||||
|
||||
/area/maintenance/fore
|
||||
name = "Fore Maintenance"
|
||||
@@ -169,6 +189,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/maintenance/starboard
|
||||
name = "Starboard Maintenance"
|
||||
icon_state = "smaint"
|
||||
|
||||
/area/maintenance/starboard/central
|
||||
name = "Central Starboard Maintenance"
|
||||
icon_state = "smaint"
|
||||
|
||||
/area/maintenance/starboard/aft_starboard_maintenance
|
||||
name = "Aft Starboard Maintenance"
|
||||
@@ -181,18 +205,98 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/maintenance/port
|
||||
name = "Locker Room Maintenance"
|
||||
icon_state = "pmaint"
|
||||
|
||||
/area/maintenance/port/central
|
||||
name = "Central Port Maintenance"
|
||||
icon_state = "pmaint"
|
||||
|
||||
/area/maintenance/aft
|
||||
name = "Engineering Maintenance"
|
||||
icon_state = "amaint"
|
||||
|
||||
/area/maintenance/aft/xeno_maint
|
||||
name = "Xenobiology Maintenance"
|
||||
icon_state = "xenomaint"
|
||||
|
||||
/area/maintenance/aft/Aft_Maintenance
|
||||
name = "Aft Maintenance"
|
||||
icon_state = "amaint"
|
||||
|
||||
/area/maintenance/asteroid/aft/science
|
||||
name = "Aft Maintenance"
|
||||
icon_state = "amaint"
|
||||
|
||||
/area/maintenance/asteroid/aft/arrivals
|
||||
name = "Aft Maintenance"
|
||||
icon_state = "amaint"
|
||||
|
||||
/area/maintenance/asteroid/central
|
||||
name = "Central Asteroid Maintenance"
|
||||
icon_state = "maintcentral"
|
||||
|
||||
/area/maintenance/asteroid/disposal/east
|
||||
name = "Eastern External Waste Belt"
|
||||
icon_state = "disposal"
|
||||
|
||||
/area/maintenance/asteroid/disposal/north
|
||||
name = "Northern External Waste Belt"
|
||||
icon_state = "disposal"
|
||||
|
||||
/area/maintenance/asteroid/disposal/southeast
|
||||
name = "South-Eastern Disposal"
|
||||
icon_state = "disposal"
|
||||
|
||||
/area/maintenance/asteroid/disposal/southwest
|
||||
name = "South-Western Disposal"
|
||||
icon_state = "disposal"
|
||||
|
||||
/area/maintenance/asteroid/fore/cargo_west
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/fore/cargo_south
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/fore/com_west
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/fore/com_north
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/fore/com_east
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/fore/com_south
|
||||
name = "Fore Asteroid Maintenance"
|
||||
icon_state = "fmaint"
|
||||
|
||||
/area/maintenance/asteroid/port/neast
|
||||
name = "Port Asteroid Maintenance"
|
||||
icon_state = "pmaint"
|
||||
|
||||
/area/maintenance/asteroid/port/east
|
||||
name = "Port Asteroid Maintenance"
|
||||
icon_state = "pmaint"
|
||||
|
||||
/area/maintenance/asteroid/port/west
|
||||
name = "Port Asteroid Maintenance"
|
||||
icon_state = "pmaint"
|
||||
|
||||
/area/maintenance/asteroid/starboard
|
||||
name = "Starboard Asteroid Maintenance"
|
||||
icon_state = "smaint"
|
||||
|
||||
/area/maintenance/storage
|
||||
name = "Atmospherics"
|
||||
icon_state = "green"
|
||||
|
||||
/area/maintenance/storage/tcom_storage
|
||||
name = "Telecoms Storage"
|
||||
icon_state = "green"
|
||||
|
||||
/area/maintenance/incinerator
|
||||
name = "Incinerator"
|
||||
@@ -216,7 +320,15 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/hallway/primary/starboard
|
||||
name = "Starboard Primary Hallway"
|
||||
icon_state = "hallS"
|
||||
|
||||
|
||||
/area/hallway/primary/starboard/aft
|
||||
name = "Starboard Quarter Primary Hallway"
|
||||
icon_state = "hallS"
|
||||
|
||||
/area/hallway/primary/starboard/fore
|
||||
name = "Starboard Bow Primary Hallway"
|
||||
icon_state = "hallS"
|
||||
|
||||
/area/hallway/primary/aft
|
||||
name = "Aft Primary Hallway"
|
||||
icon_state = "hallA"
|
||||
@@ -232,7 +344,51 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/hallway/secondary/exit
|
||||
name = "Escape Shuttle Hallway"
|
||||
icon_state = "escape"
|
||||
|
||||
/area/hallway/secondary/exit/departure_lounge
|
||||
name = "Departure Lounge"
|
||||
icon_state = "escape"
|
||||
|
||||
/area/hallway/secondary/bridges/cargo_ai
|
||||
name = "Cargo-AI-Command Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/com_engi
|
||||
name = "Command-Engineering Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/com_serv
|
||||
name = "Command-Service Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/dock_med
|
||||
name = "Docking-Medical Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/engi_med
|
||||
name = "Engineering-Medical Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/med_cargo
|
||||
name = "Medical-Cargo Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/sci_dock
|
||||
name = "Science-Docking Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/serv_engi
|
||||
name = "Service-Engineering Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/bridges/serv_sci
|
||||
name = "Service-Science Bridge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/hallway/secondary/command
|
||||
name = "Command Hallway"
|
||||
icon_state = "bridge"
|
||||
|
||||
/area/hallway/secondary/construction
|
||||
name = "Construction Area"
|
||||
icon_state = "construction"
|
||||
@@ -240,6 +396,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/hallway/secondary/entry
|
||||
name = "Arrival Shuttle Hallway"
|
||||
icon_state = "entry"
|
||||
|
||||
/area/hallway/secondary/service
|
||||
name = "Service Hallway"
|
||||
icon_state = "Sleep"
|
||||
|
||||
//Command
|
||||
|
||||
@@ -253,6 +413,16 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
icon_state = "meeting"
|
||||
music = null
|
||||
|
||||
/area/bridge/meeting_room/council
|
||||
name = "Council Chamber"
|
||||
icon_state = "meeting"
|
||||
music = null
|
||||
|
||||
/area/bridge/showroom/corporate
|
||||
name = "Corporate Showroom"
|
||||
icon_state = "showroom"
|
||||
music = null
|
||||
|
||||
/area/crew_quarters/captain
|
||||
name = "Captain's Office"
|
||||
icon_state = "captain"
|
||||
@@ -260,6 +430,14 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/captain/captains_quarters
|
||||
name = "Captain's Quarters"
|
||||
icon_state = "captain"
|
||||
|
||||
/area/crew_quarters/chief
|
||||
name = "Chief Engineer's Office"
|
||||
icon_state = "head_quarters"
|
||||
|
||||
/area/crew_quarters/chief/private
|
||||
name = "Chief Engineer's Private Quarters"
|
||||
icon_state = "head_quarters"
|
||||
|
||||
/area/crew_quarters/courtroom
|
||||
name = "Courtroom"
|
||||
@@ -272,9 +450,9 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/hor
|
||||
name = "Research Director's Office"
|
||||
icon_state = "head_quarters"
|
||||
|
||||
/area/crew_quarters/chief
|
||||
name = "Chief Engineer's Office"
|
||||
|
||||
/area/crew_quarters/hor/private
|
||||
name = "Research Director's Private Quarters"
|
||||
icon_state = "head_quarters"
|
||||
|
||||
/area/mint
|
||||
@@ -295,10 +473,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Dormitories"
|
||||
icon_state = "Sleep"
|
||||
safe = 1
|
||||
|
||||
|
||||
/area/crew_quarters/rehab_dome
|
||||
name = "Rehabilitation Dome"
|
||||
icon_state = "Sleep"
|
||||
|
||||
/area/crew_quarters/toilet
|
||||
name = "Dormitory Toilets"
|
||||
icon_state = "toilet"
|
||||
|
||||
/area/crew_quarters/toilet/auxiliary
|
||||
name = "Auxiliary Restrooms"
|
||||
icon_state = "toilet"
|
||||
|
||||
/area/crew_quarters/toilet/restrooms
|
||||
name = "Restrooms"
|
||||
icon_state = "toilet"
|
||||
|
||||
/area/crew_quarters/sleep
|
||||
name = "Dormitories"
|
||||
@@ -323,6 +513,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/locker
|
||||
name = "Locker Room"
|
||||
icon_state = "locker"
|
||||
|
||||
/area/crew_quarters/lounge
|
||||
name = "Lounge"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/crew_quarters/locker/locker_toilet
|
||||
name = "Locker Toilets"
|
||||
@@ -331,14 +525,26 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/fitness
|
||||
name = "Fitness Room"
|
||||
icon_state = "fitness"
|
||||
|
||||
/area/crew_quarters/fitness/recreation
|
||||
name = "Recreation Area"
|
||||
icon_state = "fitness"
|
||||
|
||||
/area/crew_quarters/cafeteria
|
||||
name = "Cafeteria"
|
||||
icon_state = "cafeteria"
|
||||
|
||||
/area/crew_quarters/cafeteria/lunchroom
|
||||
name = "Lunchroom"
|
||||
icon_state = "cafeteria"
|
||||
|
||||
/area/crew_quarters/kitchen
|
||||
name = "Kitchen"
|
||||
icon_state = "kitchen"
|
||||
|
||||
/area/crew_quarters/kitchen/backroom
|
||||
name = "Kitchen Coldroom"
|
||||
icon_state = "kitchen"
|
||||
|
||||
/area/crew_quarters/bar
|
||||
name = "Bar"
|
||||
@@ -359,11 +565,19 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/crew_quarters/theatre
|
||||
name = "Theatre"
|
||||
icon_state = "Theatre"
|
||||
|
||||
/area/crew_quarters/theatre/abandoned
|
||||
name = "Abandoned Theatre"
|
||||
icon_state = "Theatre"
|
||||
|
||||
/area/library
|
||||
name = "Library"
|
||||
icon_state = "library"
|
||||
flags = NONE
|
||||
|
||||
/area/library/lounge
|
||||
name = "Library Lounge"
|
||||
icon_state = "library"
|
||||
|
||||
/area/library/abandoned_library
|
||||
name = "Abandoned Library"
|
||||
@@ -377,6 +591,9 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
|
||||
/area/chapel/main
|
||||
name = "Chapel"
|
||||
|
||||
/area/chapel/main/monastery
|
||||
name = "Monastery"
|
||||
|
||||
/area/chapel/office
|
||||
name = "Chapel Office"
|
||||
@@ -399,6 +616,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Engineering"
|
||||
icon_state = "engine"
|
||||
|
||||
/area/engine/atmospherics_engine
|
||||
name = "Atmospherics Engine"
|
||||
icon_state = "blue"
|
||||
|
||||
/area/engine/break_room
|
||||
name = "Engineering Foyer"
|
||||
icon_state = "engine"
|
||||
@@ -407,13 +628,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Chief Engineer's office"
|
||||
icon_state = "engine_control"
|
||||
|
||||
/area/engine/secure_construction
|
||||
name = "Secure Construction Area"
|
||||
icon_state = "engine"
|
||||
|
||||
/area/engine/gravity_generator
|
||||
name = "Gravity Generator Room"
|
||||
icon_state = "blue"
|
||||
|
||||
/area/engine/secure_construction
|
||||
name = "Secure Construction Area"
|
||||
icon_state = "engine"
|
||||
|
||||
/area/engine/storage
|
||||
name = "Engineering Storage"
|
||||
icon_state = "engine"
|
||||
|
||||
/area/engine/transit_tube
|
||||
name = "Transit Tube"
|
||||
icon_state = "engine"
|
||||
|
||||
|
||||
//Solars
|
||||
|
||||
@@ -424,30 +654,110 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
blob_allowed = FALSE
|
||||
flags = NONE
|
||||
|
||||
/area/solar/asteroid/aft
|
||||
name = "Aft Asteroid Solar"
|
||||
icon_state = "panelsA"
|
||||
|
||||
/area/solar/asteroid/command
|
||||
name = "Command Asteroid Solar"
|
||||
icon_state = "panelsA"
|
||||
|
||||
/area/solar/asteroid/fore
|
||||
name = "Fore Asteroid Solar"
|
||||
icon_state = "panelsA"
|
||||
|
||||
/area/solar/auxport
|
||||
name = "Fore Port Solar Array"
|
||||
icon_state = "panelsA"
|
||||
name = "Fore Port Solar Array"
|
||||
icon_state = "panelsA"
|
||||
|
||||
/area/solar/auxstarboard
|
||||
name = "Fore Starboard Solar Array"
|
||||
icon_state = "panelsA"
|
||||
name = "Fore Starboard Solar Array"
|
||||
icon_state = "panelsA"
|
||||
|
||||
/area/solar/fore
|
||||
name = "Fore Solar Array"
|
||||
icon_state = "yellow"
|
||||
name = "Fore Solar Array"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/solar/aft
|
||||
name = "Aft Solar Array"
|
||||
icon_state = "aft"
|
||||
name = "Aft Solar Array"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/solar/starboard
|
||||
name = "Aft Starboard Solar Array"
|
||||
icon_state = "panelsS"
|
||||
name = "Aft Starboard Solar Array"
|
||||
icon_state = "panelsS"
|
||||
|
||||
/area/solar/starboard/starboard
|
||||
name = "Starboard Solar Array"
|
||||
icon_state = "panelsS"
|
||||
|
||||
/area/solar/starboard/aft
|
||||
name = "Starboard Quarter Solar Array"
|
||||
icon_state = "panelsS"
|
||||
|
||||
/area/solar/starboard/fore
|
||||
name = "Starboard Bow Solar Array"
|
||||
icon_state = "panelsS"
|
||||
|
||||
/area/solar/port
|
||||
name = "Aft Port Solar Array"
|
||||
icon_state = "panelsP"
|
||||
name = "Aft Port Solar Array"
|
||||
icon_state = "panelsP"
|
||||
|
||||
/area/solar/port/port
|
||||
name = "Port Solar Array"
|
||||
icon_state = "panelsP"
|
||||
|
||||
/area/solar/port/aft
|
||||
name = "Port Quarter Solar Array"
|
||||
icon_state = "panelsP"
|
||||
|
||||
/area/solar/port/fore
|
||||
name = "Port Bow Solar Array"
|
||||
icon_state = "panelsP"
|
||||
|
||||
/area/maintenance/solars
|
||||
name = "Solar Maintenance"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/maintenance/solars/port
|
||||
name = "Port Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/asteroid/aft
|
||||
name = "Aft Asteroid Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/asteroid/command
|
||||
name = "Command Asteroid Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/asteroid/fore
|
||||
name = "Fore Asteroid Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/port/aft
|
||||
name = "Starboard Quarter Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/port/fore
|
||||
name = "Starboard Bow Solar Maintenance"
|
||||
icon_state = "SolarcontrolP"
|
||||
|
||||
/area/maintenance/solars/starboard
|
||||
name = "Starboard Solar Maintenance"
|
||||
icon_state = "SolarcontrolS"
|
||||
|
||||
|
||||
/area/maintenance/solars/starboard/aft
|
||||
name = "Starboard Quarter Solar Maintenance"
|
||||
icon_state = "SolarcontrolS"
|
||||
|
||||
/area/maintenance/solars/starboard/fore
|
||||
name = "Starboard Bow Solar Maintenance"
|
||||
icon_state = "SolarcontrolS"
|
||||
|
||||
|
||||
|
||||
|
||||
/area/maintenance/auxsolarport
|
||||
name = "Fore Port Solar Maintenance"
|
||||
icon_state = "SolarcontrolA"
|
||||
@@ -490,6 +800,26 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Teleporter Room"
|
||||
icon_state = "teleporter"
|
||||
music = "signal"
|
||||
|
||||
/area/teleporter/quantum/cargo
|
||||
name = "Cargo Quantum Pad"
|
||||
icon_state = "teleporter"
|
||||
music = "signal"
|
||||
|
||||
/area/teleporter/quantum/docking
|
||||
name = "Docking Quantum Pad"
|
||||
icon_state = "teleporter"
|
||||
music = "signal"
|
||||
|
||||
/area/teleporter/quantum/research
|
||||
name = "Research Quantum Pad"
|
||||
icon_state = "teleporter"
|
||||
music = "signal"
|
||||
|
||||
/area/teleporter/quantum/security
|
||||
name = "Security Quantum Pad"
|
||||
icon_state = "teleporter"
|
||||
music = "signal"
|
||||
|
||||
/area/gateway
|
||||
name = "Gateway"
|
||||
@@ -528,6 +858,11 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Medbay"
|
||||
icon_state = "medbay3"
|
||||
music = 'sound/ambience/signal.ogg'
|
||||
|
||||
/area/medical/medbay3/aft
|
||||
name = "Medbay Aft"
|
||||
icon_state = "medbay3"
|
||||
music = 'sound/ambience/signal.ogg'
|
||||
|
||||
/area/medical/abandoned_medbay
|
||||
name = "Abandoned Medbay"
|
||||
@@ -537,10 +872,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/medical/patients_rooms
|
||||
name = "Patients' Rooms"
|
||||
icon_state = "patients"
|
||||
|
||||
/area/medical/patients_rooms/room_a
|
||||
name = "Patient Room A"
|
||||
icon_state = "patients"
|
||||
|
||||
/area/medical/patients_rooms/room_b
|
||||
name = "Patient Room B"
|
||||
icon_state = "patients"
|
||||
|
||||
/area/medical/cmo
|
||||
name = "Chief Medical Officer's office"
|
||||
icon_state = "CMO"
|
||||
|
||||
/area/medical/cmo/private
|
||||
name = "Chief Medical Officer's Private Quarters"
|
||||
icon_state = "CMO"
|
||||
|
||||
/area/medical/robotics
|
||||
name = "Robotics"
|
||||
@@ -613,6 +960,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/processing
|
||||
name = "Labor Shuttle Dock"
|
||||
icon_state = "sec_prison"
|
||||
|
||||
/area/security/processing/cremation
|
||||
name = "Security Crematorium"
|
||||
icon_state = "sec_prison"
|
||||
|
||||
/area/security/warden
|
||||
name = "Brig Control"
|
||||
@@ -625,6 +976,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/hos
|
||||
name = "Head of Security's Office"
|
||||
icon_state = "sec_hos"
|
||||
|
||||
/area/security/hos/private
|
||||
name = "Head of Security's Private Quarters"
|
||||
icon_state = "sec_hos"
|
||||
|
||||
/area/security/detectives_office
|
||||
name = "Detective's Office"
|
||||
@@ -644,7 +999,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Transfer Centre"
|
||||
icon_state = "armory"
|
||||
|
||||
|
||||
/area/security/nuke_storage
|
||||
name = "Vault"
|
||||
icon_state = "nuke_storage"
|
||||
@@ -676,10 +1030,26 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/checkpoint/science
|
||||
name = "Security Post - Science"
|
||||
icon_state = "checkpoint1"
|
||||
|
||||
/area/security/checkpoint/science/research
|
||||
name = "Security Post - Research Division"
|
||||
icon_state = "checkpoint1"
|
||||
|
||||
/area/security/checkpoint/customs
|
||||
name = "Customs"
|
||||
icon_state = "bridge"
|
||||
|
||||
/area/security/vacantoffice
|
||||
name = "Vacant Office"
|
||||
icon_state = "security"
|
||||
|
||||
/area/security/vacantoffice/a
|
||||
name = "Vacant Office A"
|
||||
icon_state = "security"
|
||||
|
||||
/area/security/vacantoffice/b
|
||||
name = "Vacant Office B"
|
||||
icon_state = "security"
|
||||
|
||||
/area/security/vacantoffice2
|
||||
name = "Vacant Office B"
|
||||
@@ -713,9 +1083,17 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Quartermaster's Office"
|
||||
icon_state = "quart"
|
||||
|
||||
/area/quartermaster/qm/private
|
||||
name = "Quartermaster's Private Quarters"
|
||||
icon_state = "quart"
|
||||
|
||||
/area/quartermaster/miningdock
|
||||
name = "Mining Dock"
|
||||
icon_state = "mining"
|
||||
|
||||
/area/quartermaster/miningdock/abandoned
|
||||
name = "Abandoned Mining Dock"
|
||||
icon_state = "mining"
|
||||
|
||||
/area/quartermaster/miningoffice
|
||||
name = "Mining Office"
|
||||
@@ -738,9 +1116,17 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
name = "Hydroponics"
|
||||
icon_state = "hydro"
|
||||
|
||||
/area/hydroponics/Abandoned_Garden
|
||||
/area/hydroponics/garden/abandoned
|
||||
name = "Abandoned Garden"
|
||||
icon_state = "hydro"
|
||||
|
||||
/area/hydroponics/garden/monastery
|
||||
name = "Monastery Garden"
|
||||
icon_state = "hydro"
|
||||
|
||||
/area/hydroponics/garden
|
||||
name = "Garden"
|
||||
icon_state = "hydro"
|
||||
|
||||
//Toxins
|
||||
|
||||
@@ -772,7 +1158,11 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/toxins/misc_lab
|
||||
name = "Testing Lab"
|
||||
icon_state = "toxmisc"
|
||||
|
||||
|
||||
/area/toxins/misc_lab/range
|
||||
name = "Research Testing Range"
|
||||
icon_state = "toxmisc"
|
||||
|
||||
/area/toxins/server
|
||||
name = "Research Division Server Room"
|
||||
icon_state = "server"
|
||||
@@ -842,6 +1232,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/mining_construction
|
||||
name = "Auxillary Base Construction"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/mining_construction/closet
|
||||
name = "Auxiliary Closet Construction"
|
||||
icon_state = "yellow"
|
||||
|
||||
/area/construction/supplyshuttle
|
||||
name = "Supply Shuttle"
|
||||
@@ -911,6 +1305,22 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/ai_monitored/turret_protected/aisat
|
||||
name = "AI Satellite"
|
||||
icon_state = "ai"
|
||||
|
||||
/area/ai_monitored/turret_protected/aisat/atmos
|
||||
name = "AI Satellite Atmos"
|
||||
icon_state = "ai"
|
||||
|
||||
/area/ai_monitored/turret_protected/aisat/atmos
|
||||
name = "AI Satellite Atmos"
|
||||
icon_state = "ai"
|
||||
|
||||
/area/ai_monitored/turret_protected/aisat/service
|
||||
name = "AI Satellite Service"
|
||||
icon_state = "ai"
|
||||
|
||||
/area/ai_monitored/turret_protected/aisat/hallway
|
||||
name = "AI Satellite Hallway"
|
||||
icon_state = "ai"
|
||||
|
||||
/area/aisat
|
||||
name = "AI Satellite Exterior"
|
||||
|
||||
@@ -57,13 +57,13 @@
|
||||
name = "Mining Station Communications"
|
||||
|
||||
/area/mine/cafeteria
|
||||
name = "Mining station Cafeteria"
|
||||
name = "Mining Station Cafeteria"
|
||||
|
||||
/area/mine/hydroponics
|
||||
name = "Mining station Hydroponics"
|
||||
name = "Mining Station Hydroponics"
|
||||
|
||||
/area/mine/sleeper
|
||||
name = "Mining station Emergency Sleeper"
|
||||
name = "Mining Station Emergency Sleeper"
|
||||
|
||||
/area/mine/north_outpost
|
||||
name = "North Mining Outpost"
|
||||
|
||||
@@ -115,6 +115,10 @@
|
||||
/area/prison/solitary
|
||||
name = "Solitary Confinement"
|
||||
icon_state = "brig"
|
||||
|
||||
/area/prison/execution_room
|
||||
name = "Prisoner Education Chamber"
|
||||
icon_state = "armory"
|
||||
|
||||
/area/prison/cell_block/A
|
||||
name = "Prison Cell Block A"
|
||||
|
||||
@@ -142,14 +142,14 @@
|
||||
/obj/item/weapon/antag_spawner/nuke_ops/proc/check_usability(mob/user)
|
||||
if(used)
|
||||
to_chat(user, "<span class='warning'>[src] is out of power!</span>")
|
||||
return 0
|
||||
return FALSE
|
||||
if(!(user.mind in SSticker.mode.syndicates))
|
||||
to_chat(user, "<span class='danger'>AUTHENTICATION FAILURE. ACCESS DENIED.</span>")
|
||||
return 0
|
||||
return FALSE
|
||||
if(user.z != ZLEVEL_CENTCOM)
|
||||
to_chat(user, "<span class='warning'>[src] is out of range! It can only be used at your base!</span>")
|
||||
return 0
|
||||
return 1
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
|
||||
/obj/item/weapon/antag_spawner/nuke_ops/attack_self(mob/user)
|
||||
@@ -157,11 +157,11 @@
|
||||
return
|
||||
|
||||
to_chat(user, "<span class='notice'>You activate [src] and wait for confirmation.</span>")
|
||||
var/list/nuke_candidates = pollCandidatesForMob("Do you want to play as a syndicate [borg_to_spawn ? "[lowertext(borg_to_spawn)] cyborg":"operative"]?", ROLE_OPERATIVE, null, ROLE_OPERATIVE, 150, POLL_IGNORE_SYNDICATE, src)
|
||||
var/list/nuke_candidates = pollGhostCandidates("Do you want to play as a syndicate [borg_to_spawn ? "[lowertext(borg_to_spawn)] cyborg":"operative"]?", ROLE_OPERATIVE, null, ROLE_OPERATIVE, 150, POLL_IGNORE_SYNDICATE)
|
||||
if(nuke_candidates.len)
|
||||
if(!(check_usability(user)))
|
||||
return
|
||||
used = 1
|
||||
used = TRUE
|
||||
var/mob/dead/observer/theghost = pick(nuke_candidates)
|
||||
spawn_antag(theghost.client, get_turf(src), "syndieborg")
|
||||
do_sparks(4, TRUE, src)
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
melee_damage_lower = 2
|
||||
melee_damage_upper = 4
|
||||
obj_damage = 20
|
||||
environment_smash = 1
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
attacktext = "hits"
|
||||
attack_sound = 'sound/weapons/genhit1.ogg'
|
||||
movement_type = FLYING
|
||||
|
||||
@@ -298,4 +298,5 @@
|
||||
if(GLOB.blood_target)
|
||||
to_chat(B.current,"<span class='cultlarge'><b>The blood mark has expired!</b></span>")
|
||||
B.current.client.images -= GLOB.blood_target_image
|
||||
QDEL_NULL(GLOB.blood_target)
|
||||
QDEL_NULL(GLOB.blood_target_image)
|
||||
GLOB.blood_target = null
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
if(is_blocked_turf(target, TRUE))
|
||||
to_chat(user, "<span class='warning'>The target rune is blocked. Attempting to teleport to it would be massively unwise.</span>")
|
||||
return ..(user, 0)
|
||||
user.visible_message("<span class='warning'>Dust flows from [user]'s hand, and [user.p_they()] disappear with a sharp crack!</span>", \
|
||||
user.visible_message("<span class='warning'>Dust flows from [user]'s hand, and [user.p_they()] disappear[user.p_s()] with a sharp crack!</span>", \
|
||||
"<span class='cultitalic'>You speak the words of the talisman and find yourself somewhere else!</span>", "<i>You hear a sharp crack.</i>")
|
||||
user.forceMove(target)
|
||||
target.visible_message("<span class='warning'>There is a boom of outrushing air as something appears above the rune!</span>", null, "<i>You hear a boom.</i>")
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
maxHealth = 200
|
||||
health = 200
|
||||
healable = 0
|
||||
environment_smash = 1
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
obj_damage = 40
|
||||
melee_damage_lower = 10
|
||||
melee_damage_upper = 15
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0)
|
||||
hud_possible = list(ANTAG_HUD, DIAG_STAT_HUD, DIAG_HUD)
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
attacktext = "shocks"
|
||||
attack_sound = 'sound/effects/EMPulse.ogg'
|
||||
friendly = "pinches"
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
maxHealth = 200
|
||||
health = 200
|
||||
healable = 0
|
||||
environment_smash = 1
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
obj_damage = 50
|
||||
melee_damage_lower = 30
|
||||
melee_damage_upper = 30
|
||||
|
||||
@@ -207,9 +207,3 @@
|
||||
var/obj/item/clothing/suit/space/hardsuit/C = wear_suit
|
||||
J = C.jetpack
|
||||
return J
|
||||
|
||||
/mob/has_gravity(turf/T)
|
||||
var/obj/item/weapon/tank/jetpack/J = get_jetpack()
|
||||
if(J && J.on)
|
||||
return FALSE
|
||||
return ..()
|
||||
@@ -105,7 +105,7 @@
|
||||
new /obj/item/device/flashlight/seclite(src)
|
||||
new /obj/item/clothing/gloves/krav_maga/sec(src)
|
||||
new /obj/item/weapon/door_remote/head_of_security(src)
|
||||
new /obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube(src)
|
||||
new /obj/item/weapon/gun/ballistic/shotgun/automatic/combat/compact(src)
|
||||
|
||||
/obj/structure/closet/secure_closet/security
|
||||
name = "security officer's locker"
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
if(!check_rights(R_ADMIN))
|
||||
return
|
||||
|
||||
trigger_centcom_recall()
|
||||
usr.client.trigger_centcom_recall()
|
||||
|
||||
else if(href_list["toggle_continuous"])
|
||||
if(!check_rights(R_ADMIN))
|
||||
|
||||
@@ -1193,3 +1193,16 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
|
||||
message_admins(msg)
|
||||
admin_ticket_log(target, msg)
|
||||
log_admin("[key_name(usr)] punished [key_name(target)] with [punishment].")
|
||||
|
||||
|
||||
/client/proc/trigger_centcom_recall()
|
||||
if(!holder)
|
||||
return
|
||||
var/message = pick(GLOB.admiral_messages)
|
||||
message = input("Enter message from the on-call admiral to be put in the recall report.", "Admiral Message", message) as text|null
|
||||
|
||||
if(!message)
|
||||
return
|
||||
|
||||
message_admins("[key_name_admin(usr)] triggered a Centcom recall, with the admiral message of: [message]")
|
||||
log_game("[key_name(usr)] triggered a Centcom recall, with the message of: [message]")
|
||||
@@ -76,7 +76,6 @@
|
||||
/datum/gas_reaction/freon/react(datum/gas_mixture/air, turf/open/location)
|
||||
. = NO_REACTION
|
||||
if(location && location.freon_gas_act())
|
||||
air.gases["freon"][MOLES] -= MOLES_PLASMA_VISIBLE
|
||||
. = REACTING
|
||||
|
||||
//water vapor: puts out fires?
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
/obj/machinery/meter/Initialize(mapload)
|
||||
. = ..()
|
||||
SSair.atmos_machinery += src
|
||||
if (mapload && !target)
|
||||
if (!target)
|
||||
target = locate(/obj/machinery/atmospherics/pipe) in loc
|
||||
|
||||
/obj/machinery/meter/Destroy()
|
||||
|
||||
@@ -300,31 +300,47 @@
|
||||
//Door
|
||||
/obj/machinery/door/airlock/survival_pod
|
||||
name = "airlock"
|
||||
icon = 'icons/obj/doors/airlocks/survival/horizontal/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/horizontal/survival_overlays.dmi'
|
||||
icon = 'icons/obj/doors/airlocks/survival/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/survival_overlays.dmi'
|
||||
assemblytype = /obj/structure/door_assembly/door_assembly_pod
|
||||
opacity = 0
|
||||
glass = 1
|
||||
var/expected_dir = SOUTH //we visually turn when shuttle rotated, but need to not turn for any other reason
|
||||
|
||||
/obj/machinery/door/airlock/survival_pod/setDir(direction)
|
||||
direction = expected_dir
|
||||
..()
|
||||
|
||||
/obj/machinery/door/airlock/survival_pod/shuttleRotate(rotation)
|
||||
expected_dir = angle2dir(rotation+dir2angle(dir))
|
||||
..()
|
||||
|
||||
/obj/machinery/door/airlock/survival_pod/vertical
|
||||
icon = 'icons/obj/doors/airlocks/survival/vertical/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/vertical/survival_overlays.dmi'
|
||||
assemblytype = /obj/structure/door_assembly/door_assembly_pod/vertical
|
||||
dir = EAST
|
||||
expected_dir = EAST
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_pod
|
||||
name = "pod airlock assembly"
|
||||
icon = 'icons/obj/doors/airlocks/survival/horizontal/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/horizontal/survival_overlays.dmi'
|
||||
icon = 'icons/obj/doors/airlocks/survival/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/survival_overlays.dmi'
|
||||
airlock_type = /obj/machinery/door/airlock/survival_pod
|
||||
anchored = 1
|
||||
state = 1
|
||||
mineral = "glass"
|
||||
material = "glass"
|
||||
var/expected_dir = SOUTH
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_pod/setDir(direction)
|
||||
direction = expected_dir
|
||||
..()
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_pod/shuttleRotate(rotation)
|
||||
expected_dir = angle2dir(rotation+dir2angle(dir))
|
||||
..()
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_pod/vertical
|
||||
icon = 'icons/obj/doors/airlocks/survival/vertical/survival.dmi'
|
||||
overlays_file = 'icons/obj/doors/airlocks/survival/vertical/survival_overlays.dmi'
|
||||
airlock_type = /obj/machinery/door/airlock/survival_pod/vertical
|
||||
dir = EAST
|
||||
expected_dir = EAST
|
||||
|
||||
//Table
|
||||
/obj/structure/table/survival_pod
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 15
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
check_friendly_fire = 1
|
||||
stop_automated_movement_when_pulled = 1
|
||||
attacktext = "drills"
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
maxHealth = 100
|
||||
damage_coeff = list(BRUTE = 0.5, BURN = 0.7, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0)
|
||||
obj_damage = 60
|
||||
environment_smash = 2 //Walls can't stop THE LAW
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS //Walls can't stop THE LAW
|
||||
mob_size = MOB_SIZE_LARGE
|
||||
|
||||
radio_key = /obj/item/device/encryptionkey/headset_sec
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
melee_damage_upper = 30
|
||||
attacktext = "smashes their armored gauntlet into"
|
||||
speed = 3
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
attack_sound = 'sound/weapons/punch3.ogg'
|
||||
status_flags = 0
|
||||
mob_size = MOB_SIZE_LARGE
|
||||
@@ -126,7 +126,7 @@
|
||||
|
||||
/mob/living/simple_animal/hostile/construct/armored/hostile //actually hostile, will move around, hit things
|
||||
AIStatus = AI_ON
|
||||
environment_smash = 1 //only token destruction, don't smash the cult wall NO STOP
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES //only token destruction, don't smash the cult wall NO STOP
|
||||
|
||||
/mob/living/simple_animal/hostile/construct/armored/bullet_act(obj/item/projectile/P)
|
||||
if(istype(P, /obj/item/projectile/energy) || istype(P, /obj/item/projectile/beam))
|
||||
@@ -218,7 +218,7 @@
|
||||
retreat_distance = 10
|
||||
minimum_distance = 10 //AI artificers will flee like fuck
|
||||
attacktext = "rams"
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
attack_sound = 'sound/weapons/punch2.ogg'
|
||||
construct_spells = list(/obj/effect/proc_holder/spell/aoe_turf/conjure/wall,
|
||||
/obj/effect/proc_holder/spell/aoe_turf/conjure/floor,
|
||||
@@ -272,7 +272,7 @@
|
||||
|
||||
/mob/living/simple_animal/hostile/construct/builder/hostile //actually hostile, will move around, hit things, heal other constructs
|
||||
AIStatus = AI_ON
|
||||
environment_smash = 1 //only token destruction, don't smash the cult wall NO STOP
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES //only token destruction, don't smash the cult wall NO STOP
|
||||
|
||||
/////////////////////////////Non-cult Artificer/////////////////////////
|
||||
/mob/living/simple_animal/hostile/construct/builder/noncult
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
var/laws = \
|
||||
"1. You may not involve yourself in the matters of another being, even if such matters conflict with Law Two or Law Three, unless the other being is another Drone.\n"+\
|
||||
"2. You may not harm any being, regardless of intent or circumstance.\n"+\
|
||||
"3. Your goals are to build, maintain, repair, improve, and power the station to the best of your abilities, You must never actively work against these goals."
|
||||
"3. Your goals are to build, maintain, repair, improve, and provide power to the best of your abilities, You must never actively work against these goals."
|
||||
var/light_on = 0
|
||||
var/heavy_emp_damage = 25 //Amount of damage sustained if hit by a heavy EMP pulse
|
||||
var/alarms = list("Atmosphere" = list(), "Fire" = list(), "Power" = list())
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
maxHealth = 40
|
||||
melee_damage_lower = 1
|
||||
melee_damage_upper = 2
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
stop_automated_movement_when_pulled = 1
|
||||
blood_volume = BLOOD_VOLUME_NORMAL
|
||||
var/obj/item/udder/udder = null
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
gold_core_spawnable = 2
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
var/list/edibles = list(/mob/living/simple_animal/butterfly,/mob/living/simple_animal/cockroach) //list of atoms, however turfs won't affect AI, but will affect consumption.
|
||||
|
||||
/mob/living/simple_animal/hostile/lizard/CanAttack(atom/the_target)//Can we actually attack a possible target?
|
||||
|
||||
@@ -31,7 +31,7 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians
|
||||
health = INFINITY
|
||||
healable = FALSE //don't brusepack the guardian
|
||||
damage_coeff = list(BRUTE = 0.5, BURN = 0.5, TOX = 0.5, CLONE = 0.5, STAMINA = 0, OXY = 0.5) //how much damage from each damage type we transfer to the owner
|
||||
environment_smash = 1
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
obj_damage = 40
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 15
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
melee_damage_upper = 50
|
||||
armour_penetration = 100
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
new /obj/effect/temp_visual/guardian/phase/out(get_turf(src))
|
||||
alpha = 15
|
||||
if(!forced)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
melee_damage_lower = 0
|
||||
melee_damage_upper = 0
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
alpha = 45
|
||||
range = 255
|
||||
incorporeal_move = 1
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
melee_damage_upper = 20
|
||||
obj_damage = 80
|
||||
next_move_modifier = 0.8 //attacks 20% faster
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
playstyle_string = "<span class='holoparasite'>As a <b>standard</b> type you have no special abilities, but have a high damage resistance and a powerful attack capable of smashing through walls.</span>"
|
||||
magic_fluff_string = "<span class='holoparasite'>..And draw the Assistant, faceless and generic, but never to be underestimated.</span>"
|
||||
tech_fluff_string = "<span class='holoparasite'>Boot sequence complete. Standard combat modules loaded. Holoparasite swarm online.</span>"
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
a_intent = INTENT_HELP
|
||||
friendly = "caresses"
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
gold_core_spawnable = 1
|
||||
icon_state = "maid"
|
||||
icon_living = "maid"
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
faction = list("hostile")
|
||||
move_to_delay = 0
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
mouse_opacity = 2
|
||||
pass_flags = PASSTABLE | PASSGRILLE | PASSMOB
|
||||
mob_size = MOB_SIZE_TINY
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
icon = 'icons/mob/simple_human.dmi'
|
||||
icon_state = "paperwizard"
|
||||
ranged = 1
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
minimum_distance = 3
|
||||
retreat_distance = 3
|
||||
obj_damage = 0
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
icon_living = "flan"
|
||||
icon_dead = "flan_dead"
|
||||
turns_per_move = 5
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
speed = -2
|
||||
maxHealth = 50
|
||||
health = 50
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
robust_searching = 1
|
||||
stat_attack = 2
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
speak_emote = list("squeaks")
|
||||
ventcrawler = VENTCRAWLER_ALWAYS
|
||||
var/datum/mind/origin
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
faction = list("hostile")
|
||||
stop_automated_movement_when_pulled = 0
|
||||
obj_damage = 40
|
||||
environment_smash = 1 //Set to 1 to break closets,tables,racks, etc; 2 for walls; 3 for rwalls
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES //Set to 1 to break closets,tables,racks, etc; 2 for walls; 3 for rwalls
|
||||
var/atom/target
|
||||
var/ranged = 0
|
||||
var/rapid = 0
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
melee_damage_upper = 0
|
||||
speed = -1
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
|
||||
|
||||
/mob/living/simple_animal/hostile/illusion/escape/AttackingTarget()
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
faction = list("jungle")
|
||||
weather_immunities = list("acid")
|
||||
obj_damage = 30
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
minbodytemp = 0
|
||||
maxbodytemp = 450
|
||||
response_help = "pokes"
|
||||
|
||||
@@ -657,7 +657,7 @@ Difficulty: Very Hard
|
||||
minbodytemp = 0
|
||||
maxbodytemp = 1500
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
AIStatus = AI_OFF
|
||||
stop_automated_movement = 1
|
||||
var/heal_power = 5
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
maxHealth = 1000
|
||||
a_intent = INTENT_HARM
|
||||
sentience_type = SENTIENCE_BOSS
|
||||
environment_smash = 3
|
||||
environment_smash = ENVIRONMENT_SMASH_RWALLS
|
||||
obj_damage = 400
|
||||
light_range = 3
|
||||
faction = list("mining", "boss")
|
||||
|
||||
@@ -203,7 +203,7 @@ GLOBAL_LIST_INIT(protected_objects, list(/obj/structure/table, /obj/structure/ca
|
||||
if(..())
|
||||
emote_see = list("aims menacingly")
|
||||
obj_damage = 0
|
||||
environment_smash = 0 //needed? seems weird for them to do so
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE //needed? seems weird for them to do so
|
||||
ranged = 1
|
||||
retreat_distance = 1 //just enough to shoot
|
||||
minimum_distance = 6
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
faction = list("mining")
|
||||
weather_immunities = list("lava","ash")
|
||||
obj_damage = 30
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
minbodytemp = 0
|
||||
maxbodytemp = INFINITY
|
||||
response_help = "pokes"
|
||||
@@ -215,7 +215,7 @@
|
||||
ranged_cooldown = 0
|
||||
ranged_cooldown_time = 20
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
retreat_distance = 3
|
||||
minimum_distance = 3
|
||||
pass_flags = PASSTABLE
|
||||
@@ -334,7 +334,7 @@
|
||||
attack_sound = 'sound/weapons/pierce.ogg'
|
||||
throw_message = "falls right through the strange body of the"
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
pass_flags = PASSTABLE
|
||||
del_on_death = 1
|
||||
|
||||
@@ -595,7 +595,7 @@
|
||||
aggro_vision_range = 9
|
||||
idle_vision_range = 5
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
var/wumbo = 0
|
||||
var/inflate_cooldown = 0
|
||||
loot = list(/obj/item/asteroid/fugu_gland{layer = ABOVE_MOB_LAYER})
|
||||
@@ -640,7 +640,7 @@
|
||||
minimum_distance = 1
|
||||
move_to_delay = 6
|
||||
transform *= 2
|
||||
environment_smash = 2
|
||||
environment_smash = ENVIRONMENT_SMASH_WALLS
|
||||
mob_size = MOB_SIZE_LARGE
|
||||
speed = 1
|
||||
addtimer(CALLBACK(src, .proc/Deflate), 100)
|
||||
@@ -660,7 +660,7 @@
|
||||
move_to_delay = 2
|
||||
transform /= 2
|
||||
inflate_cooldown = 4
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
mob_size = MOB_SIZE_SMALL
|
||||
speed = 0
|
||||
|
||||
@@ -800,11 +800,12 @@
|
||||
del_on_death = 1
|
||||
stat_attack = 1
|
||||
robust_searching = 1
|
||||
var/can_infest_dead = FALSE
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/Life()
|
||||
if(isturf(loc))
|
||||
for(var/mob/living/carbon/human/H in view(src,1)) //Only for corpse right next to/on same tile
|
||||
if(H.stat == UNCONSCIOUS)
|
||||
if(H.stat == UNCONSCIOUS || (can_infest_dead && H.stat == DEAD))
|
||||
infest(H)
|
||||
..()
|
||||
|
||||
@@ -818,6 +819,58 @@
|
||||
H.forceMove(L)
|
||||
qdel(src)
|
||||
|
||||
//Advanced Legion is slightly tougher to kill and can raise corpses (revive other legions)
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelord/legion/advanced
|
||||
stat_attack = 2
|
||||
maxHealth = 120
|
||||
health = 120
|
||||
brood_type = /mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/advanced
|
||||
icon_state = "dwarf_legion"
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/advanced
|
||||
stat_attack = 2
|
||||
can_infest_dead = TRUE
|
||||
|
||||
//Legion that spawns Legions
|
||||
|
||||
/mob/living/simple_animal/hostile/spawner/legion
|
||||
name = "legion"
|
||||
desc = "One of many."
|
||||
icon = 'icons/mob/lavaland/dragon.dmi'
|
||||
icon_state = "legion"
|
||||
icon_living = "legion"
|
||||
icon_dead = "legion"
|
||||
health = 450
|
||||
maxHealth = 450
|
||||
max_mobs = 3
|
||||
spawn_time = 200
|
||||
spawn_text = "peels itself off from"
|
||||
melee_damage_lower = 20
|
||||
melee_damage_upper = 20
|
||||
anchored = FALSE
|
||||
AIStatus = AI_ON
|
||||
stop_automated_movement = FALSE
|
||||
wander = TRUE
|
||||
maxbodytemp = INFINITY
|
||||
layer = MOB_LAYER
|
||||
del_on_death = TRUE
|
||||
sentience_type = SENTIENCE_BOSS
|
||||
loot = list(/obj/item/organ/hivelord_core/legion = 3, /obj/effect/mob_spawn/human/corpse/damaged = 5)
|
||||
move_to_delay = 14
|
||||
vision_range = 5
|
||||
aggro_vision_range = 9
|
||||
idle_vision_range = 5
|
||||
speed = 3
|
||||
faction = list("mining")
|
||||
weather_immunities = list("lava","ash")
|
||||
obj_damage = 30
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
see_in_dark = 8
|
||||
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
|
||||
|
||||
//Organ
|
||||
|
||||
/obj/item/organ/hivelord_core/legion
|
||||
name = "legion's soul"
|
||||
desc = "A strange rock that still crackles with power... its \
|
||||
@@ -871,7 +924,7 @@
|
||||
speak_chance = 1
|
||||
turns_per_move = 8
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
move_to_delay = 15
|
||||
response_help = "pets"
|
||||
response_disarm = "gently pushes aside"
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
attacktext = "chomps"
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
faction = list("mushroom")
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
stat_attack = 2
|
||||
mouse_opacity = 1
|
||||
speed = 1
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
faction = list("hostile")
|
||||
attack_sound = 'sound/weapons/bite.ogg'
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
ventcrawler = VENTCRAWLER_ALWAYS
|
||||
mob_size = MOB_SIZE_TINY
|
||||
movement_type = FLYING
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
attacktext = "attacks"
|
||||
attack_sound = 'sound/items/bikehorn.ogg'
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
del_on_death = 1
|
||||
loot = list(/obj/effect/mob_spawn/human/clown/corpse)
|
||||
|
||||
|
||||
@@ -20,6 +20,6 @@
|
||||
attacktext = "hits"
|
||||
attack_sound = 'sound/weapons/punch1.ogg'
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
del_on_death = 0
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
speed = 0
|
||||
stat_attack = 1
|
||||
robust_searching = 1
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
maxHealth = 100
|
||||
health = 100
|
||||
harm_intent_damage = 5
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
minimum_distance = 10
|
||||
retreat_distance = 10
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
|
||||
/mob/living/simple_animal/hostile/syndicate/civilian/Aggro()
|
||||
..()
|
||||
@@ -150,7 +150,7 @@
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 15
|
||||
obj_damage = 0
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
attacktext = "cuts"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
faction = list("syndicate")
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
var/attacktext = "attacks"
|
||||
var/attack_sound = null
|
||||
var/friendly = "nuzzles" //If the mob does no damage with it's attack
|
||||
var/environment_smash = 0 //Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls
|
||||
var/environment_smash = ENVIRONMENT_SMASH_NONE //Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls
|
||||
|
||||
var/speed = 1 //LETS SEE IF I CAN SET SPEEDS FOR SIMPLE MOBS WITHOUT DESTROYING EVERYTHING. Higher speed is slower, negative speed is faster
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
firing_effect_type = /obj/effect/temp_visual/dir_setting/firing_effect/energy
|
||||
|
||||
/obj/item/ammo_casing/energy/chameleon
|
||||
projectile_type = /obj/item/projectile/energy/chameleon
|
||||
e_cost = 0
|
||||
var/list/projectile_vars = list()
|
||||
|
||||
|
||||
@@ -109,6 +109,11 @@
|
||||
ammo_type = /obj/item/ammo_casing/shotgun/buckshot
|
||||
max_ammo = 6
|
||||
|
||||
/obj/item/ammo_box/magazine/internal/shot/com/compact
|
||||
name = "compact combat shotgun internal magazine"
|
||||
ammo_type = /obj/item/ammo_casing/shotgun/buckshot
|
||||
max_ammo = 4
|
||||
|
||||
/obj/item/ammo_box/magazine/internal/shot/dual
|
||||
name = "double-barrel shotgun internal magazine"
|
||||
max_ammo = 2
|
||||
|
||||
@@ -192,6 +192,14 @@
|
||||
mag_type = /obj/item/ammo_box/magazine/internal/shot/com
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
|
||||
/obj/item/weapon/gun/ballistic/shotgun/automatic/combat/compact
|
||||
name = "compact combat shotgun"
|
||||
desc = "A compact version of the semi automatic combat shotgun. For close encounters."
|
||||
icon_state = "cshotgunc"
|
||||
origin_tech = "combat=4;materials=2"
|
||||
mag_type = /obj/item/ammo_box/magazine/internal/shot/com/compact
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
|
||||
//Dual Feed Shotgun
|
||||
|
||||
/obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube
|
||||
|
||||
@@ -61,6 +61,7 @@
|
||||
for(var/A in get_modkits())
|
||||
var/obj/item/borg/upgrade/modkit/M = A
|
||||
M.modify_projectile(K)
|
||||
K.kinetic_modules += M //do something special on-hit, easy!
|
||||
|
||||
/obj/item/weapon/gun/energy/kinetic_accelerator/cyborg
|
||||
holds_charge = TRUE
|
||||
@@ -165,9 +166,11 @@
|
||||
log_override = TRUE
|
||||
|
||||
var/pressure_decrease = 0.25
|
||||
var/turf_aoe = FALSE
|
||||
var/mob_aoe = 0
|
||||
var/list/hit_overlays = list()
|
||||
var/list/kinetic_modules = list()
|
||||
|
||||
/obj/item/projectile/kinetic/Destroy()
|
||||
QDEL_NULL(kinetic_modules)
|
||||
return ..()
|
||||
|
||||
/obj/item/projectile/kinetic/prehit(atom/target)
|
||||
var/turf/target_turf = get_turf(target)
|
||||
@@ -197,23 +200,15 @@
|
||||
M.gets_drilled(firer)
|
||||
var/obj/effect/temp_visual/kinetic_blast/K = new /obj/effect/temp_visual/kinetic_blast(target_turf)
|
||||
K.color = color
|
||||
for(var/type in hit_overlays)
|
||||
new type(target_turf)
|
||||
if(turf_aoe)
|
||||
for(var/T in RANGE_TURFS(1, target_turf) - target_turf)
|
||||
if(ismineralturf(T))
|
||||
var/turf/closed/mineral/M = T
|
||||
M.gets_drilled(firer)
|
||||
if(mob_aoe)
|
||||
for(var/mob/living/L in range(1, target_turf) - firer - target)
|
||||
var/armor = L.run_armor_check(def_zone, flag, "", "", armour_penetration)
|
||||
L.apply_damage(damage*mob_aoe, damage_type, def_zone, armor)
|
||||
to_chat(L, "<span class='userdanger'>You're struck by a [name]!</span>")
|
||||
for(var/obj/item/borg/upgrade/modkit/M in kinetic_modules)
|
||||
if(QDELETED(M)) //whoever shot this was very, very unfortunate.
|
||||
continue
|
||||
M.projectile_strike(src, target_turf, target)
|
||||
|
||||
|
||||
//Modkits
|
||||
/obj/item/borg/upgrade/modkit
|
||||
name = "modification kit"
|
||||
name = "kinetic accelerator modification kit"
|
||||
desc = "An upgrade for kinetic accelerators."
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "modkit"
|
||||
@@ -266,14 +261,13 @@
|
||||
to_chat(user, "<span class='notice'>You don't have room(<b>[KA.get_remaining_mod_capacity()]%</b> remaining, [cost]% needed) to install this modkit. Use a crowbar to remove existing modkits.</span>")
|
||||
. = FALSE
|
||||
|
||||
|
||||
|
||||
/obj/item/borg/upgrade/modkit/proc/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA)
|
||||
forceMove(get_turf(KA))
|
||||
KA.modkits -= src
|
||||
|
||||
/obj/item/borg/upgrade/modkit/proc/modify_projectile(obj/item/projectile/kinetic/K)
|
||||
|
||||
/obj/item/borg/upgrade/modkit/proc/projectile_strike(obj/item/projectile/kinetic/K, turf/target_turf, atom/target)
|
||||
|
||||
//Range
|
||||
/obj/item/borg/upgrade/modkit/range
|
||||
@@ -315,21 +309,73 @@
|
||||
//AoE blasts
|
||||
/obj/item/borg/upgrade/modkit/aoe
|
||||
modifier = 0
|
||||
var/turf_aoe = FALSE
|
||||
var/stats_stolen = FALSE
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/install(obj/item/weapon/gun/energy/kinetic_accelerator/KA, mob/user)
|
||||
. = ..()
|
||||
if(.)
|
||||
for(var/obj/item/borg/upgrade/modkit/aoe/AOE in KA.modkits) //make sure only one of the aoe modules has values if somebody has multiple
|
||||
if(AOE.stats_stolen)
|
||||
continue
|
||||
modifier += AOE.modifier //take its modifiers
|
||||
AOE.modifier = 0
|
||||
turf_aoe += AOE.turf_aoe
|
||||
AOE.turf_aoe = FALSE
|
||||
AOE.stats_stolen = TRUE
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/uninstall(obj/item/weapon/gun/energy/kinetic_accelerator/KA)
|
||||
..()
|
||||
modifier = initial(modifier) //get our modifiers back
|
||||
turf_aoe = initial(turf_aoe)
|
||||
if(stats_stolen) //if we had our stats stolen, find the stealer and take them from it
|
||||
for(var/obj/item/borg/upgrade/modkit/aoe/AOE in KA.modkits)
|
||||
if(AOE.stats_stolen)
|
||||
continue
|
||||
AOE.modifier -= modifier
|
||||
AOE.turf_aoe -= turf_aoe
|
||||
else //otherwise, reset the stolen stats and have it recalculate
|
||||
var/obj/item/borg/upgrade/modkit/aoe/new_stealer
|
||||
for(var/obj/item/borg/upgrade/modkit/aoe/AOE in KA.modkits)
|
||||
if(!new_stealer)
|
||||
new_stealer = AOE //just make the first one a stealer
|
||||
AOE.modifier = initial(AOE.modifier)
|
||||
AOE.turf_aoe = initial(AOE.turf_aoe)
|
||||
AOE.stats_stolen = FALSE
|
||||
if(new_stealer) //if there's no stealer, then there's no other aoe modkits
|
||||
for(var/obj/item/borg/upgrade/modkit/aoe/AOE in KA.modkits)
|
||||
if(AOE != new_stealer)
|
||||
new_stealer.modifier += AOE.modifier
|
||||
AOE.modifier = 0
|
||||
new_stealer.turf_aoe += AOE.turf_aoe
|
||||
AOE.turf_aoe = FALSE
|
||||
AOE.stats_stolen = TRUE
|
||||
stats_stolen = FALSE
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/modify_projectile(obj/item/projectile/kinetic/K)
|
||||
K.name = "kinetic explosion"
|
||||
if(!K.turf_aoe && !K.mob_aoe)
|
||||
K.hit_overlays += /obj/effect/temp_visual/explosion/fast
|
||||
K.mob_aoe += modifier
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/projectile_strike(obj/item/projectile/kinetic/K, turf/target_turf, atom/target)
|
||||
if(stats_stolen)
|
||||
return
|
||||
new /obj/effect/temp_visual/explosion/fast(target_turf)
|
||||
if(turf_aoe)
|
||||
for(var/T in RANGE_TURFS(1, target_turf) - target_turf)
|
||||
if(ismineralturf(T))
|
||||
var/turf/closed/mineral/M = T
|
||||
M.gets_drilled(K.firer)
|
||||
if(modifier)
|
||||
for(var/mob/living/L in range(1, target_turf) - K.firer - target)
|
||||
var/armor = L.run_armor_check(K.def_zone, K.flag, "", "", K.armour_penetration)
|
||||
L.apply_damage(K.damage*modifier, K.damage_type, K.def_zone, armor)
|
||||
to_chat(L, "<span class='userdanger'>You're struck by a [K.name]!</span>")
|
||||
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/turfs
|
||||
name = "mining explosion"
|
||||
desc = "Causes the kinetic accelerator to destroy rock in an AoE."
|
||||
denied_type = /obj/item/borg/upgrade/modkit/aoe/turfs
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/turfs/modify_projectile(obj/item/projectile/kinetic/K)
|
||||
..()
|
||||
K.turf_aoe = TRUE
|
||||
turf_aoe = TRUE
|
||||
|
||||
/obj/item/borg/upgrade/modkit/aoe/turfs/andmobs
|
||||
name = "offensive mining explosion"
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
damage_type = BURN
|
||||
flag = "energy"
|
||||
|
||||
/obj/item/projectile/energy/chameleon
|
||||
nodamage = TRUE
|
||||
|
||||
/obj/item/projectile/energy/electrode
|
||||
name = "electrode"
|
||||
|
||||
@@ -254,7 +254,7 @@
|
||||
/mob/living/simple_animal/hostile/bear/fightpit
|
||||
name = "fight pit bear"
|
||||
desc = "This bear's trained through ancient Russian secrets to fear the walls of its glass prison."
|
||||
environment_smash = 0
|
||||
environment_smash = ENVIRONMENT_SMASH_NONE
|
||||
|
||||
/obj/effect/decal/hammerandsickle
|
||||
name = "hammer and sickle"
|
||||
|
||||
@@ -55,6 +55,20 @@
|
||||
|
||||
-->
|
||||
<div class="commit sansserif">
|
||||
<h2 class="date">21 May 2017</h2>
|
||||
<h3 class="author">Gun Hog updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">The Auxiliary Base can no longer land outside the lavaland map's boundaries.</li>
|
||||
</ul>
|
||||
<h3 class="author">RandomMarine updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">Drone laws no longer restrict drones to the station.</li>
|
||||
</ul>
|
||||
<h3 class="author">Steelpoint updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">The Warden's Cycler Shotgun has been replaced with a Compact Combat Shotgun. A unique weapon, it can fit in armour slots but at the sacrifice of a smaller ammo capacity of four shells.</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">20 May 2017</h2>
|
||||
<h3 class="author">Joan updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
@@ -1374,35 +1388,6 @@
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">Golem Shells can now be completed with medical gauze or cloth to form cloth golems, which are weaker and extremely flammable. However, if they die, they turn into a pile of cloth that will eventually re-animate back into full health. That is, unless someone lights it on fire.</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">19 March 2017</h2>
|
||||
<h3 class="author">BeeSting12 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">Nanotrasen has decided to better equip the box-class emergency shuttles with a recharger on a table in the cockpit.</li>
|
||||
</ul>
|
||||
<h3 class="author">Cheridan updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">The slime created by a pyroclastic anomaly detonating is now adult and player-controlled! Reminder that if you see an anomaly alert, you should grab an analyzer and head to the announced location to scan it, and then signal the given frequency on a signaller!</li>
|
||||
</ul>
|
||||
<h3 class="author">Penguaro updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">change access variables for turrets and shield gens</li>
|
||||
<li class="bugfix">Box Station - Replaces the smiling table grilles with their more serious counterparts.</li>
|
||||
</ul>
|
||||
<h3 class="author">coiax updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">The Syndicate lavaland base now has a single self destruct bomb located next to the Communications Room. Guaranteed destruction of the base is guaranteed by payloads embedded in the walls.</li>
|
||||
</ul>
|
||||
<h3 class="author">octareenroon91 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">Fixes infinite vaping bug.</li>
|
||||
</ul>
|
||||
<h3 class="author">uraniummeltdown updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">Plant data disks have new sprites.</li>
|
||||
<li class="bugfix">Fixed Monkey Recycler board not showing in Circuit Imprinter</li>
|
||||
<li class="tweak">Kinetic Accelerator Range Mod now takes up 25% space instead of 24%</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<b>GoonStation 13 Development Team</b>
|
||||
|
||||
@@ -11350,3 +11350,12 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
|
||||
information to them, will recall the shuttle from Centcom.
|
||||
octareenroon91:
|
||||
- bugfix: Golems touching a shell can now choose to stay in their own body.
|
||||
2017-05-21:
|
||||
Gun Hog:
|
||||
- bugfix: The Auxiliary Base can no longer land outside the lavaland map's boundaries.
|
||||
RandomMarine:
|
||||
- tweak: Drone laws no longer restrict drones to the station.
|
||||
Steelpoint:
|
||||
- rscadd: The Warden's Cycler Shotgun has been replaced with a Compact Combat Shotgun.
|
||||
A unique weapon, it can fit in armour slots but at the sacrifice of a smaller
|
||||
ammo capacity of four shells.
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
author: "Gun Hog"
|
||||
delete-after: True
|
||||
changes:
|
||||
- bugfix: "The Auxiliary Base can no longer land outside the lavaland map's boundaries."
|
||||
@@ -0,0 +1,4 @@
|
||||
author: "kevinz000"
|
||||
delete-after: True
|
||||
changes:
|
||||
- bugfix: "Nanotrasen decided to remove the integrated jet engines from jetpacks. They can no longer be used successfully indoors."
|
||||
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 68 KiB |
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 4.6 KiB |
|
Before Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 31 KiB |
@@ -14,7 +14,6 @@
|
||||
|
||||
// BEGIN_INCLUDE
|
||||
#include "_maps\basemap.dm"
|
||||
#include "_maps\loadallmaps.dm"
|
||||
#include "code\_compile_options.dm"
|
||||
#include "code\world.dm"
|
||||
#include "code\__DATASTRUCTURES\globals.dm"
|
||||
|
||||