Merge remote-tracking branch 'citadel/master' into combat_rework_experimental

This commit is contained in:
silicons
2020-09-19 15:56:13 -07:00
1781 changed files with 68073 additions and 31311 deletions
+8 -1
View File
@@ -414,10 +414,17 @@ Regarding sprites & sounds, you must credit the artist and possibly the codebase
Do not add any of the following in a Pull Request or risk getting the PR closed:
* National Socialist Party of Germany content, National Socialist Party of Germany related content, or National Socialist Party of Germany references
* Code where one line of code is split across mutiple lines (except for multiple, separate strings and comments; in those cases, existing longer lines must not be split up)
* Code adding, removing, or updating the availability of alien races/species/human mutants without prior approval. Pull requests attempting to add or remove features from said races/species/mutants require prior approval as well.
Just because something isn't on this list doesn't mean that it's acceptable. Use common sense above all else.
## Content requiring prior approval
Certain types of changes may require prior approval from maintainers. This currently includes:
* Code adding, removing, or updating the availability of alien races/species/human mutants. This includes pull requests attempting to add or remove features from said races/species/mutants. (Requires approval from at least one maintainer)
* Code adding, removing, or modifying the functionality of adult-oriented features (such as, but not limited to: vore, genitals, MKUltra, and more). This also includes pull requests attempting to add or remove these features outright. (Requires approval from at least half of the formal maintainer team)
The above content requires approval from the specified amount of maintainers prior to PR creation. Seeking approval must be done via a @Maintainer ping in a relevant development/code or staff channel on the Discord, otherwise it will be considered insufficient. If a PR contains any of the above content, but the creator does not have sufficient approval prior to the PR's creation, then the PR may be closed by any maintainer, at any time, for any reason.
## A word on Git
Yes, we know that the files have a tonne of mixed Windows and Linux line endings. Attempts to fix this have been met with less than stellar success, and as such we have decided to give up caring until there comes a time when it matters.
@@ -18,9 +18,7 @@
/obj/item/mining_scanner,
/obj/item/flashlight/lantern,
/obj/item/card/id/mining,
/obj/item/gps/mining{
tracking = 0
},
/obj/item/gps/mining,
/turf/open/floor/plating,
/area/ruin/powered/golem_ship)
"d" = (
@@ -34,9 +32,7 @@
/obj/item/mining_scanner,
/obj/item/flashlight/lantern,
/obj/item/card/id/mining,
/obj/item/gps/mining{
tracking = 0
},
/obj/item/gps/mining,
/turf/open/floor/plating,
/area/ruin/powered/golem_ship)
"e" = (
@@ -156,9 +152,7 @@
"x" = (
/obj/structure/table/wood,
/obj/machinery/reagentgrinder,
/obj/item/gps/mining{
tracking = 0
},
/obj/item/gps/mining,
/turf/open/floor/mineral/titanium/purple,
/area/ruin/powered/golem_ship)
"z" = (
@@ -16,7 +16,7 @@
/turf/open/floor/wood,
/area/ruin/unpowered)
"d" = (
/turf/open/openspace/icemoon,
/turf/open/transparent/openspace/icemoon,
/area/icemoon/surface/outdoors)
"e" = (
/obj/item/clothing/suit/hooded/explorer,
@@ -227,7 +227,7 @@
/area/ruin/unpowered/xenonest)
"ba" = (
/obj/structure/stone_tile/slab,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bb" = (
/obj/structure/stone_tile/cracked{
@@ -241,7 +241,7 @@
dir = 8
},
/obj/item/flashlight/lantern,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bc" = (
/obj/structure/stone_tile/block,
@@ -251,7 +251,7 @@
/obj/structure/stone_tile{
dir = 4
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bd" = (
/obj/structure/stone_tile/block,
@@ -262,7 +262,7 @@
dir = 1
},
/obj/effect/decal/cleanable/blood/xeno,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"be" = (
/obj/structure/stone_tile/block,
@@ -272,7 +272,7 @@
/obj/structure/stone_tile{
dir = 1
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bf" = (
/obj/structure/stone_tile,
@@ -286,7 +286,7 @@
dir = 4
},
/obj/item/flashlight/lantern,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bg" = (
/obj/structure/alien/weeds,
@@ -303,7 +303,7 @@
/obj/structure/stone_tile{
dir = 8
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bi" = (
/obj/structure/alien/weeds,
@@ -336,11 +336,11 @@
dir = 1
},
/obj/structure/stone_tile,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bm" = (
/obj/structure/stone_tile/slab/cracked,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bn" = (
/obj/structure/stone_tile/block{
@@ -352,7 +352,7 @@
/obj/structure/stone_tile{
dir = 4
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bo" = (
/obj/structure/stone_tile/surrounding_tile{
@@ -383,7 +383,7 @@
dir = 1
},
/obj/effect/decal/cleanable/blood/xeno,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bs" = (
/obj/structure/stone_tile/block{
@@ -416,7 +416,7 @@
dir = 1
},
/obj/structure/stone_tile/cracked,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bw" = (
/obj/structure/stone_tile/cracked{
@@ -430,7 +430,7 @@
dir = 8
},
/obj/item/flashlight/lantern,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bx" = (
/obj/structure/stone_tile/block{
@@ -441,7 +441,7 @@
dir = 8
},
/obj/effect/decal/cleanable/blood/xeno,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"by" = (
/obj/structure/stone_tile/block{
@@ -451,7 +451,7 @@
/obj/structure/stone_tile/cracked{
dir = 8
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bz" = (
/obj/structure/stone_tile/block/cracked{
@@ -461,7 +461,7 @@
/obj/structure/stone_tile{
dir = 8
},
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bA" = (
/obj/structure/stone_tile/cracked{
@@ -475,7 +475,7 @@
},
/obj/structure/stone_tile,
/obj/item/flashlight/lantern,
/turf/open/indestructible/boss/air,
/turf/open/indestructible/boss,
/area/ruin/unpowered/xenonest)
"bB" = (
/obj/structure/alien/weeds,
+2 -2
View File
@@ -3,7 +3,7 @@
/turf/template_noop,
/area/template_noop)
"b" = (
/turf/open/floor/plating/asteroid,
/turf/open/floor/plating/asteroid/airless,
/area/ruin/powered)
"c" = (
/turf/closed/mineral/random/high_chance,
@@ -135,7 +135,7 @@
/area/ruin/powered)
"F" = (
/obj/structure/closet/crate/trashcart,
/turf/open/floor/plating/asteroid,
/turf/open/floor/plating/asteroid/airless,
/area/ruin/powered)
"G" = (
/obj/structure/chair/sofa/right,
@@ -3,7 +3,7 @@
/turf/template_noop,
/area/template_noop)
"b" = (
/turf/open/floor/plating/asteroid,
/turf/open/floor/plating/asteroid/airless,
/area/ruin/powered)
"c" = (
/turf/closed/mineral/random/high_chance,
@@ -176,8 +176,8 @@
/obj/structure/table,
/obj/effect/decal/cleanable/dirt,
/obj/item/autosurgeon{
name = "rusted autosurgeon";
desc = "A device that automatically inserts an implant or organ into the user without the hassle of extensive surgery. It has a slot to insert an organ of implant. But this rusted version looks like it could only manage one implant....";
name = "rusted autosurgeon";
uses = 1
},
/turf/open/floor/plasteel,
@@ -205,7 +205,7 @@
/obj/machinery/atmospherics/components/unary/outlet_injector/on/layer1{
dir = 4
},
/turf/open/floor/plating/asteroid,
/turf/open/floor/plating/asteroid/airless,
/area/ruin/powered)
"K" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
@@ -80,7 +80,7 @@
/obj/item/shard{
icon_state = "medium"
},
/turf/open/floor/plating/airless{
/turf/open/floor/plating{
icon_state = "platingdmg2"
},
/area/ruin/space/has_grav)
@@ -71,8 +71,9 @@
/turf/closed/wall/r_wall,
/area/engine/engineering)
"di" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall,
/obj/structure/reagent_dispensers/fueltank,
/obj/effect/turf_decal/delivery,
/turf/open/floor/plasteel,
/area/engine/engineering)
"dl" = (
/obj/structure/cable{
@@ -304,12 +305,6 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/effect/turf_decal/tile/yellow{
dir = 1
},
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"kH" = (
@@ -523,6 +518,9 @@
/obj/machinery/light{
dir = 4
},
/obj/structure/sign/warning/enginesafety{
pixel_x = 32
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"qv" = (
@@ -543,7 +541,13 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall,
/obj/effect/turf_decal/tile/yellow{
dir = 1
},
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"qN" = (
/obj/structure/table/reinforced,
@@ -848,6 +852,10 @@
/obj/machinery/igniter{
id = "TEG_igniter"
},
/mob/living/carbon/monkey{
name = "Mumkey Jones"
},
/obj/item/clothing/head/hardhat/atmos,
/turf/open/floor/engine/vacuum,
/area/engine/engineering)
"An" = (
@@ -882,14 +890,6 @@
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 1
},
/obj/machinery/camera{
c_tag = "TEG - North Center";
dir = 8
},
/obj/effect/turf_decal/tile/yellow{
dir = 4
},
/obj/effect/turf_decal/tile/yellow,
/turf/open/floor/plasteel,
/area/engine/engineering)
"AX" = (
@@ -1042,12 +1042,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"EI" = (
/obj/effect/turf_decal/delivery,
/obj/structure/reagent_dispensers/fueltank,
/obj/machinery/atmospherics/pipe/simple/orange/visible,
/turf/open/floor/plasteel,
/area/engine/engineering)
"EL" = (
/turf/closed/wall,
/area/engine/engineering)
@@ -1082,6 +1076,11 @@
/obj/structure/window/reinforced,
/turf/open/floor/plasteel,
/area/engine/engineering)
"Fs" = (
/obj/structure/rack,
/obj/item/pipe_dispenser,
/turf/open/floor/plasteel,
/area/engine/engineering)
"FG" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 10
@@ -1218,11 +1217,6 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"Jd" = (
/obj/machinery/light,
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/obj/effect/turf_decal/tile/yellow,
/obj/machinery/atmospherics/pipe/manifold/orange/visible,
/turf/open/floor/plasteel,
/area/engine/engineering)
@@ -1312,15 +1306,6 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/machinery/light{
dir = 1
},
/obj/effect/turf_decal/tile/yellow{
dir = 1
},
/obj/effect/turf_decal/tile/yellow{
dir = 4
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"LD" = (
@@ -1372,6 +1357,7 @@
/obj/machinery/atmospherics/pipe/manifold/cyan/visible{
dir = 4
},
/obj/machinery/meter,
/turf/open/floor/plasteel,
/area/engine/engineering)
"Nz" = (
@@ -1429,12 +1415,10 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 4
},
/obj/machinery/airalarm{
dir = 1;
locked = 0;
pixel_y = -22
},
/obj/machinery/light,
/obj/structure/sign/nanotrasen{
pixel_y = -32
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"Pz" = (
@@ -1452,6 +1436,9 @@
/obj/machinery/light{
dir = 1
},
/obj/structure/sign/warning/nosmoking{
pixel_y = 30
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"PK" = (
@@ -1522,12 +1509,11 @@
/turf/open/space,
/area/space/nearstation)
"Rl" = (
/obj/machinery/atmospherics/components/binary/pump{
dir = 1
},
/obj/effect/turf_decal/stripes/line{
dir = 1
},
/obj/machinery/atmospherics/pipe/simple/cyan/visible,
/obj/machinery/meter,
/turf/open/floor/plasteel,
/area/engine/engineering)
"Rz" = (
@@ -1602,7 +1588,13 @@
/turf/open/floor/plating,
/area/engine/engineering)
"TE" = (
/obj/structure/closet/crate/internals,
/obj/structure/closet/crate{
icon_state = "crateopen"
},
/obj/effect/spawner/lootdrop/maintenance{
lootcount = 2;
name = "2maintenance loot spawner"
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"TH" = (
@@ -1648,6 +1640,10 @@
dir = 4
},
/obj/effect/turf_decal/tile/yellow,
/obj/machinery/camera{
c_tag = "TEG - North Center";
dir = 8
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"Uq" = (
@@ -1671,18 +1667,15 @@
/area/engine/engineering)
"UT" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible,
/obj/effect/turf_decal/tile/yellow{
dir = 1
},
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"UY" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on{
dir = 8
},
/obj/machinery/airalarm{
pixel_y = 23
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"Vi" = (
@@ -1811,10 +1804,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 5
},
/obj/structure/extinguisher_cabinet{
dir = 4;
pixel_y = -27
},
/turf/open/floor/plasteel,
/area/engine/engineering)
"YC" = (
@@ -1837,9 +1826,10 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"YP" = (
/obj/structure/rack,
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,
/obj/item/pipe_dispenser,
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/obj/effect/turf_decal/tile/yellow,
/turf/open/floor/plasteel,
/area/engine/engineering)
"YQ" = (
@@ -1878,7 +1868,9 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"Zu" = (
/obj/machinery/atmospherics/pipe/manifold/cyan/visible,
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 6
},
/obj/machinery/meter,
/turf/open/floor/plasteel,
/area/engine/engineering)
@@ -1887,13 +1879,6 @@
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/structure/sign/warning/securearea{
pixel_y = -32
},
/obj/effect/turf_decal/tile/yellow{
dir = 8
},
/obj/effect/turf_decal/tile/yellow,
/turf/open/floor/plasteel,
/area/engine/engineering)
"ZC" = (
@@ -2170,7 +2155,7 @@ iD
MP
MP
MP
ij
MP
yX
qn
qn
@@ -2251,11 +2236,11 @@ ME
QS
uB
Ok
Ok
Ok
di
di
Ok
Bz
Zu
lI
Wc
Ok
zG
@@ -2307,8 +2292,8 @@ iP
wk
go
fF
EI
EI
UT
UT
sn
qc
Nh
@@ -2367,7 +2352,7 @@ KA
KA
Ok
dZ
bO
Zu
ev
tl
qb
@@ -2477,7 +2462,7 @@ IP
Zs
sD
Jd
EL
YP
YG
AX
PK
@@ -2505,7 +2490,7 @@ SX
ou
vG
Zv
di
Xe
qJ
Lw
Xe
@@ -2595,7 +2580,7 @@ PK
Dv
Dv
bO
YP
sH
As
yN
yN
@@ -2651,7 +2636,7 @@ eh
zx
XW
ST
Ok
Fs
MP
tw
tw
+3 -1
View File
@@ -232,7 +232,9 @@
/area/awaymission/vr/murderdome)
"H" = (
/obj/machinery/telecomms/allinone,
/turf/open/indestructible,
/turf/open/indestructible{
initial_gas_mix = "TEMP=2.7"
},
/area/awaymission/vr/murderdome)
"R" = (
/obj/effect/spawner/structure/window/reinforced/indestructable,
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+178 -130
View File
@@ -2134,14 +2134,11 @@
/turf/open/floor/plasteel/dark,
/area/maintenance/port)
"adM" = (
/obj/machinery/door/airlock/external{
name = "Abandoned External Airlock"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel/dark,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/maintenance/fore)
"adN" = (
/obj/effect/turf_decal/loading_area{
@@ -2160,11 +2157,16 @@
/turf/open/floor/engine,
/area/ai_monitored/storage/satellite)
"adO" = (
/obj/machinery/door/airlock/external{
name = "Satellite External Airlock";
req_one_access_txt = "32;19"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/engine,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/turret_protected/aisat/atmos)
"adP" = (
/obj/machinery/status_display/ai,
@@ -2513,6 +2515,9 @@
/turf/open/floor/plating,
/area/security/execution/education)
"aeD" = (
/obj/structure/cable{
icon_state = "2-8"
},
/obj/structure/disposalpipe/segment,
/turf/open/floor/plating/airless,
/area/space/nearstation)
@@ -2598,13 +2603,20 @@
},
/obj/machinery/light/small,
/turf/open/floor/plating/airless,
/area/maintenance/starboard/fore)
/area/space/nearstation)
"aeL" = (
/obj/machinery/door/airlock/external{
name = "Abandoned External Airlock"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/structure/cable{
icon_state = "2-8"
icon_state = "1-2"
},
/obj/structure/cable{
icon_state = "1-2"
},
/obj/structure/disposalpipe/segment,
/turf/open/floor/plating/airless,
/turf/open/floor/plasteel/dark,
/area/maintenance/starboard/fore)
"aeM" = (
/obj/machinery/photocopier,
@@ -5704,13 +5716,6 @@
/turf/open/floor/plasteel/dark,
/area/security/courtroom)
"ajI" = (
/obj/machinery/door/airlock/external{
name = "Abandoned External Airlock"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/structure/cable{
icon_state = "1-2"
},
/obj/structure/cable{
icon_state = "1-2"
},
@@ -6935,7 +6940,6 @@
dir = 4
},
/obj/structure/closet/emcloset/anchored,
/obj/effect/decal/cleanable/cobweb,
/obj/machinery/light/small{
dir = 8
},
@@ -9658,12 +9662,19 @@
/turf/open/floor/plasteel/showroomfloor,
/area/medical/genetics)
"aqp" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/structure/lattice/catwalk,
/turf/open/floor/plating/airless,
/area/solar/port/fore)
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating,
/area/maintenance/solars/port/fore)
"aqq" = (
/obj/machinery/status_display/ai{
pixel_x = -32
@@ -12462,12 +12473,18 @@
/turf/open/floor/plasteel,
/area/bridge)
"auN" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/structure/lattice/catwalk,
/turf/open/floor/plating/airless,
/area/solar/starboard/fore)
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plating,
/area/maintenance/solars/starboard/fore)
"auO" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable{
@@ -64779,11 +64796,15 @@
/turf/open/floor/plasteel/dark,
/area/hallway/primary/starboard)
"bZG" = (
/obj/structure/sign/warning/vacuum/external{
pixel_y = 32
/obj/machinery/door/airlock/external{
name = "Abandoned External Airlock"
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel/dark,
/area/maintenance/fore)
"bZH" = (
/obj/effect/turf_decal/tile/neutral{
dir = 1
@@ -64902,9 +64923,18 @@
/turf/open/floor/plasteel,
/area/hallway/primary/starboard)
"bZP" = (
/obj/structure/cable,
/turf/open/floor/plating/airless,
/area/space/nearstation)
/obj/machinery/door/airlock/external{
name = "Prison External Airlock";
req_access_txt = "2"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 1
},
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
"bZQ" = (
/obj/structure/closet/l3closet/janitor,
/obj/structure/window/reinforced,
@@ -67690,11 +67720,6 @@
},
/area/ai_monitored/turret_protected/ai)
"ceA" = (
/obj/machinery/door/airlock/external{
name = "Satellite External Airlock";
req_one_access_txt = "32;19"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/structure/cable{
icon_state = "1-2"
@@ -69610,15 +69635,12 @@
/turf/open/floor/plasteel,
/area/engine/atmos)
"chO" = (
/obj/structure/sign/warning/vacuum/external,
/turf/closed/wall,
/obj/structure/reagent_dispensers/fueltank,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/turret_protected/aisat/atmos)
"chP" = (
/obj/structure/reagent_dispensers/watertank,
/obj/structure/reagent_dispensers/watertank,
/obj/effect/turf_decal/delivery,
/obj/machinery/light,
/turf/open/floor/plasteel/dark,
/obj/structure/sign/warning/vacuum/external,
/turf/closed/wall,
/area/ai_monitored/turret_protected/aisat/atmos)
"chQ" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -69697,12 +69719,19 @@
/turf/open/floor/plasteel,
/area/engine/engineering)
"chU" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/structure/lattice/catwalk,
/turf/open/floor/plating/airless,
/area/solar/port/aft)
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating,
/area/maintenance/solars/port/aft)
"chW" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/hatch{
@@ -71343,16 +71372,9 @@
/turf/open/floor/plating,
/area/engine/engineering)
"ckJ" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plating,
/area/maintenance/solars/starboard/aft)
"ckK" = (
@@ -71763,16 +71785,9 @@
/turf/open/space/basic,
/area/space/nearstation)
"clx" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating,
/area/maintenance/solars/port/aft)
@@ -74873,6 +74888,9 @@
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable{
icon_state = "1-4"
},
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
@@ -74942,6 +74960,9 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/structure/cable{
icon_state = "4-8"
},
/turf/open/floor/plasteel/dark,
/area/maintenance/disposal)
"crg" = (
@@ -76410,14 +76431,12 @@
/turf/open/floor/plating/airless,
/area/solar/starboard/aft)
"ctO" = (
/obj/machinery/door/airlock/external{
name = "External Airlock";
req_access_txt = "13"
},
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel/dark,
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/maintenance/disposal)
"ctP" = (
/obj/structure/cable{
@@ -76438,16 +76457,9 @@
/turf/open/floor/plating/airless,
/area/solar/starboard/aft)
"ctS" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating,
/area/maintenance/solars/port/fore)
@@ -77673,12 +77685,18 @@
/turf/open/floor/plating,
/area/maintenance/disposal)
"cwb" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/structure/lattice/catwalk,
/turf/open/floor/plating/airless,
/area/solar/starboard/aft)
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plating,
/area/maintenance/solars/starboard/aft)
"cwc" = (
/obj/machinery/atmospherics/components/binary/pump/on,
/obj/machinery/airlock_sensor/incinerator_atmos{
@@ -77774,9 +77792,9 @@
/area/maintenance/starboard/aft)
"cwk" = (
/obj/structure/cable{
icon_state = "1-2"
icon_state = "2-8"
},
/turf/open/floor/plating/asteroid/airless,
/turf/open/floor/plating/airless,
/area/space/nearstation)
"cwl" = (
/obj/structure/cable{
@@ -77954,13 +77972,6 @@
/turf/open/floor/plating,
/area/maintenance/starboard)
"cwD" = (
/obj/machinery/door/airlock/external{
name = "External Airlock";
req_access_txt = "13"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/maintenance/starboard)
"cwE" = (
@@ -78131,6 +78142,9 @@
icon_state = "1-8"
},
/obj/effect/decal/cleanable/blood/old,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plating,
/area/maintenance/disposal)
"cwQ" = (
@@ -78244,6 +78258,9 @@
dir = 4
},
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable{
icon_state = "4-8"
},
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
@@ -78301,6 +78318,9 @@
},
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/blood/old,
/obj/structure/cable{
icon_state = "2-8"
},
/turf/open/floor/plating,
/area/maintenance/disposal)
"cxh" = (
@@ -78340,6 +78360,9 @@
/area/maintenance/disposal)
"cxj" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
@@ -78387,17 +78410,21 @@
},
/area/maintenance/port/fore)
"cxp" = (
/obj/structure/cable{
icon_state = "1-4"
/obj/machinery/door/airlock/external{
name = "External Airlock";
req_access_txt = "13"
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel/dark,
/area/maintenance/disposal)
"cxq" = (
/obj/structure/cable{
icon_state = "2-8"
/obj/effect/decal/cleanable/cobweb,
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
/area/maintenance/fore)
"cxr" = (
/obj/structure/sign/poster/contraband/clown,
/turf/closed/wall/rust,
@@ -78498,6 +78525,7 @@
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
/mob/living/simple_animal/opossum/poppy,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
@@ -83809,16 +83837,9 @@
},
/area/maintenance/starboard)
"cMH" = (
/obj/machinery/door/airlock/external{
name = "Solar Maintenance";
req_access_txt = "10; 13"
},
/obj/structure/cable{
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plating,
/area/maintenance/solars/starboard/fore)
"cMI" = (
@@ -84486,13 +84507,6 @@
/turf/open/space/basic,
/area/space/nearstation)
"cUD" = (
/obj/machinery/door/airlock/external{
name = "Prison External Airlock";
req_access_txt = "2"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 1
},
/obj/structure/cable{
icon_state = "1-2"
},
@@ -84510,6 +84524,10 @@
icon_state = "wood-broken"
},
/area/security/vacantoffice)
"dky" = (
/obj/structure/cable,
/turf/open/floor/plating/airless,
/area/space/nearstation)
"dlg" = (
/obj/machinery/light,
/turf/open/floor/wood,
@@ -84661,6 +84679,12 @@
/obj/effect/decal/cleanable/cobweb/cobweb2,
/turf/closed/mineral/random/labormineral,
/area/space/nearstation)
"fAn" = (
/obj/structure/sign/warning/vacuum/external{
pixel_y = 32
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
"fXq" = (
/obj/effect/turf_decal/tile/neutral{
dir = 8
@@ -84902,6 +84926,11 @@
/obj/machinery/light,
/turf/open/floor/plating/airless,
/area/hallway/secondary/entry)
"jGN" = (
/obj/effect/decal/cleanable/dirt,
/mob/living/simple_animal/opossum,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
"jHJ" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 9
@@ -85108,6 +85137,16 @@
/obj/structure/sign/poster/ripped,
/turf/closed/wall,
/area/crew_quarters/fitness/recreation)
"lqz" = (
/obj/machinery/door/airlock/external{
name = "External Airlock";
req_access_txt = "13"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/maintenance/starboard)
"lKu" = (
/obj/structure/table/wood,
/obj/item/reagent_containers/food/drinks/soda_cans/thirteenloko,
@@ -85165,6 +85204,9 @@
},
/turf/open/floor/plasteel/dark,
/area/science/research)
"mKj" = (
/turf/closed/wall/rust,
/area/security/execution/education)
"mKp" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -85531,6 +85573,12 @@
icon_state = "wood-broken4"
},
/area/maintenance/port/fore)
"yaV" = (
/obj/structure/cable{
icon_state = "1-4"
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
"ydo" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -99344,9 +99392,9 @@ bTK
bVs
hNk
bXG
abp
cZm
bZG
aeU
fAn
aeU
aeU
aeU
@@ -99603,7 +99651,7 @@ cTF
bXH
cUD
bZP
aeU
dky
coy
aeU
aeU
@@ -99856,19 +99904,19 @@ aaG
aez
cIj
aeB
cZm
mKj
aez
aez
aez
cko
cko
cko
aeU
aeU
aeU
aeU
aeU
cnS
chU
aeU
cnS
aUz
aeU
aeu
@@ -100311,9 +100359,9 @@ aeu
aeU
aeU
aeU
aeU
ctH
aqp
aeU
ctH
aeu
aeu
aeu
@@ -112385,7 +112433,7 @@ aaa
aaa
aeU
aUz
aeu
adH
adH
adH
adH
@@ -112642,8 +112690,8 @@ aaa
aaa
acm
aeU
aeU
adQ
cxq
alN
chj
aoc
@@ -112899,7 +112947,7 @@ aeR
aeR
aes
aes
aes
bZG
adM
alO
amL
@@ -113156,7 +113204,7 @@ aaa
aaa
acm
aaa
aaa
adH
adH
adH
adQ
@@ -120597,9 +120645,9 @@ aaa
aaa
aaa
aaa
aeU
aeK
baH
baH
afb
baH
baH
@@ -124306,9 +124354,9 @@ cpb
crf
cnu
cnu
cnu
cko
aeu
aeu
aaa
aaa
aaa
@@ -124564,7 +124612,7 @@ cxg
cxj
ctO
cxp
aeU
yaV
ciQ
aeU
aaa
@@ -124820,7 +124868,7 @@ cnu
cnd
cnu
cnu
cxq
cnu
cwk
cxu
aeU
@@ -125028,7 +125076,7 @@ bAP
bCf
bhQ
bhQ
bAM
jGN
bGH
bOc
bHZ
@@ -126354,9 +126402,9 @@ bzG
bzG
aeu
aeu
aeU
ckz
cwb
aeU
ckz
aeU
aUz
aeU
@@ -129376,9 +129424,9 @@ aaQ
aeo
aeo
acm
acm
acK
acm
bkd
lqz
bkd
aaa
aaa
aaa
@@ -129611,9 +129659,9 @@ aeu
aeu
aeu
aeu
aeU
cLM
auN
aeU
cLM
aeu
aeu
aeu
+11 -3
View File
@@ -44383,7 +44383,6 @@
/turf/open/floor/plasteel/white,
/area/hallway/primary/aft)
"bFB" = (
/obj/structure/reagent_dispensers/keg/aphro/strong,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/wood{
icon_state = "wood-broken5"
@@ -80286,6 +80285,11 @@
},
/turf/open/space/basic,
/area/engine/engineering)
"eCO" = (
/obj/effect/decal/cleanable/dirt,
/mob/living/simple_animal/opossum/poppy,
/turf/open/floor/plasteel/dark,
/area/maintenance/starboard/aft)
"eDP" = (
/obj/effect/turf_decal/trimline/blue/filled/corner{
dir = 8
@@ -82039,6 +82043,10 @@
},
/turf/open/floor/plasteel/cafeteria,
/area/crew_quarters/kitchen)
"vDO" = (
/mob/living/simple_animal/opossum,
/turf/open/floor/plating,
/area/maintenance/fore)
"vDW" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -107579,7 +107587,7 @@ aaA
abY
ayy
acw
acw
vDO
acw
acw
aeG
@@ -135198,7 +135206,7 @@ bPp
ccJ
clR
bQh
clN
eCO
bPp
bQh
bYx
+768
View File
@@ -0,0 +1,768 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"b" = (
/turf/closed/indestructible{
desc = "A wall with alien alloy plating.";
icon = 'icons/turf/walls/abductor_wall.dmi';
icon_state = "abductor";
name = "alien wall";
smooth = 5
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/fakespace,
/area/mafia)
"j" = (
/turf/closed/indestructible/abductor{
icon_state = "alien22"
},
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/structure/closet/abductor,
/turf/open/floor/plating/abductor,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/obj/structure/bed/abductor,
/turf/open/floor/plating/abductor,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/obj/structure/bed/abductor,
/turf/open/floor/plating/abductor2,
/area/mafia)
"o" = (
/obj/structure/closet/abductor,
/turf/open/floor/plating/abductor2,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/closed/indestructible/fakeglass,
/area/mafia)
"q" = (
/turf/open/floor/plating/abductor,
/area/mafia)
"r" = (
/turf/open/floor/plating/abductor2,
/area/mafia)
"t" = (
/turf/open/floor/light/colour_cycle/dancefloor_a,
/area/mafia)
"u" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/turf/open/floor/light/colour_cycle/dancefloor_b,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"x" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/obj/effect/spawner/structure/window/plastitanium,
/turf/open/floor/plating/abductor2,
/area/mafia)
"z" = (
/obj/structure/grille/indestructable,
/turf/open/floor/fakespace,
/area/mafia)
"B" = (
/turf/closed/indestructible/abductor{
icon_state = "alien2"
},
/area/mafia)
"D" = (
/turf/closed/indestructible/abductor{
icon_state = "alien15"
},
/area/mafia)
"E" = (
/turf/closed/indestructible/abductor{
icon_state = "alien7"
},
/area/mafia)
"F" = (
/turf/closed/indestructible/abductor{
icon_state = "alien12"
},
/area/mafia)
"G" = (
/turf/closed/indestructible/abductor{
icon_state = "alien17"
},
/area/mafia)
"H" = (
/turf/open/space/basic,
/area/mafia)
"I" = (
/turf/closed/indestructible/abductor{
icon_state = "alien24"
},
/area/mafia)
"J" = (
/turf/closed/indestructible/abductor{
icon_state = "alien18"
},
/area/mafia)
"K" = (
/turf/closed/indestructible/abductor{
icon_state = "alien11"
},
/area/mafia)
"L" = (
/turf/closed/indestructible/abductor{
icon_state = "alien14"
},
/area/mafia)
"M" = (
/turf/closed/indestructible/abductor{
icon_state = "alien4"
},
/area/mafia)
"N" = (
/turf/closed/indestructible/abductor{
icon_state = "alien21"
},
/area/mafia)
"P" = (
/turf/closed/indestructible/abductor,
/area/mafia)
"Q" = (
/turf/closed/indestructible/abductor{
icon_state = "alien5"
},
/area/mafia)
"S" = (
/turf/closed/indestructible/abductor{
icon_state = "alien3"
},
/area/mafia)
"U" = (
/turf/closed/indestructible/abductor{
icon_state = "alien23"
},
/area/mafia)
"V" = (
/turf/closed/indestructible/abductor{
icon_state = "alien13"
},
/area/mafia)
"W" = (
/turf/closed/indestructible/abductor{
icon_state = "alien20"
},
/area/mafia)
"Y" = (
/turf/closed/indestructible/abductor{
icon_state = "alien8"
},
/area/mafia)
"Z" = (
/turf/closed/indestructible/abductor{
icon_state = "alien10"
},
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(3,1,1) = {"
a
b
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
b
a
"}
(4,1,1) = {"
a
b
i
i
g
z
i
i
i
i
i
i
i
i
i
H
i
z
k
i
i
b
a
"}
(5,1,1) = {"
a
b
i
i
z
i
i
i
W
L
F
F
F
Z
P
i
i
i
h
i
i
b
a
"}
(6,1,1) = {"
a
b
i
i
i
W
L
Z
G
l
q
b
r
o
E
L
Z
P
i
i
i
b
a
"}
(7,1,1) = {"
a
b
i
i
i
N
o
r
p
m
q
x
r
n
x
q
l
B
i
i
i
b
a
"}
(8,1,1) = {"
a
b
i
i
i
U
n
r
b
b
q
b
r
b
b
q
m
M
i
i
i
b
a
"}
(9,1,1) = {"
a
b
i
i
W
G
x
r
r
x
q
x
r
x
q
q
x
E
P
i
i
b
a
"}
(10,1,1) = {"
a
b
i
i
N
l
x
b
x
x
x
x
x
x
x
b
x
o
B
i
i
b
a
"}
(11,1,1) = {"
a
b
i
i
j
m
q
q
q
x
t
t
t
x
r
r
r
n
S
i
i
b
a
"}
(12,1,1) = {"
a
b
i
i
j
b
x
b
x
x
t
u
t
x
x
b
x
b
S
i
i
b
a
"}
(13,1,1) = {"
a
b
i
i
j
n
r
r
r
x
t
t
t
x
q
q
q
m
S
i
i
b
a
"}
(14,1,1) = {"
a
b
i
i
U
o
x
b
x
x
x
x
x
x
x
b
x
l
M
i
i
b
a
"}
(15,1,1) = {"
a
b
i
i
I
J
x
q
q
x
r
x
q
x
r
r
x
Y
Q
i
i
b
a
"}
(16,1,1) = {"
a
b
i
i
i
N
m
q
b
b
r
b
q
b
b
r
n
B
i
i
i
b
a
"}
(17,1,1) = {"
a
b
i
i
i
U
l
q
x
n
r
x
q
m
x
r
o
M
i
i
i
b
a
"}
(18,1,1) = {"
a
b
i
i
i
I
D
K
J
o
r
b
q
l
Y
D
K
Q
i
i
i
b
a
"}
(19,1,1) = {"
a
b
i
i
z
i
i
i
I
D
V
V
V
K
Q
i
i
i
z
i
i
b
a
"}
(20,1,1) = {"
a
b
i
i
k
z
i
i
i
i
i
i
i
i
i
i
i
z
v
i
i
b
a
"}
(21,1,1) = {"
a
b
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
i
b
a
"}
(22,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+675
View File
@@ -0,0 +1,675 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"c" = (
/turf/closed/wall/rust,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/obj/machinery/door/airlock/maintenance_hatch{
max_integrity = 99999;
name = "Maintenance"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plating,
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/structure/closet/cabinet{
anchored = 1
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/dark,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel,
/area/mafia)
"o" = (
/obj/structure/closet/cabinet{
anchored = 1
},
/turf/open/floor/plasteel,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/closed/indestructible/fakeglass,
/area/mafia)
"q" = (
/turf/open/floor/plasteel/dark,
/area/mafia)
"r" = (
/turf/open/floor/plasteel,
/area/mafia)
"s" = (
/turf/open/floor/fakespace,
/area/mafia)
"t" = (
/turf/open/floor/plasteel/solarpanel,
/area/mafia)
"u" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/turf/open/floor/plasteel/solarpanel,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(3,1,1) = {"
a
a
a
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
a
a
a
"}
(4,1,1) = {"
a
a
a
c
g
h
d
d
d
d
d
e
d
d
d
d
d
h
k
c
a
a
a
"}
(5,1,1) = {"
a
a
a
c
h
d
d
e
a
a
j
a
j
a
a
d
d
i
h
c
a
a
a
"}
(6,1,1) = {"
a
a
a
c
i
a
a
j
a
l
q
a
r
o
a
j
a
a
d
c
a
a
a
"}
(7,1,1) = {"
a
a
c
c
d
a
o
r
p
m
q
p
r
n
p
q
l
a
d
c
c
a
a
"}
(8,1,1) = {"
a
a
c
d
d
a
n
r
a
a
q
a
r
a
a
q
m
a
d
d
c
a
a
"}
(9,1,1) = {"
a
a
c
d
a
a
p
r
r
p
q
p
r
p
q
q
p
a
a
d
c
a
a
"}
(10,1,1) = {"
a
a
c
d
a
l
p
a
p
p
p
p
p
p
p
a
p
o
a
d
c
a
a
"}
(11,1,1) = {"
a
a
c
d
j
m
q
q
q
p
s
t
s
p
r
r
r
n
j
e
c
a
a
"}
(12,1,1) = {"
a
a
c
e
a
a
p
a
p
p
t
u
t
p
p
a
p
a
a
d
c
a
a
"}
(13,1,1) = {"
a
a
c
d
j
n
r
r
r
p
s
t
s
p
q
q
q
m
j
d
c
a
a
"}
(14,1,1) = {"
a
a
c
d
a
o
p
a
p
p
p
p
p
p
p
a
p
l
a
i
c
a
a
"}
(15,1,1) = {"
a
a
c
d
a
a
p
q
q
p
r
p
q
p
r
r
p
a
a
d
c
a
a
"}
(16,1,1) = {"
a
a
c
f
d
a
m
q
a
a
r
a
q
a
a
r
n
a
d
d
c
a
a
"}
(17,1,1) = {"
a
a
c
c
d
a
l
q
p
n
r
p
q
m
p
r
o
a
d
c
c
a
a
"}
(18,1,1) = {"
a
a
a
c
d
a
a
j
a
o
r
a
q
l
a
j
a
a
d
c
a
a
a
"}
(19,1,1) = {"
a
a
a
c
h
i
d
d
a
a
j
a
j
a
a
d
e
d
h
c
a
a
a
"}
(20,1,1) = {"
a
a
a
c
k
h
d
d
e
d
d
d
d
d
d
d
d
h
v
c
a
a
a
"}
(21,1,1) = {"
a
a
a
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
a
a
a
"}
(22,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+724
View File
@@ -0,0 +1,724 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"b" = (
/turf/closed/wall/mineral/iron,
/area/mafia)
"c" = (
/turf/closed/wall/rust,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/turf/closed/indestructible/fakedoor,
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/structure/closet/crate/coffin,
/turf/open/floor/carpet/red,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/turf/open/floor/carpet/red,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/chapel{
dir = 1
},
/area/mafia)
"o" = (
/obj/structure/closet/crate/coffin,
/turf/open/floor/plasteel/chapel{
dir = 4
},
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/obj/effect/spawner/structure/window/plastitanium,
/turf/open/space/basic,
/area/mafia)
"q" = (
/turf/open/floor/carpet/red,
/area/mafia)
"r" = (
/turf/open/floor/plasteel/chapel{
dir = 8
},
/area/mafia)
"t" = (
/turf/open/floor/carpet/royalblack,
/area/mafia)
"u" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/turf/open/floor/carpet/royalblack,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"D" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/chapel{
dir = 4
},
/area/mafia)
"E" = (
/turf/open/floor/plasteel/chapel{
dir = 4
},
/area/mafia)
"H" = (
/obj/structure/closet/cabinet{
anchored = 1
},
/turf/open/floor/carpet/red,
/area/mafia)
"J" = (
/obj/structure/closet/crate/coffin,
/turf/open/floor/plasteel/chapel{
dir = 1
},
/area/mafia)
"M" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/chapel{
dir = 8
},
/area/mafia)
"N" = (
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/chapel,
/area/mafia)
"O" = (
/turf/open/floor/plasteel/chapel,
/area/mafia)
"P" = (
/obj/structure/closet/crate/coffin,
/turf/open/floor/plasteel/chapel,
/area/mafia)
"Q" = (
/obj/structure/closet/crate/coffin,
/turf/open/floor/plasteel/chapel{
dir = 8
},
/area/mafia)
"X" = (
/turf/open/floor/plasteel/chapel{
dir = 1
},
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(3,1,1) = {"
a
b
b
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
b
b
a
"}
(4,1,1) = {"
a
b
b
c
g
h
d
d
d
d
d
e
d
d
d
d
d
h
k
c
b
b
a
"}
(5,1,1) = {"
a
b
b
c
h
d
d
e
b
b
j
b
j
b
b
d
d
i
h
c
b
b
a
"}
(6,1,1) = {"
a
b
b
c
i
b
b
j
b
l
q
b
X
Q
b
j
b
b
d
c
b
b
a
"}
(7,1,1) = {"
a
b
c
c
d
b
J
r
p
m
q
p
E
N
p
q
l
b
d
c
c
b
a
"}
(8,1,1) = {"
a
b
c
d
d
b
D
O
b
b
q
b
r
b
b
q
m
b
d
d
c
b
a
"}
(9,1,1) = {"
a
b
c
d
b
b
p
X
r
p
q
p
O
p
q
q
p
b
b
d
c
b
a
"}
(10,1,1) = {"
a
b
c
d
b
l
p
b
p
p
p
p
p
p
p
b
p
Q
b
d
c
b
a
"}
(11,1,1) = {"
a
b
c
d
j
m
q
q
q
p
t
t
t
p
X
r
E
N
j
e
c
b
a
"}
(12,1,1) = {"
a
b
c
e
b
b
p
b
p
p
t
u
t
p
p
b
p
b
b
d
c
b
a
"}
(13,1,1) = {"
a
b
c
d
j
n
r
E
O
p
t
t
t
p
q
q
q
m
j
d
c
b
a
"}
(14,1,1) = {"
a
b
c
d
b
o
p
b
p
p
p
p
p
p
p
b
p
l
b
i
c
b
a
"}
(15,1,1) = {"
a
b
c
d
b
b
p
q
q
p
X
p
q
p
E
O
p
b
b
d
c
b
a
"}
(16,1,1) = {"
a
b
c
f
d
b
m
q
b
b
E
b
q
b
b
X
M
b
d
d
c
b
a
"}
(17,1,1) = {"
a
b
c
c
d
b
l
q
p
n
r
p
q
m
p
E
P
b
d
c
c
b
a
"}
(18,1,1) = {"
a
b
b
c
d
b
b
j
b
o
O
b
q
H
b
j
b
b
d
c
b
b
a
"}
(19,1,1) = {"
a
b
b
c
h
i
d
d
b
b
j
b
j
b
b
d
e
d
h
c
b
b
a
"}
(20,1,1) = {"
a
b
b
c
k
h
d
d
e
d
d
d
d
d
d
d
d
h
v
c
b
b
a
"}
(21,1,1) = {"
a
b
b
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
b
b
a
"}
(22,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+976
View File
@@ -0,0 +1,976 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"c" = (
/turf/closed/wall/rust,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/obj/machinery/door/airlock/external{
max_integrity = 99999;
name = "Maintenance"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plating,
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/grass/fakebasalt,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/turf/open/floor/grass/fakebasalt,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 9
},
/obj/effect/turf_decal/trimline/brown/filled/corner,
/turf/open/floor/plasteel,
/area/mafia)
"o" = (
/obj/effect/turf_decal/trimline/brown/filled/end{
icon_state = "trimline_end_fill";
dir = 4
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/closed/indestructible/fakeglass,
/area/mafia)
"q" = (
/turf/open/floor/grass/fakebasalt,
/area/mafia)
"r" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 9
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"s" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 9
},
/turf/open/floor/plasteel,
/area/mafia)
"t" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"u" = (
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red,
/turf/open/floor/plasteel/dark,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"w" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 1
},
/obj/effect/turf_decal/trimline/brown/filled/corner,
/turf/open/floor/plasteel,
/area/mafia)
"x" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 1
},
/obj/effect/turf_decal/trimline/brown/filled/line,
/turf/open/floor/plasteel,
/area/mafia)
"y" = (
/obj/effect/turf_decal/trimline/brown/filled/end{
icon_state = "trimline_end_fill";
dir = 4
},
/turf/open/floor/plasteel,
/area/mafia)
"z" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 5
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"A" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 6
},
/turf/open/floor/plasteel,
/area/mafia)
"B" = (
/obj/effect/turf_decal/trimline/brown/filled/end{
icon_state = "trimline_end_fill";
dir = 1
},
/turf/open/floor/plasteel,
/area/mafia)
"C" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 4
},
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 8
},
/turf/open/floor/plasteel,
/area/mafia)
"D" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 10
},
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 4
},
/turf/open/floor/plasteel,
/area/mafia)
"E" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 1
},
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 8
},
/turf/open/floor/plasteel,
/area/mafia)
"F" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 5
},
/turf/open/floor/plasteel,
/area/mafia)
"G" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 10
},
/turf/open/floor/plasteel,
/area/mafia)
"H" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 10
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"I" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 6
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"J" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 6
},
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 1
},
/turf/open/floor/plasteel,
/area/mafia)
"K" = (
/obj/effect/turf_decal/trimline/brown/filled/end{
icon_state = "trimline_end_fill";
dir = 8
},
/obj/structure/closet{
desc = "It's a storage unit. For mining stuff. Y'know.";
icon_state = "mining";
name = "miner equipment locker"
},
/obj/item/clothing/under/rank/cargo/miner/lavaland,
/turf/open/floor/plasteel,
/area/mafia)
"L" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 5
},
/turf/open/floor/plasteel,
/area/mafia)
"M" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 10
},
/turf/open/floor/plasteel,
/area/mafia)
"N" = (
/obj/effect/turf_decal/trimline/brown/filled/line,
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 4
},
/turf/open/floor/plasteel,
/area/mafia)
"O" = (
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 8
},
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 5
},
/turf/open/floor/plasteel,
/area/mafia)
"P" = (
/obj/effect/turf_decal/trimline/brown/filled/end,
/turf/open/floor/plasteel,
/area/mafia)
"Q" = (
/obj/effect/landmark/mafia,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 9
},
/turf/open/floor/plasteel,
/area/mafia)
"R" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 4
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"S" = (
/obj/effect/turf_decal/trimline/brown/filled/end{
icon_state = "trimline_end_fill";
dir = 8
},
/turf/open/floor/plasteel,
/area/mafia)
"T" = (
/obj/effect/turf_decal/trimline/brown/filled/line,
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 1
},
/turf/open/floor/plasteel,
/area/mafia)
"U" = (
/obj/effect/turf_decal/trimline/brown/filled/line,
/obj/effect/turf_decal/trimline/brown/filled/corner{
icon_state = "trimline_corner_fill";
dir = 1
},
/turf/open/floor/plasteel,
/area/mafia)
"V" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
icon_state = "trimline_fill";
dir = 6
},
/turf/open/floor/plasteel,
/area/mafia)
"W" = (
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"X" = (
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/effect/turf_decal/tile/red{
dir = 4
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"Y" = (
/turf/closed/indestructible{
icon = 'icons/turf/walls/reinforced_wall.dmi';
icon_state = "r_wall";
name = "reinforced wall"
},
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
a
"}
(3,1,1) = {"
a
Y
Y
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
Y
Y
a
"}
(4,1,1) = {"
a
Y
Y
c
g
h
d
d
d
d
d
e
d
d
d
d
d
h
k
c
Y
Y
a
"}
(5,1,1) = {"
a
Y
Y
c
h
d
d
e
Y
Y
j
Y
j
Y
Y
d
d
i
h
c
Y
Y
a
"}
(6,1,1) = {"
a
Y
Y
c
i
Y
Y
j
Y
l
q
Y
s
H
Y
j
Y
Y
d
c
Y
Y
a
"}
(7,1,1) = {"
a
Y
c
c
d
Y
r
M
p
m
q
p
w
A
p
q
l
Y
d
c
c
Y
a
"}
(8,1,1) = {"
a
Y
c
d
d
Y
L
N
Y
Y
q
Y
x
Y
Y
q
m
Y
d
d
c
Y
a
"}
(9,1,1) = {"
a
Y
c
d
Y
Y
p
O
P
p
q
p
y
p
q
q
p
Y
Y
d
c
Y
a
"}
(10,1,1) = {"
a
Y
c
d
Y
l
p
Y
p
p
p
p
p
p
p
Y
p
K
Y
d
c
Y
a
"}
(11,1,1) = {"
a
Y
c
d
j
m
q
q
q
p
q
u
q
p
B
C
C
J
j
e
c
Y
a
"}
(12,1,1) = {"
a
Y
c
e
Y
Y
p
Y
p
p
t
R
X
p
p
Y
p
Y
Y
d
c
Y
a
"}
(13,1,1) = {"
a
Y
c
d
j
n
C
C
P
p
q
W
q
p
q
q
q
m
j
d
c
Y
a
"}
(14,1,1) = {"
a
Y
c
d
Y
o
p
Y
p
p
p
p
p
p
p
Y
p
l
Y
i
c
Y
a
"}
(15,1,1) = {"
a
Y
c
d
Y
Y
p
q
q
p
S
p
q
p
B
D
p
Y
Y
d
c
Y
a
"}
(16,1,1) = {"
a
Y
c
f
d
Y
m
q
Y
Y
T
Y
q
Y
Y
E
G
Y
d
d
c
Y
a
"}
(17,1,1) = {"
a
Y
c
c
d
Y
l
q
p
Q
U
p
q
m
p
F
I
Y
d
c
c
Y
a
"}
(18,1,1) = {"
a
Y
Y
c
d
Y
Y
j
Y
z
V
Y
q
l
Y
j
Y
Y
d
c
Y
Y
a
"}
(19,1,1) = {"
a
Y
Y
c
h
i
d
d
Y
Y
j
Y
j
Y
Y
d
e
d
h
c
Y
Y
a
"}
(20,1,1) = {"
a
Y
Y
c
k
h
d
d
e
d
d
d
d
d
d
d
d
h
v
c
Y
Y
a
"}
(21,1,1) = {"
a
Y
Y
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
Y
Y
a
"}
(22,1,1) = {"
a
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+658
View File
@@ -0,0 +1,658 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"b" = (
/turf/open/indestructible/reebe_void,
/area/mafia)
"c" = (
/turf/open/indestructible/reebe_void/spawning/lattices,
/area/mafia)
"d" = (
/obj/mafia_game_board,
/turf/open/indestructible/reebe_void/spawning/lattices,
/area/mafia)
"e" = (
/turf/closed/wall/clockwork,
/area/mafia)
"f" = (
/turf/open/floor/clockwork/reebe,
/area/mafia)
"g" = (
/obj/effect/landmark/mafia,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"h" = (
/obj/structure/window/reinforced/clockwork/fulltile,
/obj/structure/grille/ratvar,
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/open/floor/clockwork/reebe,
/area/mafia)
"i" = (
/obj/structure/bed,
/obj/item/bedsheet/orange,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"j" = (
/obj/structure/chair/brass{
dir = 4
},
/turf/open/floor/clockwork/reebe,
/area/mafia)
"k" = (
/obj/structure/chair/brass,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"l" = (
/obj/structure/chair/brass{
dir = 8
},
/turf/open/floor/clockwork/reebe,
/area/mafia)
"m" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/obj/structure/chair/brass,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"n" = (
/obj/structure/chair/brass{
icon_state = "brass_chair";
dir = 1
},
/turf/open/floor/clockwork/reebe,
/area/mafia)
"o" = (
/obj/item/toy/plush/plushvar,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"p" = (
/obj/structure/window/reinforced/clockwork/fulltile,
/obj/structure/grille/ratvar,
/turf/open/floor/clockwork/reebe,
/area/mafia)
"q" = (
/obj/item/toy/plush/plushvar,
/turf/open/indestructible/reebe_void/spawning/lattices,
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(3,1,1) = {"
a
b
b
c
c
c
b
b
b
b
b
b
b
b
b
b
b
c
c
c
b
b
a
"}
(4,1,1) = {"
a
b
b
c
d
c
b
b
b
b
b
b
b
b
b
b
b
q
d
c
b
b
a
"}
(5,1,1) = {"
a
b
b
c
c
c
c
b
e
e
p
e
p
e
e
b
b
c
c
c
b
b
a
"}
(6,1,1) = {"
a
b
b
b
b
p
p
e
e
i
f
e
f
i
e
e
p
p
c
b
b
b
a
"}
(7,1,1) = {"
a
b
b
b
b
p
i
f
h
g
f
h
f
g
h
f
i
p
b
b
b
b
a
"}
(8,1,1) = {"
a
b
b
b
b
e
g
f
e
e
f
e
f
e
e
f
g
e
b
b
b
b
a
"}
(9,1,1) = {"
a
b
b
b
e
e
h
f
j
h
j
h
j
h
j
f
h
e
e
b
b
b
a
"}
(10,1,1) = {"
a
b
b
b
e
i
h
e
h
h
h
h
h
h
h
e
h
i
e
b
b
b
a
"}
(11,1,1) = {"
a
b
b
b
p
g
f
f
k
h
f
f
o
h
n
f
f
g
p
b
b
b
a
"}
(12,1,1) = {"
a
b
b
b
e
e
h
e
h
h
f
m
f
h
h
e
h
e
e
b
b
b
a
"}
(13,1,1) = {"
a
b
b
b
p
g
f
f
k
h
f
f
f
h
n
f
f
g
p
b
b
b
a
"}
(14,1,1) = {"
a
b
b
b
e
i
h
e
h
h
h
h
h
h
h
e
h
i
e
b
b
b
a
"}
(15,1,1) = {"
a
b
b
b
e
e
h
f
l
h
l
h
l
h
l
f
h
e
e
b
b
b
a
"}
(16,1,1) = {"
a
b
b
b
b
e
g
f
e
e
f
e
f
e
e
f
g
e
b
b
b
b
a
"}
(17,1,1) = {"
a
b
b
b
b
p
i
f
h
g
f
h
f
g
h
f
i
p
b
b
b
b
a
"}
(18,1,1) = {"
a
b
b
b
b
p
p
e
e
f
i
e
i
f
e
e
p
p
c
b
b
b
a
"}
(19,1,1) = {"
a
b
b
c
c
c
c
b
e
e
p
e
p
e
e
b
b
c
c
c
b
b
a
"}
(20,1,1) = {"
a
b
b
c
d
c
b
b
b
b
b
b
b
b
b
b
b
c
d
c
b
b
a
"}
(21,1,1) = {"
a
b
b
c
c
c
b
b
b
b
b
b
b
b
b
b
b
c
c
c
b
b
a
"}
(22,1,1) = {"
a
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
b
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+755
View File
@@ -0,0 +1,755 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/obj/machinery/door/airlock/maintenance_hatch{
max_integrity = 99999;
name = "Maintenance"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plating,
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/item/bedsheet/brown,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/turf/open/floor/holofloor/wood,
/area/mafia)
"n" = (
/obj/item/bedsheet/green,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"o" = (
/obj/item/bedsheet/blue,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/closed/indestructible/fakeglass,
/area/mafia)
"q" = (
/turf/open/floor/plasteel/dark,
/area/mafia)
"r" = (
/turf/open/floor/plasteel,
/area/mafia)
"s" = (
/turf/closed/wall/ice,
/area/mafia)
"t" = (
/turf/open/floor/holofloor/snow,
/area/mafia)
"u" = (
/obj/structure/statue/plasma/scientist{
anchored = 1
},
/turf/open/floor/holofloor/snow,
/area/mafia)
"v" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/turf/open/floor/holofloor/snow,
/area/mafia)
"w" = (
/turf/open/lava/plasma,
/area/mafia)
"x" = (
/obj/machinery/door/airlock/external{
max_integrity = 9999;
opacity = 0
},
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plasteel/dark,
/area/mafia)
"y" = (
/obj/effect/landmark/mafia,
/turf/open/floor/holofloor/snow,
/area/mafia)
"z" = (
/obj/structure/lattice/catwalk,
/turf/open/lava/plasma,
/area/mafia)
"A" = (
/obj/machinery/door/airlock/external{
max_integrity = 9999
},
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plasteel,
/area/mafia)
"B" = (
/obj/effect/landmark/mafia,
/obj/structure/lattice/catwalk,
/turf/open/lava/plasma,
/area/mafia)
"C" = (
/obj/mafia_game_board,
/turf/open/floor/holofloor/snow,
/area/mafia)
"D" = (
/obj/structure/closet/crate/science,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/shoes/winterboots,
/turf/open/floor/holofloor/snow,
/area/mafia)
"E" = (
/obj/structure/lattice/catwalk,
/obj/structure/closet/crate/critter,
/obj/item/clothing/suit/hooded/wintercoat/miner,
/obj/item/clothing/shoes/winterboots,
/turf/open/lava/plasma,
/area/mafia)
"F" = (
/turf/open/floor/holofloor/wood,
/area/mafia)
"G" = (
/obj/item/bedsheet/orange,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"H" = (
/obj/item/bedsheet/black,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"I" = (
/obj/item/bedsheet/red,
/obj/structure/bed,
/turf/open/floor/holofloor/wood,
/area/mafia)
"J" = (
/turf/open/floor/plating/snowed/smoothed,
/area/mafia)
"K" = (
/turf/closed/indestructible/rock/snow,
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
s
K
K
K
K
K
K
K
K
K
K
a
"}
(3,1,1) = {"
a
a
a
s
s
s
s
s
s
s
s
s
w
w
t
w
w
w
w
w
w
K
a
"}
(4,1,1) = {"
a
a
a
s
g
h
d
d
d
d
d
s
t
w
w
w
w
w
C
w
w
K
a
"}
(5,1,1) = {"
a
a
a
s
h
d
d
e
s
s
j
s
p
p
p
w
w
w
w
w
w
K
a
"}
(6,1,1) = {"
a
a
a
s
i
s
s
j
s
H
F
s
t
D
p
p
p
p
w
w
w
K
a
"}
(7,1,1) = {"
a
a
s
s
d
s
o
F
p
m
q
p
t
y
p
z
E
p
w
t
w
K
a
"}
(8,1,1) = {"
a
a
s
d
d
s
m
r
s
s
q
s
t
p
p
z
B
p
w
w
w
K
a
"}
(9,1,1) = {"
a
a
s
d
s
s
p
r
r
p
q
p
t
p
z
z
p
p
p
w
w
K
a
"}
(10,1,1) = {"
a
a
s
d
s
l
p
s
p
p
p
p
p
p
p
p
p
D
p
w
w
K
a
"}
(11,1,1) = {"
a
a
s
d
j
m
F
q
q
x
J
t
t
p
t
t
t
y
p
w
t
K
a
"}
(12,1,1) = {"
a
a
s
e
s
a
p
s
p
p
u
v
t
p
p
p
p
p
p
w
w
K
a
"}
(13,1,1) = {"
a
a
s
d
j
m
F
r
r
A
J
t
t
p
t
t
t
y
p
w
w
K
a
"}
(14,1,1) = {"
a
a
s
d
s
n
p
s
p
p
p
p
p
p
p
p
p
D
p
w
w
K
a
"}
(15,1,1) = {"
a
a
s
d
s
s
p
q
q
p
r
p
t
p
z
z
p
p
p
w
w
K
a
"}
(16,1,1) = {"
a
a
s
f
d
s
m
q
s
s
r
s
t
p
p
z
B
p
w
w
w
K
a
"}
(17,1,1) = {"
a
a
s
s
d
s
G
F
p
m
r
p
t
y
p
z
E
p
w
w
w
K
a
"}
(18,1,1) = {"
a
a
a
s
d
s
s
j
s
I
F
s
t
D
p
p
p
p
w
t
w
K
a
"}
(19,1,1) = {"
a
a
a
s
h
i
d
d
s
s
j
s
p
p
p
t
w
w
w
w
w
K
a
"}
(20,1,1) = {"
a
a
a
s
k
h
d
d
e
d
d
s
t
w
w
w
w
w
C
w
w
K
a
"}
(21,1,1) = {"
a
a
a
s
s
s
s
s
s
s
s
s
w
w
w
w
w
w
w
w
w
K
a
"}
(22,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
s
K
K
K
K
K
K
K
K
K
K
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+690
View File
@@ -0,0 +1,690 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"b" = (
/obj/structure/closet/cabinet{
anchored = 1
},
/obj/item/reagent_containers/food/snacks/sashimi,
/turf/open/floor/carpet/black,
/area/mafia)
"c" = (
/turf/closed/wall/rust,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/turf/closed/wall/mineral/wood{
desc = "A door that goes nowhere. How kafkaesque.";
icon = 'icons/obj/doors/mineral_doors.dmi';
icon_state = "paperframe";
name = "Door"
},
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"m" = (
/obj/effect/landmark/mafia,
/turf/open/floor/wood,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/turf/open/floor/carpet/black,
/area/mafia)
"o" = (
/obj/structure/closet/cabinet{
anchored = 1
},
/obj/item/reagent_containers/food/snacks/sashimi,
/turf/open/floor/wood,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/turf/closed/indestructible/fakeglass{
icon = 'icons/obj/smooth_structures/paperframes.dmi';
icon_state = "paper"
},
/area/mafia)
"q" = (
/turf/open/floor/wood,
/area/mafia)
"r" = (
/turf/open/floor/carpet/black,
/area/mafia)
"t" = (
/turf/open/floor/plating/beach/sand,
/area/mafia)
"u" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/turf/open/floor/plating/beach/sand,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"B" = (
/obj/structure/showcase{
density = 0;
desc = "Welp, only one way to recover your honour.";
icon = 'icons/obj/items_and_weapons.dmi';
icon_state = "katana";
name = "seppuku katana"
},
/turf/open/floor/plating/beach/sand,
/area/mafia)
"S" = (
/turf/closed/wall/mineral/wood,
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
a
"}
(3,1,1) = {"
a
S
S
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
S
S
a
"}
(4,1,1) = {"
a
S
S
c
g
h
d
d
d
d
d
e
d
d
d
d
d
h
k
c
S
S
a
"}
(5,1,1) = {"
a
S
S
c
h
d
d
e
S
S
j
S
j
S
S
d
d
i
h
c
S
S
a
"}
(6,1,1) = {"
a
S
S
c
i
S
S
j
S
o
q
S
r
b
S
j
S
S
d
c
S
S
a
"}
(7,1,1) = {"
a
S
c
c
d
S
b
r
p
m
q
p
r
n
p
q
o
S
d
c
c
S
a
"}
(8,1,1) = {"
a
S
c
d
d
S
n
r
S
S
q
S
r
S
S
q
m
S
d
d
c
S
a
"}
(9,1,1) = {"
a
S
c
d
S
S
p
r
r
p
q
p
r
p
q
q
p
S
S
d
c
S
a
"}
(10,1,1) = {"
a
S
c
d
S
o
p
S
p
p
p
p
p
p
p
S
p
b
S
d
c
S
a
"}
(11,1,1) = {"
a
S
c
d
j
m
q
q
q
p
t
t
t
p
r
r
r
n
j
e
c
S
a
"}
(12,1,1) = {"
a
S
c
e
S
S
p
S
p
p
t
u
B
p
p
S
p
S
S
d
c
S
a
"}
(13,1,1) = {"
a
S
c
d
j
n
r
r
r
p
t
t
t
p
q
q
q
m
j
d
c
S
a
"}
(14,1,1) = {"
a
S
c
d
S
b
p
S
p
p
p
p
p
p
p
S
p
o
S
i
c
S
a
"}
(15,1,1) = {"
a
S
c
d
S
S
p
q
q
p
r
p
q
p
r
r
p
S
S
d
c
S
a
"}
(16,1,1) = {"
a
S
c
f
d
S
m
q
S
S
r
S
q
S
S
r
n
S
d
d
c
S
a
"}
(17,1,1) = {"
a
S
c
c
d
S
o
q
p
n
r
p
q
m
p
r
b
S
d
c
c
S
a
"}
(18,1,1) = {"
a
S
S
c
d
S
S
j
S
b
r
S
q
o
S
j
S
S
d
c
S
S
a
"}
(19,1,1) = {"
a
S
S
c
h
i
d
d
S
S
j
S
j
S
S
d
e
d
h
c
S
S
a
"}
(20,1,1) = {"
a
S
S
c
k
h
d
d
e
d
d
d
d
d
d
d
d
h
v
c
S
S
a
"}
(21,1,1) = {"
a
S
S
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
S
S
a
"}
(22,1,1) = {"
a
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
S
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+869
View File
@@ -0,0 +1,869 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/closed/indestructible/riveted,
/area/mafia)
"b" = (
/obj/structure/closet/syndicate{
desc = "A storage closet for syndicate conflict resolution operatives.";
name = "red closet"
},
/obj/item/clothing/under/syndicate/tacticool,
/obj/item/clothing/under/syndicate/tacticool/skirt,
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"c" = (
/turf/closed/wall/rust,
/area/mafia)
"d" = (
/turf/open/floor/plating,
/area/mafia)
"e" = (
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"f" = (
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"g" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/mafia)
"h" = (
/obj/structure/grille/indestructable,
/turf/open/floor/plating,
/area/mafia)
"i" = (
/turf/open/floor/plating{
icon_state = "platingdmg1"
},
/area/mafia)
"j" = (
/obj/machinery/door/airlock/maintenance_hatch{
max_integrity = 99999;
name = "Maintenance"
},
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/plating,
/area/mafia)
"k" = (
/obj/mafia_game_board,
/turf/open/floor/plating,
/area/mafia)
"l" = (
/obj/structure/closet/syndicate{
desc = "A storage closet for syndicate conflict resolution operatives.";
name = "red closet"
},
/obj/item/clothing/under/syndicate/tacticool,
/obj/item/clothing/under/syndicate/tacticool/skirt,
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 4
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"m" = (
/obj/structure/closet/syndicate{
desc = "A storage closet for syndicate conflict resolution operatives.";
name = "red closet"
},
/obj/item/clothing/under/syndicate/tacticool,
/obj/item/clothing/under/syndicate/tacticool/skirt,
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"n" = (
/obj/effect/landmark/mafia,
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"o" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"p" = (
/obj/machinery/door/poddoor/preopen{
desc = "When it's time to sleep, the lights will go out. Remember - no one in space can hear you scream.";
id = "mafia";
max_integrity = 99999;
name = "Station Night Shutters"
},
/obj/effect/spawner/structure/window/plastitanium,
/turf/open/space/basic,
/area/mafia)
"q" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/chair/office{
dir = 1;
name = "tactical swivel chair"
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"r" = (
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"s" = (
/turf/open/floor/mineral/plastitanium/red,
/area/mafia)
"t" = (
/turf/open/floor/circuit/red,
/area/mafia)
"u" = (
/obj/effect/baseturf_helper/asteroid,
/obj/effect/landmark/mafia/town_center,
/obj/structure/chair,
/turf/open/floor/circuit/red,
/area/mafia)
"v" = (
/obj/mafia_game_board,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
/area/mafia)
"w" = (
/turf/closed/indestructible/syndicate,
/area/mafia)
"x" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/chair/office{
dir = 4;
name = "tactical swivel chair"
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"y" = (
/obj/structure/chair/office{
dir = 2;
name = "tactical swivel chair"
},
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"z" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/chair/office{
dir = 2;
name = "tactical swivel chair"
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"A" = (
/obj/structure/chair/office{
dir = 8;
name = "tactical swivel chair"
},
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"B" = (
/obj/structure/chair/office{
dir = 4;
name = "tactical swivel chair"
},
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"C" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/chair/office{
dir = 8;
name = "tactical swivel chair"
},
/turf/open/floor/plasteel/dark,
/area/mafia)
"E" = (
/obj/structure/chair/office{
dir = 1;
name = "tactical swivel chair"
},
/turf/open/floor/mineral/plastitanium,
/area/mafia)
"F" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/structure/closet/syndicate{
desc = "A storage closet for syndicate conflict resolution operatives.";
name = "red closet"
},
/obj/item/clothing/under/syndicate/tacticool,
/obj/item/clothing/under/syndicate/tacticool/skirt,
/turf/open/floor/plasteel/dark,
/area/mafia)
"G" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/item/clothing/under/syndicate/tacticool,
/obj/structure/closet/syndicate{
desc = "A storage closet for syndicate conflict resolution operatives.";
name = "red closet"
},
/obj/item/clothing/under/syndicate/tacticool/skirt,
/turf/open/floor/plasteel/dark,
/area/mafia)
"H" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
dir = 4
},
/obj/effect/turf_decal/tile/red{
dir = 8
},
/obj/effect/turf_decal/tile/red{
dir = 1
},
/obj/effect/landmark/mafia,
/turf/open/floor/plasteel/dark,
/area/mafia)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
a
"}
(3,1,1) = {"
a
w
w
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
w
w
a
"}
(4,1,1) = {"
a
w
w
c
g
h
d
d
d
d
d
e
d
d
d
d
d
h
k
c
w
w
a
"}
(5,1,1) = {"
a
w
w
c
h
d
d
e
w
w
j
w
j
w
w
d
d
i
h
c
w
w
a
"}
(6,1,1) = {"
a
w
w
c
i
w
w
j
w
b
r
w
o
F
w
j
w
w
d
c
w
w
a
"}
(7,1,1) = {"
a
w
c
c
d
w
l
o
p
n
r
p
o
H
p
r
b
w
d
c
c
w
a
"}
(8,1,1) = {"
a
w
c
d
d
w
H
o
w
w
r
w
o
w
w
r
n
w
d
d
c
w
a
"}
(9,1,1) = {"
a
w
c
d
w
w
p
o
x
p
B
p
x
p
B
r
p
w
w
d
c
w
a
"}
(10,1,1) = {"
a
w
c
d
w
b
p
w
p
p
p
p
p
p
p
w
p
m
w
d
c
w
a
"}
(11,1,1) = {"
a
w
c
d
j
n
r
r
y
p
s
t
s
p
q
o
o
H
j
e
c
w
a
"}
(12,1,1) = {"
a
w
c
e
w
w
p
w
p
p
t
u
t
p
p
w
p
w
w
d
c
w
a
"}
(13,1,1) = {"
a
w
c
d
j
H
o
o
z
p
s
t
s
p
E
r
r
n
j
d
c
w
a
"}
(14,1,1) = {"
a
w
c
d
w
l
p
w
p
p
p
p
p
p
p
w
p
b
w
i
c
w
a
"}
(15,1,1) = {"
a
w
c
d
w
w
p
r
A
p
C
p
A
p
C
o
p
w
w
d
c
w
a
"}
(16,1,1) = {"
a
w
c
f
d
w
n
r
w
w
o
w
r
w
w
o
H
w
d
d
c
w
a
"}
(17,1,1) = {"
a
w
c
c
d
w
b
r
p
H
o
p
r
n
p
o
G
w
d
c
c
w
a
"}
(18,1,1) = {"
a
w
w
c
d
w
w
j
w
F
o
w
r
b
w
j
w
w
d
c
w
w
a
"}
(19,1,1) = {"
a
w
w
c
h
i
d
d
w
w
j
w
j
w
w
d
e
d
h
c
w
w
a
"}
(20,1,1) = {"
a
w
w
c
k
h
d
d
e
d
d
d
d
d
d
d
d
h
v
c
w
w
a
"}
(21,1,1) = {"
a
w
w
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
w
w
a
"}
(22,1,1) = {"
a
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
a
"}
(23,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+220 -214
View File
@@ -112,7 +112,7 @@
/obj/machinery/light/small{
dir = 8
},
/turf/closed/mineral/random/snow,
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/unexplored/rivers)
"eH" = (
/obj/machinery/airalarm{
@@ -581,7 +581,7 @@
desc = "A horn off of a bicycle. This one has been charred to hell and back, yet somehow it still honks.";
name = "charred bike horn"
},
/turf/closed/mineral/random/snow,
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/unexplored/rivers)
"nN" = (
/turf/closed/wall/r_wall,
@@ -722,6 +722,9 @@
},
/turf/open/floor/plasteel,
/area/mine/living_quarters)
"rs" = (
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/unexplored/rivers)
"ry" = (
/obj/effect/turf_decal/tile/purple{
dir = 8
@@ -809,6 +812,9 @@
},
/turf/open/floor/plasteel/white,
/area/mine/living_quarters)
"sL" = (
/turf/open/transparent/openspace/icemoon,
/area/icemoon/underground/unexplored/rivers)
"sM" = (
/obj/structure/table,
/obj/item/storage/firstaid/toxin{
@@ -2367,7 +2373,7 @@
/obj/machinery/light/small{
dir = 1
},
/turf/closed/mineral/random/snow,
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/unexplored/rivers)
"WE" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
@@ -29940,9 +29946,9 @@ ah
ah
ah
ah
rs
ah
ah
ah
rs
ah
ah
ah
@@ -30199,8 +30205,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
ah
ah
ah
@@ -30456,8 +30462,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
ah
ah
ah
@@ -30712,10 +30718,10 @@ ah
ah
ah
nE
ah
ah
ah
ah
rs
sL
sL
rs
ah
ah
ah
@@ -30968,11 +30974,11 @@ ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
sL
rs
ah
ah
ah
@@ -31498,8 +31504,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
ah
ah
ah
@@ -31749,14 +31755,14 @@ ah
ah
ah
ah
rs
rs
rs
rs
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
ah
ah
ah
@@ -32005,14 +32011,14 @@ Gw
op
nd
ah
ah
ah
ah
ah
ah
ah
ah
ah
sL
rs
rs
rs
rs
rs
rs
rs
ah
ah
ah
@@ -32262,15 +32268,15 @@ GI
Lg
nd
ah
ah
ah
ah
sL
sL
rs
op
WE
op
ah
ah
ah
rs
rs
rs
ah
ah
ah
@@ -32519,17 +32525,17 @@ GN
Lu
nd
ah
ah
ah
ah
rs
rs
rs
op
sa
op
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
ah
ah
ah
@@ -32782,11 +32788,11 @@ nd
op
WM
op
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
ah
ah
ah
@@ -33039,10 +33045,10 @@ Rx
ry
WO
op
ah
ah
ah
ah
rs
rs
rs
rs
ah
ah
ah
@@ -33296,9 +33302,9 @@ sa
sa
sa
op
ah
ah
ah
rs
rs
rs
ah
ah
ah
@@ -33553,8 +33559,8 @@ TA
sa
Xf
op
ah
ah
rs
rs
ah
ah
ah
@@ -33810,8 +33816,8 @@ TA
sa
sa
op
ah
ah
rs
rs
ah
ah
ah
@@ -37651,8 +37657,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
op
sa
Ho
@@ -37908,8 +37914,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
op
ET
HY
@@ -38165,18 +38171,18 @@ ah
ah
ah
ah
ah
ah
rs
rs
op
op
Iq
op
op
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
ah
ah
ah
@@ -38422,19 +38428,19 @@ ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
op
Iv
op
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
rs
rs
ah
ah
ah
@@ -38680,18 +38686,18 @@ ah
ah
ah
ah
ah
ah
rs
rs
op
Ho
op
ah
ah
ah
ah
ah
ah
ah
rs
rs
sL
rs
rs
rs
rs
ah
ah
ah
@@ -38937,18 +38943,18 @@ ah
ah
ah
ah
ah
ah
sL
rs
op
Ho
op
ah
ah
ah
ah
ah
ah
ah
rs
sL
sL
sL
rs
rs
rs
ah
ah
ah
@@ -39193,21 +39199,21 @@ ah
ah
ah
ah
ah
ah
ah
sL
sL
rs
op
Ho
op
ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
sL
sL
sL
rs
rs
rs
rs
rs
ah
ah
ah
@@ -39444,26 +39450,26 @@ ah
ah
ah
ah
rs
rs
rs
ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
er
IB
er
ah
ah
ah
ah
ah
ah
ah
ah
rs
sL
sL
rs
rs
rs
rs
rs
ah
ah
ah
@@ -39700,24 +39706,24 @@ ah
ah
ah
ah
rs
rs
rs
rs
rs
ah
ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
er
IB
er
ah
ah
ah
ah
ah
rs
sL
sL
rs
rs
ah
ah
ah
@@ -39957,24 +39963,24 @@ ah
ah
ah
ah
ah
rs
eZ
fB
er
rs
ah
ah
ah
ah
ah
ah
rs
rs
er
IB
er
ah
ah
ah
ah
ah
rs
rs
sL
sL
rs
ah
ah
ah
@@ -40213,25 +40219,25 @@ ah
ah
ah
ah
ah
ah
rs
rs
er
fC
er
rs
rs
ah
ah
ah
ah
ah
ah
rs
rs
er
IF
er
ah
ah
ah
ah
ah
rs
rs
sL
sL
rs
ah
ah
ah
@@ -40470,25 +40476,25 @@ ah
ah
ah
ah
ah
rs
er
er
fD
er
er
rs
ah
ah
ah
ah
rs
rs
Be
er
IK
er
er
ah
ah
ah
ah
rs
rs
rs
rs
ah
ah
ah
@@ -40743,8 +40749,8 @@ IM
gS
er
eq
ah
ah
rs
rs
ah
ah
ah
@@ -40983,7 +40989,7 @@ ah
ah
ah
ah
ah
rs
eq
eH
fb
@@ -41000,8 +41006,8 @@ IB
fC
Nt
eq
ah
ah
rs
rs
ah
ah
ah
@@ -41240,7 +41246,7 @@ ah
ah
ah
ah
ah
rs
er
eI
fc
@@ -41497,7 +41503,7 @@ ah
ah
ah
ah
ah
rs
er
eJ
fd
@@ -41774,8 +41780,8 @@ er
Tk
NK
er
ah
ah
rs
rs
ah
ah
ah
@@ -42009,7 +42015,7 @@ ah
ah
ah
ah
ah
rs
dW
ei
es
@@ -42031,9 +42037,9 @@ Rf
Tn
NP
VC
ah
ah
ah
rs
rs
rs
ah
ah
ah
@@ -42265,8 +42271,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
dX
ej
et
@@ -42288,8 +42294,8 @@ er
To
UJ
er
ah
ah
rs
rs
ah
ah
ah
@@ -42522,8 +42528,8 @@ ah
ah
ah
ah
ah
ah
rs
rs
dX
ej
eu
@@ -42780,7 +42786,7 @@ ah
ah
ah
ah
ah
rs
dW
ek
ew
@@ -44069,9 +44075,9 @@ ah
ah
ah
ex
ah
ah
ah
rs
rs
rs
ex
ah
ah
@@ -44324,13 +44330,13 @@ ah
ah
ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
rs
rs
ah
ah
ah
@@ -44581,13 +44587,13 @@ ah
ah
ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
rs
rs
ah
ah
ah
@@ -44839,11 +44845,11 @@ ah
ah
ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
rs
rs
ah
ah
ah
@@ -45097,9 +45103,9 @@ ah
ah
ah
ah
ah
ah
ah
rs
rs
rs
ah
ah
ah
@@ -5,6 +5,9 @@
"b" = (
/turf/closed/mineral/random/high_chance/snow,
/area/icemoon/underground/unexplored/rivers)
"c" = (
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/unexplored/rivers)
"d" = (
/turf/closed/wall,
/area/icemoon/underground/explored)
@@ -19,6 +22,9 @@
/obj/item/gps/mining,
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/explored)
"G" = (
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/mine/maintenance)
"N" = (
/obj/item/flashlight/lantern{
on = 1
@@ -33,6 +39,22 @@
/obj/structure/ladder,
/turf/open/floor/plating/asteroid/snow/icemoon,
/area/icemoon/underground/explored)
"X" = (
/obj/machinery/telecomms/relay/preset/mining,
/obj/machinery/bluespace_beacon,
/obj/structure/window/reinforced{
dir = 1
},
/obj/structure/window/reinforced{
dir = 4
},
/obj/structure/window/reinforced,
/obj/machinery/door/window/eastright{
dir = 8;
req_access_txt = "48"
},
/turf/open/floor/circuit,
/area/icemoon/underground/explored)
(1,1,1) = {"
a
@@ -39499,9 +39521,9 @@ a
a
a
a
a
a
a
c
c
c
a
a
a
@@ -40011,13 +40033,13 @@ a
a
a
a
a
c
e
i
h
h
e
a
c
a
a
a
@@ -40268,13 +40290,13 @@ a
a
a
a
a
c
h
h
T
h
h
a
c
a
a
a
@@ -40525,13 +40547,13 @@ a
a
a
a
a
c
e
N
h
h
G
e
a
c
a
a
a
@@ -40786,7 +40808,7 @@ a
d
O
h
e
X
d
a
a
@@ -41041,9 +41063,9 @@ a
a
a
a
a
a
a
c
c
c
a
a
a
File diff suppressed because it is too large Load Diff
+8 -8
View File
@@ -102,7 +102,7 @@
/turf/open/floor/plasteel,
/area/engine/gravity_generator)
"au" = (
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/space)
"av" = (
/obj/structure/stairs{
@@ -1407,7 +1407,7 @@
},
/area/hallway/secondary/service)
"eC" = (
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/maintenance/department/bridge)
"eD" = (
/obj/effect/turf_decal/stripes/asteroid/line{
@@ -1542,7 +1542,7 @@
/turf/open/floor/plating,
/area/space)
"iu" = (
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/hallway/secondary/service)
"iK" = (
/turf/open/floor/plasteel{
@@ -1593,7 +1593,7 @@
},
/area/hallway/secondary/service)
"nx" = (
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/space/nearstation)
"nz" = (
/obj/machinery/light{
@@ -1633,7 +1633,7 @@
/turf/open/floor/plating,
/area/maintenance/department/bridge)
"qo" = (
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/engine/storage)
"qR" = (
/obj/effect/turf_decal/stripes/white/line{
@@ -1646,7 +1646,7 @@
/obj/machinery/light{
dir = 8
},
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/engine/storage)
"sh" = (
/turf/open/floor/plasteel{
@@ -1746,7 +1746,7 @@
/area/construction)
"Bk" = (
/obj/structure/grille,
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/space/nearstation)
"Bm" = (
/obj/machinery/light{
@@ -1876,7 +1876,7 @@
"Ob" = (
/obj/structure/lattice,
/obj/structure/grille,
/turf/open/openspace,
/turf/open/transparent/openspace,
/area/space/nearstation)
"Og" = (
/obj/machinery/airalarm/directional/north,
+64 -6
View File
@@ -13490,6 +13490,9 @@
/obj/structure/table/wood,
/obj/item/instrument/piano_synth,
/obj/item/instrument/guitar,
/obj/structure/sign/painting{
pixel_x = -32
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"Fg" = (
@@ -13794,6 +13797,9 @@
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"FX" = (
/obj/structure/sign/painting{
pixel_x = 32
},
/turf/open/floor/plasteel/stairs,
/area/centcom/holding)
"FZ" = (
@@ -14421,6 +14427,9 @@
dir = 8
},
/obj/structure/musician/piano,
/obj/structure/sign/painting{
pixel_x = -32
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"Hk" = (
@@ -16225,6 +16234,12 @@
dir = 1
},
/obj/structure/table/wood,
/obj/item/storage/crayons,
/obj/item/storage/crayons,
/obj/item/storage/crayons,
/obj/structure/sign/painting{
pixel_x = -32
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"KU" = (
@@ -16304,6 +16319,14 @@
/obj/item/storage/box/bodybags,
/turf/open/floor/plasteel/white,
/area/centcom/holding)
"Ll" = (
/obj/structure/window/reinforced{
dir = 1
},
/obj/structure/easel,
/obj/item/canvas/twentythreeXtwentythree,
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"Lm" = (
/obj/machinery/shower{
dir = 4
@@ -16808,6 +16831,22 @@
},
/turf/open/floor/plasteel,
/area/centcom/supplypod/loading/two)
"NA" = (
/obj/structure/window/reinforced{
dir = 1
},
/obj/structure/table/wood,
/obj/item/canvas/twentythreeXtwentythree,
/obj/item/canvas/twentythreeXtwentythree,
/obj/item/canvas/twentythreeXtwentythree,
/obj/item/canvas/twentythreeXnineteen,
/obj/item/canvas/twentythreeXnineteen,
/obj/item/canvas/twentythreeXnineteen,
/obj/item/canvas/nineteenXnineteen,
/obj/item/canvas/nineteenXnineteen,
/obj/item/canvas/nineteenXnineteen,
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"NE" = (
/obj/machinery/light{
dir = 4
@@ -16924,6 +16963,12 @@
},
/turf/open/floor/plasteel,
/area/centcom/supplypod/loading/three)
"On" = (
/obj/structure/sign/painting{
pixel_x = 32
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"Op" = (
/obj/structure/sink{
dir = 8;
@@ -17249,6 +17294,10 @@
},
/turf/open/floor/mineral/titanium,
/area/centcom/evac)
"Qc" = (
/obj/effect/landmark/mafia_game_area,
/turf/open/space/basic,
/area/space)
"Qe" = (
/turf/open/ai_visible,
/area/ai_multicam_room)
@@ -17906,6 +17955,15 @@
/obj/machinery/light,
/turf/open/floor/plasteel/freezer,
/area/centcom/holding)
"TD" = (
/obj/machinery/light{
dir = 4
},
/obj/structure/sign/painting{
pixel_x = 32
},
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
"TF" = (
/obj/effect/turf_decal/tile/red{
dir = 8
@@ -45453,8 +45511,8 @@ Nd
AE
CV
Sd
KT
Sd
Ll
CV
Sd
Sd
Sd
@@ -45710,7 +45768,7 @@ Nd
QJ
Sd
Sd
KT
NA
Sd
Sd
Sd
@@ -46222,8 +46280,8 @@ Fh
Fh
Wl
Sd
MR
Sd
TD
On
FX
Sd
Sd
@@ -58911,7 +58969,7 @@ aa
aa
aa
aa
aa
Qc
aa
aa
aa
+1 -1
View File
@@ -2,5 +2,5 @@
"map_name": "MultiZ Debug",
"map_path": "map_files/debug",
"map_file": "multiz.dmm",
"traits": [{"Up": 1}, {"Up": 1, "Down": -1}, {"Down": -1}]
"traits": [{"Up" : 1, "Linkage" : "Cross"}, {"Up" : 1, "Down" : -1, "Baseturf" : "/turf/open/transparent/openspace", "Linkage" : "Cross"}, {"Down" : -1, "Baseturf" : "/turf/open/transparent/openspace", "Linkage" : "Cross"}]
}
+17 -9
View File
@@ -43,7 +43,7 @@
},
/area/shuttle/escape/arena)
"l" = (
/obj/structure/closet/crate/necropolis/tendril,
/obj/structure/closet/crate/necropolis/tendril/magic,
/turf/open/indestructible/necropolis/air,
/area/shuttle/escape/arena)
"m" = (
@@ -65,10 +65,18 @@
/obj/structure/healingfountain,
/turf/open/indestructible/necropolis/air,
/area/shuttle/escape/arena)
"t" = (
/obj/structure/closet/crate/necropolis/tendril/misc,
/turf/open/indestructible/necropolis/air,
/area/shuttle/escape/arena)
"z" = (
/obj/effect/landmark/shuttle_arena_safe,
/turf/open/indestructible/necropolis/air,
/area/shuttle/escape/arena)
"H" = (
/obj/structure/closet/crate/necropolis/tendril/weapon_armor,
/turf/open/indestructible/necropolis/air,
/area/shuttle/escape/arena)
(1,1,1) = {"
a
@@ -264,16 +272,16 @@ m
l
j
m
l
H
j
k
l
H
j
m
l
t
j
m
j
t
j
p
g
@@ -524,16 +532,16 @@ m
l
j
m
l
H
j
m
l
H
j
m
l
t
j
m
j
t
j
p
g
+2 -2
View File
@@ -94,7 +94,7 @@
/turf/open/floor/light/colour_cycle,
/area/shuttle/escape)
"r" = (
/turf/open/floor/mineral/plasma,
/turf/open/floor/mineral/plasma/disco,
/area/shuttle/escape)
"s" = (
/turf/open/floor/mineral/silver,
@@ -112,7 +112,7 @@
resistance_flags = 2
},
/obj/structure/fans/tiny,
/turf/open/floor/mineral/plasma,
/turf/open/floor/mineral/plasma/disco,
/area/shuttle/escape)
"v" = (
/obj/machinery/jukebox/disco/indestructible,
+1 -1
View File
@@ -2690,7 +2690,7 @@
/obj/structure/rack,
/obj/item/storage/box/zipties,
/obj/item/assembly/flash/handheld,
/obj/item/melee/classic_baton/telescopic,
/obj/item/melee/classic_baton,
/obj/machinery/light/small/built{
dir = 8
},
+1 -1
View File
@@ -33,7 +33,7 @@
"Linkage":null,
"Gravity":true,
"Ice Ruins Underground":true,
"Baseturf":"/turf/open/openspace/icemoon"
"Baseturf":"/turf/open/transparent/openspace/icemoon"
},
{
"Down":-1,
BIN
View File
Binary file not shown.
+4
View File
@@ -144,6 +144,10 @@
#define WINGCOLOR 26
#define CAN_SCAR 27 // If this species can be scarred (fleshy)
/// Used for determining which wounds are applicable to this species.
#define HAS_FLESH 28 /// if we have flesh (can suffer slash/piercing/burn wounds, requires they don't have NOBLOOD)
#define HAS_BONE 29 /// if we have bones (can suffer bone wounds)
//organ slots
#define ORGAN_SLOT_BRAIN "brain"
#define ORGAN_SLOT_APPENDIX "appendix"
+1
View File
@@ -0,0 +1 @@
#define EXTOOLS (world.system_type == MS_WINDOWS ? "byond-extools.dll" : "libbyond-extools.so")
+1 -1
View File
@@ -98,7 +98,7 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204
#define ZAP_MOB_DAMAGE (1<<3)
#define ZAP_MOB_STUN (1<<4)
#define ZAP_DEFAULT_FLAGS ALL
#define ZAP_DEFAULT_FLAGS ZAP_MOB_STUN | ZAP_MOB_DAMAGE | ZAP_OBJ_DAMAGE
#define ZAP_FUSION_FLAGS ZAP_OBJ_DAMAGE | ZAP_MOB_DAMAGE | ZAP_MOB_STUN
#define ZAP_SUPERMATTER_FLAGS NONE
+1
View File
@@ -80,6 +80,7 @@
#define ADMIN_PUNISHMENT_SCARIFY "Scarify"
#define ADMIN_PUNISHMENT_PICKLE "Pickle-ify"
#define ADMIN_PUNISHMENT_FRY "Fry"
#define ADMIN_PUNISHMENT_PERFORATE ":B:erforate"
#define AHELP_ACTIVE 1
#define AHELP_CLOSED 2
+1 -1
View File
@@ -1,6 +1,6 @@
// Defines for managed input/keybinding system.
/// Max length of a keypress command before it's considered to be a forged packet/bogus command
#define MAX_KEYPRESS_COMMANDLENGTH 32
#define MAX_KEYPRESS_COMMANDLENGTH 64
/// Maximum keys that can be bound to one button
#define MAX_COMMANDS_PER_KEY 5
/// Maximum keys per keybind
+11 -1
View File
@@ -63,6 +63,16 @@
#define CONTRACT_UPLINK_PAGE_CONTRACTS "CONTRACTS"
#define CONTRACT_UPLINK_PAGE_HUB "HUB"
///Heretics --
#define IS_HERETIC(mob) (mob.mind?.has_antag_datum(/datum/antagonist/heretic))
#define PATH_SIDE "Side"
#define PATH_ASH "Ash"
#define PATH_RUST "Rust"
#define PATH_FLESH "Flesh"
//Overthrow time to update heads obj
#define OBJECTIVE_UPDATING_TIME 300
@@ -91,4 +101,4 @@
#define BLOB_REROLL_TIME 2400 // blob gets a free reroll every X time
#define BLOB_SPREAD_COST 4
#define BLOB_ATTACK_REFUND 2 //blob refunds this much if it attacks and doesn't spread
#define BLOB_REFLECTOR_COST 15
#define BLOB_REFLECTOR_COST 15
-2
View File
@@ -281,8 +281,6 @@ GLOBAL_LIST_INIT(atmos_adjacent_savings, list(0,0))
#define CALCULATE_ADJACENT_TURFS(T) SSadjacent_air.queue[T] = 1
#endif
#define EXTOOLS (world.system_type == MS_WINDOWS ? "byond-extools.dll" : "libbyond-extools.so")
GLOBAL_VAR(atmos_extools_initialized) // this must be an uninitialized (null) one or init_monstermos will be called twice because reasons
#define ATMOS_EXTOOLS_CHECK if(!GLOB.atmos_extools_initialized){\
GLOB.atmos_extools_initialized=TRUE;\
+1
View File
@@ -60,6 +60,7 @@
#define ANTAG_HUD_BROTHER 23
#define ANTAG_HUD_BLOODSUCKER 24
#define ANTAG_HUD_FUGITIVE 25
#define ANTAG_HUD_HERETIC 26
// Notification action types
#define NOTIFY_JUMP "jump"
+3 -1
View File
@@ -98,7 +98,9 @@
#define NO_APHRO (1<<9)
#define NO_ASS_SLAP (1<<10)
#define BIMBOFICATION (1<<11)
#define NO_AUTO_WAG (1<<12)
#define GENITAL_EXAMINE (1<<13)
#define VORE_EXAMINE (1<<14)
#define TOGGLES_CITADEL 0
//belly sound pref things
+1
View File
@@ -23,6 +23,7 @@ GLOBAL_VAR_INIT(script_scripture_unlocked, FALSE) //If script scripture is avail
GLOBAL_VAR_INIT(application_scripture_unlocked, FALSE) //If application scripture is available
GLOBAL_VAR_INIT(judgement_scripture_unlocked, FALSE) //If judgement scripture is available
GLOBAL_LIST_EMPTY(all_scripture) //a list containing scripture instances; not used to track existing scripture
GLOBAL_LIST_EMPTY(all_clockwork_rites) //a list containing all clockwork rites. Filled the first time any cultist interacts with a sigil of rites.
//Scripture tiers and requirements; peripherals should never be used
#define SCRIPTURE_PERIPHERAL "Peripheral"
+1 -14
View File
@@ -2,19 +2,6 @@
#define COLOR_INPUT_DISABLED "#F0F0F0"
#define COLOR_INPUT_ENABLED "#D3B5B5"
#define COLOR_DARKMODE_INFO_BUTTONS_BG "#40628A"
#define COLOR_DARKMODE_ISSUE_BUTTON_BG "#A92C2C"
#define COLOR_DARKMODE_BACKGROUND "#272727"
#define COLOR_DARKMODE_DARKBACKGROUND "#242424"
#define COLOR_DARKMODE_TEXT "#E0E0E0"
#define COLOR_WHITEMODE_INFO_BUTTONS_BG "#90B3DD"
#define COLOR_WHITEMODE_ISSUE_BUTTON_BG "#EF7F7F"
#define COLOR_WHITEMODE_BACKGROUND "#F0F0F0"
#define COLOR_WHITEMODE_DARKBACKGROUND "#E6E6E6"
#define COLOR_WHITEMODE_TEXT "#000000"
#define COLOR_FLOORTILE_GRAY "#8D8B8B"
#define COLOR_ALMOST_BLACK "#333333"
#define COLOR_BLACK "#000000"
@@ -64,4 +51,4 @@
#define COLOR_ASSEMBLY_LBLUE "#5D99BE"
#define COLOR_ASSEMBLY_BLUE "#38559E"
#define COLOR_ASSEMBLY_PURPLE "#6F6192"
#define COLOR_ASSEMBLY_PINK "#ff4adc"
#define COLOR_ASSEMBLY_PINK "#ff4adc"
+7 -6
View File
@@ -143,9 +143,10 @@
#define SHOVE_KNOCKDOWN_HUMAN 30
#define SHOVE_KNOCKDOWN_TABLE 30
#define SHOVE_KNOCKDOWN_COLLATERAL 10
//for the shove slowdown, see __DEFINES/movespeed_modification.dm
#define SHOVE_SLOWDOWN_LENGTH 30
#define SHOVE_SLOWDOWN_STRENGTH 0.85 //multiplier
/// how long they're staggered for
#define SHOVE_STAGGER_DURATION 35
/// how long they're off balance for
#define SHOVE_OFFBALANCE_DURATION 30
//Shove disarming item list
GLOBAL_LIST_INIT(shove_disarming_types, typecacheof(list(
/obj/item/gun)))
@@ -197,9 +198,9 @@ GLOBAL_LIST_INIT(shove_disarming_types, typecacheof(list(
#define GUN_AIMING_TIME (2 SECONDS)
//Object/Item sharpness
#define IS_BLUNT 0
#define IS_SHARP 1
#define IS_SHARP_ACCURATE 2
#define SHARP_NONE 0
#define SHARP_EDGED 1
#define SHARP_POINTY 2
//His Grace.
#define HIS_GRACE_SATIATED 0 //He hungers not. If bloodthirst is set to this, His Grace is asleep.
+1
View File
@@ -1,6 +1,7 @@
//config files
#define CONFIG_GET(X) global.config.Get(/datum/config_entry/##X)
#define CONFIG_SET(X, Y) global.config.Set(/datum/config_entry/##X, ##Y)
/// Gets the datum of the object, for when editing a const define.
#define CONFIG_GET_ENTRY(X) global.config.GetEntryDatum(/datum/config_entry/##X)
#define CONFIG_MAPS_FILE "maps.txt"
+82 -36
View File
@@ -15,25 +15,36 @@
//////////////////////////////////////////////////////////////////
// /datum signals
#define COMSIG_COMPONENT_ADDED "component_added" //sent to the new datum parent when a component is added to them: (/datum/component)
#define COMSIG_COMPONENT_REMOVING "component_removing" //sent to the datum parent before a component is removed from them because of RemoveComponent: (/datum/component)
#define COMSIG_COMPONENT_UNREGISTER_PARENT "component_unregister_parent" //sent to the component itself when unregistered from a parent
#define COMSIG_COMPONENT_REGISTER_PARENT "component_register_parent" //sent to the component itself when registered to a parent
#define COMSIG_PARENT_PREQDELETED "parent_preqdeleted" //before a datum's Destroy() is called: (force), returning a nonzero value will cancel the qdel operation
#define COMSIG_PARENT_QDELETING "parent_qdeleting" //just before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called
/// Trait signals
#define COMPONENT_ADD_TRAIT (1<<0)
#define COMPONENT_REMOVE_TRAIT (1<<1)
/// when a component is added to a datum: (/datum/component)
#define COMSIG_COMPONENT_ADDED "component_added"
/// before a component is removed from a datum because of RemoveComponent: (/datum/component)
#define COMSIG_COMPONENT_REMOVING "component_removing"
/// before a datum's Destroy() is called: (force), returning a nonzero value will cancel the qdel operation
#define COMSIG_PARENT_PREQDELETED "parent_preqdeleted"
/// just before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called
#define COMSIG_PARENT_QDELETING "parent_qdeleting"
/// generic topic handler (usr, href_list)
#define COMSIG_TOPIC "handle_topic"
/// fires on the target datum when an element is attached to it (/datum/element)
#define COMSIG_ELEMENT_ATTACH "element_attach"
/// fires on the target datum when an element is attached to it (/datum/element)
#define COMSIG_ELEMENT_DETACH "element_detach"
/// sent to the component itself when unregistered from a parent
#define COMSIG_COMPONENT_UNREGISTER_PARENT "component_unregister_parent"
/// sent to the component itself when registered to a parent
#define COMSIG_COMPONENT_REGISTER_PARENT "component_register_parent"
/// Trait signals
#define COMPONENT_ADD_TRAIT (1<<0)
#define COMPONENT_REMOVE_TRAIT (1<<1)
// /atom signals
//from base of atom/proc/Initialize(): sent any time a new atom is created
#define COMSIG_ATOM_CREATED "atom_created"
//from SSatoms InitAtom - Only if the atom was not deleted or failed initialization
#define COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZE "atom_init_success"
#define COMSIG_PARENT_ATTACKBY "atom_attackby" //from base of atom/attackby(): (/obj/item, /mob/living, params)
#define COMPONENT_NO_AFTERATTACK 1 //Return this in response if you don't want afterattack to be called
#define COMSIG_ATOM_HULK_ATTACK "hulk_attack" //from base of atom/attack_hulk(): (/mob/living/carbon/human)
@@ -56,30 +67,54 @@
#define COMSIG_ATOM_EXIT "atom_exit" //from base of atom/Exit(): (/atom/movable/exiting, /atom/newloc)
#define COMPONENT_ATOM_BLOCK_EXIT 1
#define COMSIG_ATOM_EXITED "atom_exited" //from base of atom/Exited(): (atom/movable/exiting, atom/newloc)
#define COMSIG_ATOM_EX_ACT "atom_ex_act" //from base of atom/ex_act(): (severity, target)
#define COMSIG_ATOM_EMP_ACT "atom_emp_act" //from base of atom/emp_act(): (severity)
#define COMSIG_ATOM_FIRE_ACT "atom_fire_act" //from base of atom/fire_act(): (exposed_temperature, exposed_volume)
#define COMSIG_ATOM_BULLET_ACT "atom_bullet_act" //from base of atom/bullet_act(): (/obj/item/projectile, def_zone)
#define COMSIG_ATOM_BLOB_ACT "atom_blob_act" //from base of atom/blob_act(): (/obj/structure/blob)
#define COMSIG_ATOM_ACID_ACT "atom_acid_act" //from base of atom/acid_act(): (acidpwr, acid_volume)
#define COMSIG_ATOM_EMAG_ACT "atom_emag_act" //from base of atom/emag_act(): ()
#define COMSIG_ATOM_RAD_ACT "atom_rad_act" //from base of atom/rad_act(intensity)
#define COMSIG_ATOM_NARSIE_ACT "atom_narsie_act" //from base of atom/narsie_act(): ()
#define COMSIG_ATOM_RATVAR_ACT "atom_ratvar_act" //from base of atom/ratvar_act(): ()
#define COMSIG_ATOM_RCD_ACT "atom_rcd_act" //from base of atom/rcd_act(): (/mob, /obj/item/construction/rcd, passed_mode)
#define COMSIG_ATOM_SING_PULL "atom_sing_pull" //from base of atom/singularity_pull(): (S, current_size)
#define COMSIG_ATOM_SET_LIGHT "atom_set_light" //from base of atom/set_light(): (l_range, l_power, l_color)
#define COMSIG_ATOM_DIR_CHANGE "atom_dir_change" //from base of atom/setDir(): (old_dir, new_dir)
#define COMSIG_ATOM_CONTENTS_DEL "atom_contents_del" //from base of atom/handle_atom_del(): (atom/deleted)
#define COMSIG_ATOM_HAS_GRAVITY "atom_has_gravity" //from base of atom/has_gravity(): (turf/location, list/forced_gravities)
#define COMSIG_ATOM_RAD_PROBE "atom_rad_probe" //from proc/get_rad_contents(): ()
#define COMPONENT_BLOCK_RADIATION 1
#define COMSIG_ATOM_RAD_CONTAMINATING "atom_rad_contam" //from base of datum/radiation_wave/radiate(): (strength)
#define COMPONENT_BLOCK_CONTAMINATION 1
#define COMSIG_ATOM_RAD_WAVE_PASSING "atom_rad_wave_pass" //from base of datum/radiation_wave/check_obstructions(): (datum/radiation_wave, width)
#define COMPONENT_RAD_WAVE_HANDLED 1
#define COMSIG_ATOM_CANREACH "atom_can_reach" //from internal loop in atom/movable/proc/CanReach(): (list/next)
#define COMPONENT_BLOCK_REACH 1
///from base of atom/ex_act(): (severity, target)
#define COMSIG_ATOM_EX_ACT "atom_ex_act"
///from base of atom/emp_act(): (severity)
#define COMSIG_ATOM_EMP_ACT "atom_emp_act"
///from base of atom/fire_act(): (exposed_temperature, exposed_volume)
#define COMSIG_ATOM_FIRE_ACT "atom_fire_act"
///from base of atom/bullet_act(): (/obj/projectile, def_zone)
#define COMSIG_ATOM_BULLET_ACT "atom_bullet_act"
///from base of atom/blob_act(): (/obj/structure/blob)
#define COMSIG_ATOM_BLOB_ACT "atom_blob_act"
///from base of atom/acid_act(): (acidpwr, acid_volume)
#define COMSIG_ATOM_ACID_ACT "atom_acid_act"
///from base of atom/emag_act(): (/mob/user)
#define COMSIG_ATOM_EMAG_ACT "atom_emag_act"
///from base of atom/rad_act(intensity)
#define COMSIG_ATOM_RAD_ACT "atom_rad_act"
///from base of atom/narsie_act(): ()
#define COMSIG_ATOM_NARSIE_ACT "atom_narsie_act"
///from base of atom/ratvar_act(): ()
#define COMSIG_ATOM_RATVAR_ACT "atom_ratvar_act"
///from base of atom/rcd_act(): (/mob, /obj/item/construction/rcd, passed_mode)
#define COMSIG_ATOM_RCD_ACT "atom_rcd_act"
///from base of atom/singularity_pull(): (S, current_size)
#define COMSIG_ATOM_SING_PULL "atom_sing_pull"
///from obj/machinery/bsa/full/proc/fire(): ()
#define COMSIG_ATOM_BSA_BEAM "atom_bsa_beam_pass"
#define COMSIG_ATOM_BLOCKS_BSA_BEAM (1<<0)
///from base of atom/set_light(): (l_range, l_power, l_color)
#define COMSIG_ATOM_SET_LIGHT "atom_set_light"
///from base of atom/setDir(): (old_dir, new_dir). Called before the direction changes.
#define COMSIG_ATOM_DIR_CHANGE "atom_dir_change"
///from base of atom/handle_atom_del(): (atom/deleted)
#define COMSIG_ATOM_CONTENTS_DEL "atom_contents_del"
///from base of atom/has_gravity(): (turf/location, list/forced_gravities)
#define COMSIG_ATOM_HAS_GRAVITY "atom_has_gravity"
///from proc/get_rad_contents(): ()
#define COMSIG_ATOM_RAD_PROBE "atom_rad_probe"
#define COMPONENT_BLOCK_RADIATION (1<<0)
///from base of datum/radiation_wave/radiate(): (strength)
#define COMSIG_ATOM_RAD_CONTAMINATING "atom_rad_contam"
#define COMPONENT_BLOCK_CONTAMINATION (1<<0)
///from base of datum/radiation_wave/check_obstructions(): (datum/radiation_wave, width)
#define COMSIG_ATOM_RAD_WAVE_PASSING "atom_rad_wave_pass"
#define COMPONENT_RAD_WAVE_HANDLED (1<<0)
///from internal loop in atom/movable/proc/CanReach(): (list/next)
#define COMSIG_ATOM_CANREACH "atom_can_reach"
#define COMPONENT_BLOCK_REACH (1<<0)
#define COMSIG_ATOM_SCREWDRIVER_ACT "atom_screwdriver_act" //from base of atom/screwdriver_act(): (mob/living/user, obj/item/I)
#define COMSIG_ATOM_INTERCEPT_TELEPORT "intercept_teleport" //called when teleporting into a protected turf: (channel, turf/origin, turf/destination)
#define COMPONENT_BLOCK_TELEPORT 1
@@ -151,6 +186,7 @@
// #define HEARING_SOURCE 8
#define COMSIG_MOVABLE_DISPOSING "movable_disposing" //called when the movable is added to a disposal holder object for disposal movement: (obj/structure/disposalholder/holder, obj/machinery/disposal/source)
#define COMSIG_MOVABLE_TELEPORTED "movable_teleported" //from base of do_teleport(): (channel, turf/origin, turf/destination)
#define COMSIG_MOVABLE_CHASM_DROP "movable_chasm_drop" //from base of /datum/component/chasm/drop() (/datum/component/chasm)
// /mind signals
#define COMSIG_PRE_MIND_TRANSFER "pre_mind_transfer" //from base of mind/transfer_to() before it's done: (new_character, old_character)
@@ -209,6 +245,8 @@
#define COMSIG_MOB_SWAP_HANDS "mob_swap_hands" //from base of mob/swap_hand(): (obj/item)
#define COMPONENT_BLOCK_SWAP 1
#define COMSIG_PROCESS_BORGCHARGER_OCCUPANT "living_charge"
// /client signals
#define COMSIG_MOB_CLIENT_LOGIN "mob_client_login" //sent when a mob/login() finishes: (client)
#define COMSIG_MOB_CLIENT_LOGOUT "mob_client_logout" //sent when a mob/logout() starts: (client)
@@ -252,6 +290,10 @@
#define COMPONENT_INTERRUPT_LIFE_BIOLOGICAL 1 // interrupt biological processes
#define COMPONENT_INTERRUPT_LIFE_PHYSICAL 2 // interrupt physical handling
#define COMSIG_LIVING_BIOLOGICAL_LIFE "biological_life" //from base of mob/living/BiologicalLife() (seconds, times_fired)
#define COMSIG_LIVING_PHYSICAL_LIFE "physical_life" //from base of mob/living/PhysicalLife() (seconds, times_fired)
// /mob/living/carbon physiology signals
#define COMSIG_CARBON_GAIN_WOUND "carbon_gain_wound" //from /datum/wound/proc/apply_wound() (/mob/living/carbon/C, /datum/wound/W, /obj/item/bodypart/L)
#define COMSIG_CARBON_LOSE_WOUND "carbon_lose_wound" //from /datum/wound/proc/remove_wound() (/mob/living/carbon/C, /datum/wound/W, /obj/item/bodypart/L)
@@ -277,6 +319,7 @@
#define COMSIG_OBJ_DECONSTRUCT "obj_deconstruct" //from base of obj/deconstruct(): (disassembled)
#define COMSIG_OBJ_BREAK "obj_break" //from base of /obj/obj_break(): (damage_flag)
#define COMSIG_OBJ_SETANCHORED "obj_setanchored" //called in /obj/structure/setAnchored(): (value)
#define COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH "obj_default_unfasten_wrench" //called exclusively in plumbing, for now
#define COMSIG_OBJ_ATTACK_GENERIC "obj_attack_generic" //from base of atom/animal_attack(): (/mob/user)
#define COMPONENT_STOP_GENERIC_ATTACK 1
@@ -356,8 +399,8 @@
#define COMSIG_PEN_ROTATED "pen_rotated" //called after rotation in /obj/item/pen/attack_self(): (rotation, mob/living/carbon/user)
// /obj/item/projectile signals (sent to the firer)
#define COMSIG_PROJECTILE_SELF_ON_HIT "projectile_self_on_hit" // from base of /obj/item/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)
#define COMSIG_PROJECTILE_ON_HIT "projectile_on_hit" // from base of /obj/item/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)
#define COMSIG_PROJECTILE_SELF_ON_HIT "projectile_self_on_hit" ///from base of /obj/item/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle, hit_limb)
#define COMSIG_PROJECTILE_ON_HIT "projectile_on_hit" ///from base of /obj/item/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle, hit_limb)
#define COMSIG_PROJECTILE_BEFORE_FIRE "projectile_before_fire" // from base of /obj/item/projectile/proc/fire(): (obj/item/projectile, atom/original_target)
#define COMSIG_PROJECTILE_FIRE "projectile_fire" ///from the base of /obj/item/projectile/proc/fire(): ()
#define COMSIG_PROJECTILE_RANGE_OUT "projectile_range_out" // sent to targets during the process_hit proc of projectiles
@@ -452,6 +495,9 @@
#define COMPONENT_TWOHANDED_BLOCK_WIELD 1
#define COMSIG_TWOHANDED_UNWIELD "twohanded_unwield" //from base of datum/component/two_handed/proc/unwield(mob/living/carbon/user): (/mob/user)
// /datum/component/squeak signals
#define COMSIG_CROSS_SQUEAKED "cross_squeaked" // sent when a squeak component squeaks from crossing something, to delay anything else crossing that might squeak to prevent ear hurt.
// /datum/action signals
#define COMSIG_ACTION_TRIGGER "action_trigger" //from base of datum/action/proc/Trigger(): (datum/action)
#define COMPONENT_ACTION_BLOCK_TRIGGER 1
+4
View File
@@ -4,6 +4,7 @@
#define DYE_REGISTRY_SNEAKERS "sneakers"
#define DYE_REGISTRY_FANNYPACK "fannypack"
#define DYE_REGISTRY_BEDSHEET "bedsheet"
#define DYE_LAWYER_SPECIAL "lawyer_special"
#define DYE_RED "red"
#define DYE_ORANGE "orange"
@@ -16,6 +17,7 @@
#define DYE_RAINBOW "rainbow"
#define DYE_MIME "mime"
#define DYE_COSMIC "cosmic"
#define DYE_SYNDICATE "syndicate"
#define DYE_QM "qm"
#define DYE_LAW "law"
#define DYE_CAPTAIN "captain"
@@ -26,3 +28,5 @@
#define DYE_CMO "cmo"
#define DYE_REDCOAT "redcoat"
#define DYE_CLOWN "clown"
#define DYE_CHAP "chap"
#define DYE_CENTCOM "centcom"
+35
View File
@@ -0,0 +1,35 @@
/// Module is compatible with Security Cyborg models
#define BORG_MODULE_SECURITY (1<<0)
/// Module is compatible with Miner Cyborg models
#define BORG_MODULE_MINER (1<<1)
/// Module is compatible with Janitor Cyborg models
#define BORG_MODULE_JANITOR (1<<2)
/// Module is compatible with Medical Cyborg models
#define BORG_MODULE_MEDICAL (1<<3)
/// Module is compatible with Engineering Cyborg models
#define BORG_MODULE_ENGINEERING (1<<4)
/// Module is compatible with Ripley Exosuit models
#define EXOSUIT_MODULE_RIPLEY (1<<0)
/// Module is compatible with Odyseeus Exosuit models
#define EXOSUIT_MODULE_ODYSSEUS (1<<1)
/// Module is compatible with Clarke Exosuit models. Rebranded to firefighter because tg nerfed it to this.
#define EXOSUIT_MODULE_FIREFIGHTER (1<<2)
// #define EXOSUIT_MODULE_CLARKE (1<<2)
/// Module is compatible with Gygax Exosuit models
#define EXOSUIT_MODULE_GYGAX (1<<3)
/// Module is compatible with Durand Exosuit models
#define EXOSUIT_MODULE_DURAND (1<<4)
/// Module is compatible with H.O.N.K Exosuit models
#define EXOSUIT_MODULE_HONK (1<<5)
/// Module is compatible with Phazon Exosuit models
#define EXOSUIT_MODULE_PHAZON (1<<6)
/// Module is compatable with N models
#define EXOSUIT_MODULE_GYGAX_MED (1<<7)
/// Module is compatible with "Working" Exosuit models - Ripley and Clarke
#define EXOSUIT_MODULE_WORKING EXOSUIT_MODULE_RIPLEY | EXOSUIT_MODULE_FIREFIGHTER // | EXOSUIT_MODULE_CLARKE
/// Module is compatible with "Combat" Exosuit models - Gygax, H.O.N.K, Durand and Phazon
#define EXOSUIT_MODULE_COMBAT EXOSUIT_MODULE_GYGAX | EXOSUIT_MODULE_HONK | EXOSUIT_MODULE_DURAND | EXOSUIT_MODULE_PHAZON
/// Module is compatible with "Medical" Exosuit modelsm - Odysseus
#define EXOSUIT_MODULE_MEDICAL EXOSUIT_MODULE_ODYSSEUS | EXOSUIT_MODULE_GYGAX_MED
+1
View File
@@ -12,6 +12,7 @@
#define TOXIC (1<<11)
#define PINEAPPLE (1<<12)
#define BREAKFAST (1<<13)
#define ANTITOXIC (1<<14)
#define DRINK_NICE 1
#define DRINK_GOOD 2
+14 -4
View File
@@ -7,6 +7,8 @@
#define FOOTSTEP_WATER "water"
#define FOOTSTEP_LAVA "lava"
#define FOOTSTEP_MEAT "meat"
#define FOOTSTEP_RUST "rust"
//barefoot sounds
#define FOOTSTEP_WOOD_BAREFOOT "woodbarefoot"
#define FOOTSTEP_WOOD_CLAW "woodclaw"
@@ -91,7 +93,9 @@ GLOBAL_LIST_INIT(footstep, list(
'sound/effects/footstep/lava2.ogg',
'sound/effects/footstep/lava3.ogg'), 100, 0),
FOOTSTEP_MEAT = list(list(
'sound/effects/meatslap.ogg'), 100, 0)
'sound/effects/meatslap.ogg'), 100, 0),
FOOTSTEP_RUST = list(list(
'sound/effects/footstep/rustystep1.ogg'), 100, 0)
))
//bare footsteps lists
@@ -135,7 +139,9 @@ GLOBAL_LIST_INIT(barefootstep, list(
'sound/effects/footstep/lava2.ogg',
'sound/effects/footstep/lava3.ogg'), 100, 0),
FOOTSTEP_MEAT = list(list(
'sound/effects/meatslap.ogg'), 100, 0)
'sound/effects/meatslap.ogg'), 100, 0),
FOOTSTEP_RUST = list(list(
'sound/effects/footstep/rustystep1.ogg'), 100, 0)
))
//claw footsteps lists
@@ -179,7 +185,9 @@ GLOBAL_LIST_INIT(clawfootstep, list(
'sound/effects/footstep/lava2.ogg',
'sound/effects/footstep/lava3.ogg'), 100, 0),
FOOTSTEP_MEAT = list(list(
'sound/effects/meatslap.ogg'), 100, 0)
'sound/effects/meatslap.ogg'), 100, 0),
FOOTSTEP_RUST = list(list(
'sound/effects/footstep/rustystep1.ogg'), 100, 0)
))
//heavy footsteps list
@@ -197,5 +205,7 @@ GLOBAL_LIST_INIT(heavyfootstep, list(
'sound/effects/footstep/lava2.ogg',
'sound/effects/footstep/lava3.ogg'), 100, 0),
FOOTSTEP_MEAT = list(list(
'sound/effects/meatslap.ogg'), 100, 0)
'sound/effects/meatslap.ogg'), 100, 0),
FOOTSTEP_RUST = list(list(
'sound/effects/footstep/rustystep1.ogg'), 150, 2)
))
+4 -9
View File
@@ -17,7 +17,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
/turf/open/chasm,
/turf/open/lava,
/turf/open/water,
/turf/open/openspace
/turf/open/transparent/openspace
)))
#define isgroundlessturf(A) (is_type_in_typecache(A, GLOB.turfs_without_ground))
@@ -44,6 +44,8 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
#define isplatingturf(A) (istype(A, /turf/open/floor/plating))
#define istransparentturf(A) (istype(A, /turf/open/transparent))
//Mobs
#define isliving(A) (istype(A, /mob/living))
@@ -74,6 +76,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
#define ismush(A) (is_species(A, /datum/species/mush))
#define isshadow(A) (is_species(A, /datum/species/shadow))
#define isskeleton(A) (is_species(A, /datum/species/skeleton))
#define isethereal(A) (is_species(A, /datum/species/ethereal))
// Citadel specific species
#define isipcperson(A) (is_species(A, /datum/species/ipc))
@@ -199,14 +202,6 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
#define isclothing(A) (istype(A, /obj/item/clothing))
GLOBAL_LIST_INIT(pointed_types, typecacheof(list(
/obj/item/pen,
/obj/item/screwdriver,
/obj/item/reagent_containers/syringe,
/obj/item/kitchen/fork)))
#define is_pointed(W) (is_type_in_typecache(W, GLOB.pointed_types))
#define isbodypart(A) (istype(A, /obj/item/bodypart))
#define isprojectile(A) (istype(A, /obj/item/projectile))
+2
View File
@@ -131,6 +131,8 @@
#define LIGHTING_LAYER 15
#define LIGHTING_RENDER_TARGET "LIGHT_PLANE"
#define RAD_TEXT_LAYER 15.1
#define ABOVE_LIGHTING_PLANE 16
#define ABOVE_LIGHTING_LAYER 16
#define ABOVE_LIGHTING_RENDER_TARGET "ABOVE_LIGHTING_PLANE"
+69
View File
@@ -0,0 +1,69 @@
//defines for loadout categories
//no category defines
#define LOADOUT_CATEGORY_NONE "ERROR"
#define LOADOUT_SUBCATEGORY_NONE "Miscellaneous"
#define LOADOUT_SUBCATEGORIES_NONE list("Miscellaneous")
//backpack
#define LOADOUT_CATEGORY_BACKPACK "In backpack"
#define LOADOUT_SUBCATEGORY_BACKPACK_GENERAL "General" //basically anything that there's not enough of to have its own subcategory
#define LOADOUT_SUBCATEGORY_BACKPACK_TOYS "Toys"
//neck
#define LOADOUT_CATEGORY_NECK "Neck"
#define LOADOUT_SUBCATEGORY_NECK_GENERAL "General"
#define LOADOUT_SUBCATEGORY_NECK_TIE "Ties"
#define LOADOUT_SUBCATEGORY_NECK_SCARVES "Scarves"
//mask
#define LOADOUT_CATEGORY_MASK "Mask"
//hands
#define LOADOUT_CATEGORY_HANDS "Hands"
//uniform
#define LOADOUT_CATEGORY_UNIFORM "Uniform" //there's so many types of uniform it's best to have lots of categories
#define LOADOUT_SUBCATEGORY_UNIFORM_GENERAL "General"
#define LOADOUT_SUBCATEGORY_UNIFORM_JOBS "Jobs"
#define LOADOUT_SUBCATEGORY_UNIFORM_SUITS "Suits"
#define LOADOUT_SUBCATEGORY_UNIFORM_SKIRTS "Skirts"
#define LOADOUT_SUBCATEGORY_UNIFORM_DRESSES "Dresses"
#define LOADOUT_SUBCATEGORY_UNIFORM_SWEATERS "Sweaters"
#define LOADOUT_SUBCATEGORY_UNIFORM_PANTS "Pants"
#define LOADOUT_SUBCATEGORY_UNIFORM_SHORTS "Shorts"
//suit
#define LOADOUT_CATEGORY_SUIT "Suit"
#define LOADOUT_SUBCATEGORY_SUIT_GENERAL "General"
#define LOADOUT_SUBCATEGORY_SUIT_COATS "Coats"
#define LOADOUT_SUBCATEGORY_SUIT_JACKETS "Jackets"
#define LOADOUT_SUBCATEGORY_SUIT_JOBS "Jobs"
//head
#define LOADOUT_CATEGORY_HEAD "Head"
#define LOADOUT_SUBCATEGORY_HEAD_GENERAL "General"
#define LOADOUT_SUBCATEGORY_HEAD_JOBS "Jobs"
//shoes
#define LOADOUT_CATEGORY_SHOES "Shoes"
//gloves
#define LOADOUT_CATEGORY_GLOVES "Gloves"
//glasses
#define LOADOUT_CATEGORY_GLASSES "Glasses"
//donator items
#define LOADOUT_CATEGORY_DONATOR "Donator"
//how many prosthetics can we have
#define MAXIMUM_LOADOUT_PROSTHETICS 2
//what limbs can be amputated or be prosthetic
#define LOADOUT_ALLOWED_LIMB_TARGETS list(BODY_ZONE_L_ARM,BODY_ZONE_R_ARM,BODY_ZONE_L_LEG,BODY_ZONE_R_LEG)
//options for modifiying limbs
#define LOADOUT_LIMB_NORMAL "Normal"
#define LOADOUT_LIMB_PROSTHETIC "Prosthetic"
#define LOADOUT_LIMB_AMPUTATED "Amputated"
#define LOADOUT_LIMBS list(LOADOUT_LIMB_NORMAL,LOADOUT_LIMB_PROSTHETIC,LOADOUT_LIMB_AMPUTATED) //you can amputate your legs/arms though
+1
View File
@@ -19,6 +19,7 @@
#define INVESTIGATE_FERMICHEM "fermichem"
#define INVESTIGATE_RCD "rcd"
#define INVESTIGATE_CRYOGENICS "cryogenics"
#define INVESTIGATE_GHOST "ghost"
// Logging types for log_message()
#define LOG_ATTACK (1 << 0)
+2
View File
@@ -41,11 +41,13 @@
#define MC_HDD "HDD"
#define MC_SDD "SDD"
#define MC_CARD "CARD"
#define MC_CARD2 "CARD2"
#define MC_NET "NET"
#define MC_PRINT "PRINT"
#define MC_CELL "CELL"
#define MC_CHARGE "CHARGE"
#define MC_AI "AI"
#define MC_SENSORS "SENSORS"
//NTNet stuff, for modular computers
// NTNet module-configuration values. Do not change these. If you need to add another use larger number (5..6..7 etc)
+2
View File
@@ -46,6 +46,8 @@
// Cosecant
#define CSC(x) (1 / sin(x))
#define ATAN2(x, y) ( !(x) && !(y) ? 0 : (y) >= 0 ? arccos((x) / sqrt((x)*(x) + (y)*(y))) : -arccos((x) / sqrt((x)*(x) + (y)*(y))) )
// Greatest Common Divisor - Euclid's algorithm
/proc/Gcd(a, b)
return b ? Gcd(b, (a) % (b)) : a
+12 -7
View File
@@ -116,6 +116,7 @@ Will print: "/mob/living/carbon/human/death" (you can optionally embed it in a s
#define CRAYON_FONT "Comic Sans MS"
#define PRINTER_FONT "Times New Roman"
#define SIGNFONT "Times New Roman"
#define CHARCOAL_FONT "Candara"
#define RESIZE_DEFAULT_SIZE 1
@@ -318,9 +319,9 @@ GLOBAL_LIST_INIT(pda_reskins, list(PDA_SKIN_CLASSIC = 'icons/obj/pda.dmi', PDA_S
#define SHELTER_DEPLOY_ANCHORED_OBJECTS "anchored objects"
//debug printing macros
#define debug_world(msg) if (GLOB.Debug2) to_chat(world, "DEBUG: [msg]")
#define debug_usr(msg) if (GLOB.Debug2&&usr) to_chat(usr, "DEBUG: [msg]")
#define debug_admins(msg) if (GLOB.Debug2) to_chat(GLOB.admins, "DEBUG: [msg]")
#define debug_world(msg) if (GLOB.Debug2) to_chat(world, "<span class=\"filter_debuglog\">DEBUG: [msg]</span>")
#define debug_usr(msg) if (GLOB.Debug2&&usr) to_chat(usr, "<span class=\"filter_debuglog\">DEBUG: [msg]</span>")
#define debug_admins(msg) if (GLOB.Debug2) to_chat(GLOB.admins, "<span class=\"filter_debuglog\">DEBUG: [msg]</span>")
#define debug_world_log(msg) if (GLOB.Debug2) log_world("DEBUG: [msg]")
#define INCREMENT_TALLY(L, stat) if(L[stat]){L[stat]++}else{L[stat] = 1}
@@ -341,10 +342,11 @@ GLOBAL_LIST_INIT(pda_reskins, list(PDA_SKIN_CLASSIC = 'icons/obj/pda.dmi', PDA_S
#define COLOUR_PRIORITY_AMOUNT 4 //how many priority levels there are.
//Endgame Results
#define NUKE_MISS_STATION 1
#define NUKE_SYNDICATE_BASE 2
#define STATION_DESTROYED_NUKE 3
#define STATION_EVACUATED 4
#define NUKE_NEAR_MISS 1
#define NUKE_MISS_STATION 2
#define NUKE_SYNDICATE_BASE 3
#define STATION_DESTROYED_NUKE 4
#define STATION_EVACUATED 5
#define BLOB_WIN 8
#define BLOB_NUKE 9
#define BLOB_DESTROYED 10
@@ -434,6 +436,9 @@ GLOBAL_LIST_INIT(pda_reskins, list(PDA_SKIN_CLASSIC = 'icons/obj/pda.dmi', PDA_S
#define ION_FILE "ion_laws.json"
#define REDPILL_FILE "redpill.json"
#define PIRATE_NAMES_FILE "pirates.json"
#define FLESH_SCAR_FILE "wounds/flesh_scar_desc.json"
#define BONE_SCAR_FILE "wounds/bone_scar_desc.json"
#define SCAR_LOC_FILE "wounds/scar_loc.json"
//Fullscreen overlay resolution in tiles.
+12 -1
View File
@@ -64,7 +64,6 @@
#define DEFAULT_BODYPART_ICON 'icons/mob/human_parts.dmi'
#define DEFAULT_BODYPART_ICON_ORGANIC 'icons/mob/human_parts_greyscale.dmi'
#define DEFAULT_BODYPART_ICON_ROBOTIC 'icons/mob/augmentation/augments.dmi'
#define DEFAULT_BODYPART_ICON_CITADEL 'modular_citadel/icons/mob/mutant_bodyparts.dmi'
#define MONKEY_BODYPART "monkey"
#define ALIEN_BODYPART "alien"
@@ -176,6 +175,15 @@
#define DISGUST_LEVEL_VERYGROSS 50
#define DISGUST_LEVEL_GROSS 25
//Charge levels for Ethereals
#define ETHEREAL_CHARGE_NONE 0
#define ETHEREAL_CHARGE_LOWPOWER 20
#define ETHEREAL_CHARGE_NORMAL 50
#define ETHEREAL_CHARGE_ALMOSTFULL 75
#define ETHEREAL_CHARGE_FULL 100
#define ETHEREAL_CHARGE_OVERLOAD 125
#define ETHEREAL_CHARGE_DANGEROUS 150
//Slime evolution threshold. Controls how fast slimes can split/grow
#define SLIME_EVOLUTION_THRESHOLD 10
@@ -284,6 +292,7 @@
#define DOOR_CRUSH_DAMAGE 15 //the amount of damage that airlocks deal when they crush you
#define HUNGER_FACTOR 0.1 //factor at which mob nutrition decreases
#define ETHEREAL_CHARGE_FACTOR 0.08 //factor at which ethereal's charge decreases
#define REAGENTS_METABOLISM 0.4 //How many units of reagent are consumed per tick, by default.
#define REAGENTS_EFFECT_MULTIPLIER (REAGENTS_METABOLISM / 0.4) // By defining the effect multiplier this way, it'll exactly adjust all effects according to how they originally were with the 0.4 metabolism
@@ -322,3 +331,5 @@
/// If you examine the same atom twice in this timeframe, we call examine_more() instead of examine()
#define EXAMINE_MORE_TIME 1 SECONDS
#define SILENCE_RANGED_MESSAGE (1<<0)
-1
View File
@@ -63,7 +63,6 @@
#define MOVESPEED_ID_TASED_STATUS "TASED"
#define MOVESPEED_ID_ELECTROSTAFF "ELECTROSTAFF"
#define MOVESPEED_ID_SHOVE "SHOVE"
#define MOVESPEED_ID_FAT "FAT"
#define MOVESPEED_ID_COLD "COLD"
#define MOVESPEED_ID_HUNGRY "HUNGRY"
+9
View File
@@ -0,0 +1,9 @@
#define FIRST_DUCT_LAYER 1
#define SECOND_DUCT_LAYER 2
#define THIRD_DUCT_LAYER 4
#define FOURTH_DUCT_LAYER 8
#define FIFTH_DUCT_LAYER 16
#define DUCT_LAYER_DEFAULT THIRD_DUCT_LAYER
#define MACHINE_REAGENT_TRANSFER 10
+1 -2
View File
@@ -8,6 +8,5 @@
GLOBAL_LIST_INIT(blacklisted_pool_reagents, list(
/datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases
/datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc.
/datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/drug/anaphrodisiacplus, //literally asking for prefbreaks
/datum/reagent/consumable/femcum, /datum/reagent/consumable/semen //NO.
/datum/reagent/consumable/semen //NO.
))
+11 -4
View File
@@ -6,10 +6,17 @@
#define QDEL_HINT_IWILLGC 2 //functionally the same as the above. qdel should assume the object will gc on its own, and not check it.
#define QDEL_HINT_HARDDEL 3 //qdel should assume this object won't gc, and queue a hard delete using a hard reference.
#define QDEL_HINT_HARDDEL_NOW 4 //qdel should assume this object won't gc, and hard del it post haste.
#define QDEL_HINT_FINDREFERENCE 5 //functionally identical to QDEL_HINT_QUEUE if TESTING is not enabled in _compiler_options.dm.
//if TESTING is enabled, qdel will call this object's find_references() verb.
#define QDEL_HINT_IFFAIL_FINDREFERENCE 6 //Above but only if gc fails.
//defines for the gc_destroyed var
#ifdef LEGACY_REFERENCE_TRACKING
/** If LEGACY_REFERENCE_TRACKING is enabled, qdel will call this object's find_references() verb.
*
* Functionally identical to QDEL_HINT_QUEUE if GC_FAILURE_HARD_LOOKUP is not enabled in _compiler_options.dm.
*/
#define QDEL_HINT_FINDREFERENCE 5
/// Behavior as QDEL_HINT_FINDREFERENCE, but only if the GC fails and a hard delete is forced.
#define QDEL_HINT_IFFAIL_FINDREFERENCE 6
#endif
#define GC_QUEUE_CHECK 1
#define GC_QUEUE_HARDDELETE 2
+4
View File
@@ -57,6 +57,10 @@
#define ADD_REAGENT 2 // reagent added
#define REM_REAGENT 3 // reagent removed (may still exist)
#define PILL_STYLE_COUNT 22 //Update this if you add more pill icons or you die (literally, we'll toss a nuke at whever your ip turns up)
#define RANDOM_PILL_STYLE 22 //Dont change this one though
#define THRESHOLD_UNHUSK 50 // health threshold for synthflesh/rezadone to unhusk someone
//reagent bitflags, used for altering how they works
+21
View File
@@ -0,0 +1,21 @@
// Anomaly core types
/// Bluespace cores
#define ANOMALY_CORE_BLUESPACE /obj/item/assembly/signaler/anomaly/bluespace
/// Gravitational cores
#define ANOMALY_CORE_GRAVITATIONAL /obj/item/assembly/signaler/anomaly/grav
/// Flux
#define ANOMALY_CORE_FLUX /obj/item/assembly/signaler/anomaly/flux
/// Vortex
#define ANOMALY_CORE_VORTEX /obj/item/assembly/signaler/anomaly/vortex
/// Pyro
#define ANOMALY_CORE_PYRO /obj/item/assembly/signaler/anomaly/pyro
// Max amounts of cores you can make
#define MAX_CORES_BLUESPACE 8
#define MAX_CORES_GRAVITATIONAL 8
#define MAX_CORES_FLUX 8
#define MAX_CORES_VORTEX 8
#define MAX_CORES_PYRO 8
/// chance supermatter anomalies drop real cores
#define SUPERMATTER_ANOMALY_DROP_CHANCE 20
+7
View File
@@ -0,0 +1,7 @@
#define ROCKPAPERSCISSORS_RANGE 3
#define ROCKPAPERSCISSORS_TIME_LIMIT 20 SECONDS
#define ROCKPAPERSCISSORS_LOSE "lose"
#define ROCKPAPERSCISSORS_WIN "win"
#define ROCKPAPERSCISSORS_TIE "tie"
#define ROCKPAPERSCISSORS_NOT_DECIDED "not_decided"
+2
View File
@@ -17,6 +17,7 @@
#define ROLE_ALIEN "xenomorph"
#define ROLE_PAI "pAI"
#define ROLE_CULTIST "cultist"
#define ROLE_HERETIC "Heretic"
#define ROLE_BLOB "blob"
#define ROLE_NINJA "space ninja"
#define ROLE_MONKEY "monkey"
@@ -64,6 +65,7 @@ GLOBAL_LIST_INIT(special_roles, list(
ROLE_INTERNAL_AFFAIRS = /datum/game_mode/traitor/internal_affairs,
ROLE_SENTIENCE,
ROLE_GANG = /datum/game_mode/gang,
ROLE_HERETIC = /datum/game_mode/heretics,
ROLE_BLOODSUCKER = /datum/game_mode/bloodsucker
//ROLE_MONSTERHUNTER Disabled for now
))
+9
View File
@@ -30,6 +30,8 @@
#define STATUS_EFFECT_FLESHMEND /datum/status_effect/fleshmend //Very fast healing; suppressed by fire, and heals less fire damage
#define STATUS_EFFECT_PANACEA /datum/status_effect/panacea //Anatomic panacea that directly heals, rather than injecting a small chemical cocktail
#define STATUS_EFFECT_EXERCISED /datum/status_effect/exercised //Prevents heart disease
#define STATUS_EFFECT_HIPPOCRATIC_OATH /datum/status_effect/hippocraticOath //Gives you an aura of healing as well as regrowing the Rod of Asclepius if lost
@@ -111,6 +113,13 @@
#define STATUS_EFFECT_LIMP /datum/status_effect/limp //For when you have a busted leg (or two!) and want additional slowdown when walking on that leg
#define STATUS_EFFECT_AMOK /datum/status_effect/amok //Makes the target automatically strike out at adjecent non-heretics.
#define STATUS_EFFECT_CLOUDSTRUCK /datum/status_effect/cloudstruck //blinds and applies an overlay.
/// shoves inflict this to indicate the next shove while this is in effect should disarm guns
#define STATUS_EFFECT_OFF_BALANCE /datum/status_effect/off_balance
/////////////
// NEUTRAL //
/////////////
+1 -1
View File
@@ -19,7 +19,7 @@
/// Size of EACH left/right border icon for volumetric boxes
#define VOLUMETRIC_STORAGE_BOX_BORDER_SIZE 1
/// Minimum pixels an item must have in volumetric scaled storage UI
#define MINIMUM_PIXELS_PER_ITEM 8
#define MINIMUM_PIXELS_PER_ITEM 16
/// Maximum number of objects that will be allowed to be displayed using the volumetric display system. Arbitrary number to prevent server lockups.
#define MAXIMUM_VOLUMETRIC_ITEMS 256
/// How much padding to give between items
+3
View File
@@ -24,7 +24,10 @@ GLOBAL_LIST_INIT(default_weight_class_to_volume, list(
// Let's keep all of this in one place. given what we put above anyways..
// volume amount for items
/// volume for a data disk
#define ITEM_VOLUME_DISK 1
/// volume for a shotgun stripper clip holding 4 shells
#define ITEM_VOLUME_STRIPPER_CLIP (DEFAULT_VOLUME_NORMAL * 0.5)
// #define SAMPLE_VOLUME_AMOUNT 2
+1 -8
View File
@@ -93,7 +93,6 @@
// If the subsystem isn't listed here it's either DEFAULT or PROCESS (if it's a processing subsystem child)
#define FIRE_PRIORITY_VORE 5
#define FIRE_PRIORITY_PING 10
#define FIRE_PRIORITY_IDLE_NPC 10
#define FIRE_PRIORITY_SERVER_MAINT 10
#define FIRE_PRIORITY_RESEARCH 10
@@ -146,11 +145,11 @@
#define SSAIR_EQUALIZE 8
#define SSAIR_ACTIVETURFS 9
// |= on overlays is not actually guaranteed to not add same appearances but we're optimistically using it anyway.
#define COMPILE_OVERLAYS(A)\
if (TRUE) {\
var/list/ad = A.add_overlays;\
var/list/rm = A.remove_overlays;\
var/list/po = A.priority_overlays;\
if(LAZYLEN(rm)){\
A.overlays -= rm;\
A.remove_overlays = null;\
@@ -159,11 +158,5 @@
A.overlays |= ad;\
A.add_overlays = null;\
}\
if(LAZYLEN(po)){\
A.overlays |= po;\
}\
else{\
A.priority_overlays = null;\
}\
A.flags_1 &= ~OVERLAY_QUEUED_1;\
}
+35 -4
View File
@@ -1,4 +1,35 @@
#define UI_INTERACTIVE 2 // Green/Interactive
#define UI_UPDATE 1 // Orange/Updates Only
#define UI_DISABLED 0 // Red/Disabled
#define UI_CLOSE -1 // Closed
/// Green eye; fully interactive
#define UI_INTERACTIVE 2
/// Orange eye; updates but is not interactive
#define UI_UPDATE 1
/// Red eye; disabled, does not update
#define UI_DISABLED 0
/// UI Should close
#define UI_CLOSE -1
/// Maximum number of windows that can be suspended/reused
#define TGUI_WINDOW_SOFT_LIMIT 5
/// Maximum number of open windows
#define TGUI_WINDOW_HARD_LIMIT 9
/// Maximum ping timeout allowed to detect zombie windows
#define TGUI_PING_TIMEOUT 4 SECONDS
/// Window does not exist
#define TGUI_WINDOW_CLOSED 0
/// Window was just opened, but is still not ready to be sent data
#define TGUI_WINDOW_LOADING 1
/// Window is free and ready to receive data
#define TGUI_WINDOW_READY 2
/// Get a window id based on the provided pool index
#define TGUI_WINDOW_ID(index) "tgui-window-[index]"
/// Get a pool index of the provided window id
#define TGUI_WINDOW_INDEX(window_id) text2num(copytext(window_id, 13))
/// Creates a message packet for sending via output()
#define TGUI_CREATE_MESSAGE(type, payload) ( \
url_encode(json_encode(list( \
"type" = type, \
"payload" = payload, \
))))
+6 -2
View File
@@ -104,7 +104,9 @@
#define TRAIT_RESISTCOLD "resist_cold"
#define TRAIT_RESISTHIGHPRESSURE "resist_high_pressure"
#define TRAIT_RESISTLOWPRESSURE "resist_low_pressure"
#define TRAIT_BOMBIMMUNE "bomb_immunity"
#define TRAIT_RADIMMUNE "rad_immunity"
#define TRAIT_GENELESS "geneless"
#define TRAIT_VIRUSIMMUNE "virus_immunity"
#define TRAIT_PIERCEIMMUNE "pierce_immunity"
#define TRAIT_NODISMEMBER "dismember_immunity"
@@ -178,6 +180,7 @@
#define TRAIT_FREERUNNING "freerunning"
#define TRAIT_SKITTISH "skittish"
#define TRAIT_POOR_AIM "poor_aim"
#define TRAIT_INSANE_AIM "insane_aim" //they don't miss. they never miss. it was all part of their immaculate plan.
#define TRAIT_PROSOPAGNOSIA "prosopagnosia"
#define TRAIT_DRUNK_HEALING "drunk_healing"
#define TRAIT_TAGGER "tagger"
@@ -202,7 +205,7 @@
#define TRAIT_NO_ALCOHOL "alcohol_intolerance"
#define TRAIT_MUTATION_STASIS "mutation_stasis" //Prevents processed genetics mutations from processing.
#define TRAIT_FAST_PUMP "fast_pump"
#define TRAIT_NICE_SHOT "nice_shot" //hnnnnnnnggggg..... you're pretty good....
#define TRAIT_NICE_SHOT "nice_shot" //hnnnnnnnggggg..... you're pretty good...
// mobility flag traits
// IN THE FUTURE, IT WOULD BE NICE TO DO SOMETHING SIMILAR TO https://github.com/tgstation/tgstation/pull/48923/files (ofcourse not nearly the same because I have my.. thoughts on it)
@@ -256,6 +259,7 @@
#define CURSED_ITEM_TRAIT "cursed-item" // The item is magically cursed
#define ABSTRACT_ITEM_TRAIT "abstract-item"
#define STATUS_EFFECT_TRAIT "status-effect"
#define CLOTHING_TRAIT "clothing"
#define ROUNDSTART_TRAIT "roundstart" //cannot be removed without admin intervention
#define GHOSTROLE_TRAIT "ghostrole"
#define APHRO_TRAIT "aphro"
@@ -310,4 +314,4 @@
#define ACTIVE_BLOCK_TRAIT "active_block"
/// This trait is added by the parry system.
#define ACTIVE_PARRY_TRAIT "active_parry"
#define STICKY_NODROP "sticky-nodrop" //sticky nodrop sounds like a bad soundcloud rapper's name
#define STICKY_NODROP "sticky-nodrop" //sticky nodrop sounds like a bad soundcloud rapper's name
+1
View File
@@ -75,6 +75,7 @@
#define VV_HK_MARK "mark"
#define VV_HK_ADDCOMPONENT "addcomponent"
#define VV_HK_MODIFY_TRAITS "modtraits"
#define VV_HK_VIEW_REFERENCES "viewreferences"
// /datum/gas_mixture
#define VV_HK_SET_MOLES "set_moles"
+95 -19
View File
@@ -1,4 +1,13 @@
#define WOUND_DAMAGE_EXPONENT 1.4
#define WOUND_DAMAGE_EXPONENT 1.225
/// an attack must do this much damage after armor in order to roll for being a wound (incremental pressure damage need not apply)
#define WOUND_MINIMUM_DAMAGE 5
/// an attack must do this much damage after armor in order to be eliigible to dismember a suitably mushed bodypart
#define DISMEMBER_MINIMUM_DAMAGE 10
/// any damage dealt over this is ignored for damage rolls unless the target has the frail quirk (35^1.4=145)
#define WOUND_MAX_CONSIDERED_DAMAGE 35
#define WOUND_SEVERITY_TRIVIAL 0 // for jokey/meme wounds like stubbed toe, no standard messages/sounds or second winds
#define WOUND_SEVERITY_MODERATE 1
@@ -6,38 +15,105 @@
#define WOUND_SEVERITY_CRITICAL 3
#define WOUND_SEVERITY_LOSS 4 // theoretical total limb loss, like dismemberment for cuts
#define WOUND_BRUTE 0
#define WOUND_SHARP 1
#define WOUND_BURN 2
/// any brute weapon/attack that doesn't have sharpness. rolls for blunt bone wounds
#define WOUND_BLUNT 1
/// any brute weapon/attack with sharpness = SHARP_EDGED. rolls for slash wounds
#define WOUND_SLASH 2
/// any brute weapon/attack with sharpness = SHARP_POINTY. rolls for piercing wounds
#define WOUND_PIERCE 3
/// any concentrated burn attack (lasers really). rolls for burning wounds
#define WOUND_BURN 4
// How much determination reagent to add each time someone gains a new wound in [/datum/wound/proc/second_wind()]
#define WOUND_DETERMINATION_MODERATE 1
#define WOUND_DETERMINATION_SEVERE 2.5
#define WOUND_DETERMINATION_CRITICAL 5
#define WOUND_DETERMINATION_LOSS 7.5
/// the max amount of determination you can have
#define WOUND_DETERMINATION_MAX 10
// set wound_bonus on an item or attack to this to disable checking wounding for the attack
/// set wound_bonus on an item or attack to this to disable checking wounding for the attack
#define CANT_WOUND -100
// list in order of highest severity to lowest
#define WOUND_LIST_BONE list(/datum/wound/brute/bone/critical, /datum/wound/brute/bone/severe, /datum/wound/brute/bone/moderate)
#define WOUND_LIST_CUT list(/datum/wound/brute/cut/loss, /datum/wound/brute/cut/critical, /datum/wound/brute/cut/severe, /datum/wound/brute/cut/moderate)
#define WOUND_LIST_BURN list(/datum/wound/burn/critical, /datum/wound/burn/severe, /datum/wound/burn/moderate)
GLOBAL_LIST_INIT(global_wound_types, list(WOUND_BLUNT = list(/datum/wound/blunt/critical, /datum/wound/blunt/severe, /datum/wound/blunt/moderate),
WOUND_SLASH = list(/datum/wound/slash/critical, /datum/wound/slash/severe, /datum/wound/slash/moderate),
WOUND_PIERCE = list(/datum/wound/pierce/critical, /datum/wound/pierce/severe, /datum/wound/pierce/moderate),
WOUND_BURN = list(/datum/wound/burn/critical, /datum/wound/burn/severe, /datum/wound/burn/moderate)
))
GLOBAL_LIST_INIT(global_all_wound_types, list(/datum/wound/blunt/critical, /datum/wound/blunt/severe, /datum/wound/blunt/moderate,
/datum/wound/slash/critical, /datum/wound/slash/severe, /datum/wound/slash/moderate,
/datum/wound/pierce/critical, /datum/wound/pierce/severe, /datum/wound/pierce/moderate,
/datum/wound/burn/critical, /datum/wound/burn/severe, /datum/wound/burn/moderate))
// Thresholds for infection for burn wounds, once infestation hits each threshold, things get steadily worse
#define WOUND_INFECTION_MODERATE 4 // below this has no ill effects from infection
#define WOUND_INFECTION_SEVERE 8 // then below here, you ooze some pus and suffer minor tox damage, but nothing serious
#define WOUND_INFECTION_CRITICAL 12 // then below here, your limb occasionally locks up from damage and infection and briefly becomes disabled. Things are getting really bad
#define WOUND_INFECTION_SEPTIC 20 // below here, your skin is almost entirely falling off and your limb locks up more frequently. You are within a stone's throw of septic paralysis and losing the limb
/// below this has no ill effects from infection
#define WOUND_INFECTION_MODERATE 4
/// then below here, you ooze some pus and suffer minor tox damage, but nothing serious
#define WOUND_INFECTION_SEVERE 8
/// then below here, your limb occasionally locks up from damage and infection and briefly becomes disabled. Things are getting really bad
#define WOUND_INFECTION_CRITICAL 12
/// below here, your skin is almost entirely falling off and your limb locks up more frequently. You are within a stone's throw of septic paralysis and losing the limb
#define WOUND_INFECTION_SEPTIC 20
// above WOUND_INFECTION_SEPTIC, your limb is completely putrid and you start rolling to lose the entire limb by way of paralyzation. After 3 failed rolls (~4-5% each probably), the limb is paralyzed
#define WOUND_BURN_SANITIZATION_RATE 0.15 // how quickly sanitization removes infestation and decays per tick
#define WOUND_CUT_MAX_BLOODFLOW 8 // how much blood you can lose per tick per cut max. 8 is a LOT of blood for one cut so don't worry about hitting it easily
#define WOUND_BONE_HEAD_TIME_VARIANCE 20 // if we suffer a bone wound to the head that creates brain traumas, the timer for the trauma cycle is +/- by this percent (0-100)
/// how quickly sanitization removes infestation and decays per tick
#define WOUND_BURN_SANITIZATION_RATE 0.15
/// how much blood you can lose per tick per slash max. 8 is a LOT of blood for one cut so don't worry about hitting it easily
#define WOUND_SLASH_MAX_BLOODFLOW 8
/// dead people don't bleed, but they can clot! this is the minimum amount of clotting per tick on dead people, so even critical cuts will slowly clot in dead people
#define WOUND_SLASH_DEAD_CLOT_MIN 0.05
/// if we suffer a bone wound to the head that creates brain traumas, the timer for the trauma cycle is +/- by this percent (0-100)
#define WOUND_BONE_HEAD_TIME_VARIANCE 20
// The following are for persistent scar save formats
#define SCAR_SAVE_ZONE 1 // The body_zone we're applying to on granting
#define SCAR_SAVE_DESC 2 // The description we're loading
#define SCAR_SAVE_PRECISE_LOCATION 3 // The precise location we're loading
#define SCAR_SAVE_SEVERITY 4 // The severity the scar had
/// The version number of the scar we're saving
#define SCAR_SAVE_VERS 1
/// The body_zone we're applying to on granting
#define SCAR_SAVE_ZONE 2
/// The description we're loading
#define SCAR_SAVE_DESC 3
/// The precise location we're loading
#define SCAR_SAVE_PRECISE_LOCATION 4
/// The severity the scar had
#define SCAR_SAVE_SEVERITY 5
///how many fields there are above (NOT INCLUDING THIS OBVIOUSLY)
#define SCAR_SAVE_LENGTH 5
// increment this number when you update the persistent scarring format in a way that invalidates previous saved scars (new fields, reordering, etc)
/// saved scars with a version lower than this will be discarded
#define SCAR_CURRENT_VERSION 1
// With the wounds pt. 2 update, general dismemberment now requires 2 things for a limb to be dismemberable (bone only creatures just need the second):
// 1. Skin is mangled: A critical slash or pierce wound on that limb
// 2. Bone is mangled: At least a severe bone wound on that limb
// see [/obj/item/bodypart/proc/get_mangled_state] for more information
#define BODYPART_MANGLED_NONE 0
#define BODYPART_MANGLED_BONE 1
#define BODYPART_MANGLED_FLESH 2
#define BODYPART_MANGLED_BOTH 3
// What kind of biology we have, and what wounds we can suffer, mostly relies on the HAS_FLESH and HAS_BONE species traits on human species
/// golems and androids, cannot suffer any wounds
#define BIO_INORGANIC 0
/// skeletons and plasmemes, can only suffer bone wounds, only needs mangled bone to be able to dismember
#define BIO_JUST_BONE 1
/// nothing right now, maybe slimepeople in the future, can only suffer slashing, piercing, and burn wounds
#define BIO_JUST_FLESH 2
/// standard humanoids, can suffer all wounds, needs mangled bone and flesh to dismember
#define BIO_FLESH_BONE 3
/// If this wound requires having the HAS_FLESH flag for humanoids
#define FLESH_WOUND (1<<0)
/// If this wound requires having the HAS_BONE flag for humanaoids
#define BONE_WOUND (1<<1)
/// If having this wound counts as mangled flesh for dismemberment
#define MANGLES_FLESH (1<<2)
/// If having this wound counts as mangled bone for dismemberment
#define MANGLES_BONE (1<<3)
/// If this wound marks the limb as being allowed to have gauze applied
#define ACCEPTS_GAUZE (1<<4)
+1 -1
View File
@@ -17,7 +17,7 @@
var/matrix/mtrx=new()
return mtrx.Scale(0.65)
proc/get_racelist(var/mob/user)//This proc returns a list of species that 'user' has available to them. It searches the list of ckeys attached to the 'whitelist' var for a species and also checks if they're an admin.
/proc/get_racelist(mob/user)//This proc returns a list of species that 'user' has available to them. It searches the list of ckeys attached to the 'whitelist' var for a species and also checks if they're an admin.
for(var/spath in subtypesof(/datum/species))
var/datum/species/S = new spath()
var/list/wlist = S.whitelist
+5
View File
@@ -0,0 +1,5 @@
#define EXTOOLS_LOGGING // rust_g is used as a fallback if this is undefined
/proc/extools_log_write()
/proc/extools_finalize_logging()
+8
View File
@@ -681,3 +681,11 @@
continue
if(istype(D, path))
return TRUE
/proc/safe_json_encode(list/L, default = "")
. = default
return json_encode(L)
/proc/safe_json_decode(string, default = list())
. = default
return json_decode(string)
+22 -4
View File
@@ -4,10 +4,15 @@
#define SEND_SOUND(target, sound) DIRECT_OUTPUT(target, sound)
#define SEND_TEXT(target, text) DIRECT_OUTPUT(target, text)
#define WRITE_FILE(file, text) DIRECT_OUTPUT(file, text)
#ifdef EXTOOLS_LOGGING
// proc hooked, so we can just put in standard TRUE and FALSE
#define WRITE_LOG(log, text) extools_log_write(log,text,TRUE)
#define WRITE_LOG_NO_FORMAT(log, text) extools_log_write(log,text,FALSE)
#else
//This is an external call, "true" and "false" are how rust parses out booleans
#define WRITE_LOG(log, text) rustg_log_write(log, text, "true")
#define WRITE_LOG_NO_FORMAT(log, text) rustg_log_write(log, text, "false")
#endif
//print a warning message to world.log
#define WARNING(MSG) warning("[MSG] in [__FILE__] at line [__LINE__] src: [UNLINT(src)] usr: [usr].")
/proc/warning(msg)
@@ -201,13 +206,26 @@
WRITE_LOG(log, "Starting up round ID [GLOB.round_id].\n-------------------------")
/* ui logging */
/proc/log_tgui(text)
WRITE_LOG(GLOB.tgui_log, text)
/proc/log_tgui(user_or_client, text)
var/entry = ""
if(!user_or_client)
entry += "no user"
else if(istype(user_or_client, /mob))
var/mob/user = user_or_client
entry += "[user.ckey] (as [user])"
else if(istype(user_or_client, /client))
var/client/client = user_or_client
entry += "[client.ckey]"
entry += ":\n[text]"
WRITE_LOG(GLOB.tgui_log, entry)
/* Close open log handles. This should be called as late as possible, and no logging should hapen after. */
/proc/shutdown_logging()
#ifdef EXTOOLS_LOGGING
extools_finalize_logging()
#else
rustg_log_close_all()
#endif
/* Helper procs for building detailed log lines */
+13 -6
View File
@@ -85,9 +85,6 @@ GLOBAL_VAR_INIT(cmp_field, "name")
/proc/cmp_advdisease_resistance_asc(datum/disease/advance/A, datum/disease/advance/B)
return A.totalResistance() - B.totalResistance()
/proc/cmp_job_display_asc(datum/job/A, datum/job/B)
return A.display_order - B.display_order
/proc/cmp_uplink_items_dsc(datum/uplink_item/A, datum/uplink_item/B)
return sorttext(initial(B.name), initial(A.name))
@@ -97,9 +94,6 @@ GLOBAL_VAR_INIT(cmp_field, "name")
/proc/cmp_numbered_displays_name_dsc(datum/numbered_display/A, datum/numbered_display/B)
return sorttext(B.sample_object.name, A.sample_object.name)
/proc/cmp_reagents_asc(datum/reagent/a, datum/reagent/b)
return sorttext(initial(b.name),initial(a.name))
/proc/cmp_quirk_asc(datum/quirk/A, datum/quirk/B)
var/a_sign = num2sign(initial(A.value) * -1)
var/b_sign = num2sign(initial(B.value) * -1)
@@ -133,3 +127,16 @@ GLOBAL_VAR_INIT(cmp_field, "name")
return A.required_temp - B.required_temp //return coldest
else
return B.required_temp - A.required_temp //return hottest
/proc/cmp_mob_realname_dsc(mob/A,mob/B)
return sorttext(A.real_name,B.real_name)
/proc/cmp_job_display_asc(datum/job/A, datum/job/B)
return A.display_order - B.display_order
/proc/cmp_reagents_asc(datum/reagent/a, datum/reagent/b)
return sorttext(initial(b.name),initial(a.name))
/proc/cmp_typepaths_asc(A, B)
return sorttext("[B]","[A]")
+5 -5
View File
@@ -17,9 +17,9 @@ For fast lookups, this is generated using regenerate_donator_grouping_list()
/proc/regenerate_donator_grouping_list()
GLOB.donators_by_group = list() //reinit everything
var/list/donator_list = GLOB.donators_by_group //cache
var/list/tier_1 = TIER_1_DONATORS
donator_list[DONATOR_GROUP_TIER_1] = tier_1.Copy() //The .Copy() is to "decouple"/make a new list, rather than letting the global list impact the config list.
var/list/tier_2 = tier_1 + TIER_2_DONATORS //Using + on lists implies making new lists, so we don't need to manually Copy().
var/list/tier_3 = TIER_3_DONATORS
donator_list[DONATOR_GROUP_TIER_3] = tier_3.Copy() //The .Copy() is to "decouple"/make a new list, rather than letting the global list impact the config list.
var/list/tier_2 = tier_3 + TIER_2_DONATORS //Using + on lists implies making new lists, so we don't need to manually Copy().
donator_list[DONATOR_GROUP_TIER_2] = tier_2
var/list/tier_3 = tier_2 + TIER_3_DONATORS
donator_list[DONATOR_GROUP_TIER_3] = tier_3
var/list/tier_1 = tier_2 + TIER_1_DONATORS
donator_list[DONATOR_GROUP_TIER_1] = tier_1
+15
View File
@@ -71,3 +71,18 @@
/proc/pathflatten(path)
return replacetext(path, "/", "_")
/// Returns the md5 of a file at a given path.
/proc/md5filepath(path)
. = md5(file(path))
/// Save file as an external file then md5 it.
/// Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
/proc/md5asfile(file)
var/static/notch = 0
// its importaint this code can handle md5filepath sleeping instead of hard blocking, if it's converted to use rust_g.
var/filename = "tmp/md5asfile.[world.realtime].[world.timeofday].[world.time].[world.tick_usage].[notch]"
notch = WRAP(notch+1, 0, 2^15)
fcopy(file, filename)
. = md5filepath(filename)
fdel(filename)
+4 -4
View File
@@ -37,10 +37,10 @@
//CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE
//mammal bodyparts (fucking furries)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails_animated, GLOB.mam_tails_animated_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts/mam_snouts, GLOB.mam_snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/mam_tails_animated, GLOB.mam_tails_animated_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/taur, GLOB.taur_list)
//xeno parts (hiss?)
init_sprite_accessory_subtypes(/datum/sprite_accessory/xeno_head, GLOB.xeno_head_list)
+38 -17
View File
@@ -1103,24 +1103,36 @@ GLOBAL_LIST_INIT(freon_color_matrix, list("#2E5E69", "#60A2A8", "#A1AFB1", rgb(0
alpha += 25
obj_flags &= ~FROZEN
/// Save file used in icon2base64. Used for converting icons to base64.
GLOBAL_DATUM_INIT(dummySave, /savefile, new("tmp/dummySave.sav")) //Cache of icons for the browser output
//Converts an icon to base64. Operates by putting the icon in the iconCache savefile,
// exporting it as text, and then parsing the base64 from that.
// (This relies on byond automatically storing icons in savefiles as base64)
/proc/icon2base64(icon/icon, iconKey = "misc")
/// Generate a filename for this asset
/// The same asset will always lead to the same asset name
/// (Generated names do not include file extention.)
/proc/generate_asset_name(file)
return "asset.[md5(fcopy_rsc(file))]"
/**
* Converts an icon to base64. Operates by putting the icon in the iconCache savefile,
* exporting it as text, and then parsing the base64 from that.
* (This relies on byond automatically storing icons in savefiles as base64)
*/
/proc/icon2base64(icon/icon)
if (!isicon(icon))
return FALSE
WRITE_FILE(GLOB.iconCache[iconKey], icon)
var/iconData = GLOB.iconCache.ExportText(iconKey)
WRITE_FILE(GLOB.dummySave["dummy"], icon)
var/iconData = GLOB.dummySave.ExportText("dummy")
var/list/partial = splittext(iconData, "{")
return replacetext(copytext_char(partial[2], 3, -5), "\n", "")
/proc/icon2html(thing, target, icon_state, dir, frame = 1, moving = FALSE)
/proc/icon2html(thing, target, icon_state, dir = SOUTH, frame = 1, moving = FALSE, sourceonly = FALSE)
if (!thing)
return
var/key
var/icon/I = thing
if (!target)
return
if (target == world)
@@ -1136,17 +1148,26 @@ GLOBAL_LIST_INIT(freon_color_matrix, list("#2E5E69", "#60A2A8", "#A1AFB1", rgb(0
if (!isicon(I))
if (isfile(thing)) //special snowflake
var/name = sanitize_filename("[generate_asset_name(thing)].png")
if(!SSassets.cache[name])
register_asset(name, thing)
if (!SSassets.cache[name])
SSassets.transport.register_asset(name, thing)
for (var/thing2 in targets)
send_asset(thing2, key)
return "<img class='icon icon-misc' src=\"[url_encode(name)]\">"
SSassets.transport.send_assets(thing2, name)
if(sourceonly)
return SSassets.transport.get_asset_url(name)
return "<img class='icon icon-misc' src='[SSassets.transport.get_asset_url(name)]'>"
var/atom/A = thing
if (isnull(dir))
dir = A.dir
I = A.icon
if (isnull(icon_state))
icon_state = A.icon_state
I = A.icon
if (!(icon_state in icon_states(I, 1)))
icon_state = initial(A.icon_state)
if (isnull(dir))
dir = initial(A.dir)
if (isnull(dir))
dir = A.dir
if (ishuman(thing)) // Shitty workaround for a BYOND issue.
var/icon/temp = I
I = icon()
@@ -1162,11 +1183,11 @@ GLOBAL_LIST_INIT(freon_color_matrix, list("#2E5E69", "#60A2A8", "#A1AFB1", rgb(0
key = "[generate_asset_name(I)].png"
if(!SSassets.cache[key])
register_asset(key, I)
SSassets.transport.register_asset(key, I)
for (var/thing2 in targets)
send_asset(thing2, key)
SSassets.transport.send_assets(thing2, key)
return "<img class='icon icon-[icon_state]' src=\"[url_encode(key)]\">"
return "<img class='icon icon-[icon_state]' src='[SSassets.transport.get_asset_url(key)]'>"
/proc/icon2base64html(thing)
if (!thing)
+14 -7
View File
@@ -93,16 +93,16 @@
if(!GLOB.mam_body_markings_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_body_markings, GLOB.mam_body_markings_list)
if(!GLOB.mam_tails_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_tails, GLOB.mam_tails_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/mam_tails, GLOB.mam_tails_list)
if(!GLOB.mam_ears_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_ears, GLOB.mam_ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears/mam_ears, GLOB.mam_ears_list)
if(!GLOB.mam_snouts_list.len)
init_sprite_accessory_subtypes(/datum/sprite_accessory/mam_snouts, GLOB.mam_snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts/mam_snouts, GLOB.mam_snouts_list)
//snowflake check so people's ckey features don't get randomly put on unmonkeys/spawns
var/list/snowflake_mam_tails_list = list()
for(var/mtpath in GLOB.mam_tails_list)
var/datum/sprite_accessory/mam_tails/instance = GLOB.mam_tails_list[mtpath]
var/datum/sprite_accessory/tails/mam_tails/instance = GLOB.mam_tails_list[mtpath]
if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -120,7 +120,7 @@
snowflake_markings_list[S.name] = mmpath
var/list/snowflake_ears_list = list()
for(var/mepath in GLOB.mam_ears_list)
var/datum/sprite_accessory/mam_ears/instance = GLOB.mam_ears_list[mepath]
var/datum/sprite_accessory/ears/mam_ears/instance = GLOB.mam_ears_list[mepath]
if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -129,7 +129,7 @@
snowflake_ears_list[S.name] = mepath
var/list/snowflake_mam_snouts_list = list()
for(var/mspath in GLOB.mam_snouts_list)
var/datum/sprite_accessory/mam_snouts/instance = GLOB.mam_snouts_list[mspath]
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.mam_snouts_list[mspath]
if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -138,7 +138,7 @@
snowflake_mam_snouts_list[S.name] = mspath
var/list/snowflake_ipc_antenna_list = list()
for(var/mspath in GLOB.ipc_antennas_list)
var/datum/sprite_accessory/mam_snouts/instance = GLOB.ipc_antennas_list[mspath]
var/datum/sprite_accessory/snouts/mam_snouts/instance = GLOB.ipc_antennas_list[mspath]
if(istype(instance, /datum/sprite_accessory))
var/datum/sprite_accessory/S = instance
if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies))
@@ -264,6 +264,13 @@
if(!findname(.))
break
/proc/random_unique_ethereal_name(attempts_to_find_unique_name=10)
for(var/i in 1 to attempts_to_find_unique_name)
. = capitalize(ethereal_name())
if(!findname(.))
break
/proc/random_unique_moth_name(attempts_to_find_unique_name=10)
for(var/i in 1 to attempts_to_find_unique_name)
. = capitalize(pick(GLOB.moth_first)) + " " + capitalize(pick(GLOB.moth_last))
+6
View File
@@ -4,6 +4,12 @@
else
return "[pick(GLOB.lizard_names_female)]-[pick(GLOB.lizard_names_female)]"
/proc/ethereal_name()
var/tempname = "[pick(GLOB.ethereal_names)] [random_capital_letter()]"
if(prob(65))
tempname += random_capital_letter()
return tempname
/proc/plasmaman_name()
return "[pick(GLOB.plasmaman_names)] \Roman[rand(1,99)]"
+5 -5
View File
@@ -358,7 +358,7 @@
roundend_report.stylesheets = list()
roundend_report.add_stylesheet("roundend", 'html/browser/roundend.css')
roundend_report.add_stylesheet("font-awesome", 'html/font-awesome/css/all.min.css')
roundend_report.open(0)
roundend_report.open(FALSE)
/datum/controller/subsystem/ticker/proc/personal_report(client/C, popcount)
var/list/parts = list()
@@ -402,7 +402,7 @@
for (var/i in GLOB.ai_list)
var/mob/living/silicon/ai/aiPlayer = i
if(aiPlayer.mind)
parts += "<b>[aiPlayer.name]</b> (Played by: <b>[aiPlayer.mind.key]</b>)'s laws [aiPlayer.stat != DEAD ? "at the end of the round" : "when it was <span class='redtext'>deactivated</span>"] were:"
parts += "<b>[aiPlayer.name]</b>[aiPlayer.mind.hide_ckey ? "" : " (Played by: <b>[aiPlayer.mind.key]</b>)"]'s laws [aiPlayer.stat != DEAD ? "at the end of the round" : "when it was <span class='redtext'>deactivated</span>"] were:"
parts += aiPlayer.laws.get_law_list(include_zeroth=TRUE)
parts += "<b>Total law changes: [aiPlayer.law_change_counter]</b>"
@@ -413,14 +413,14 @@
for(var/mob/living/silicon/robot/robo in aiPlayer.connected_robots)
borg_num--
if(robo.mind)
robolist += "<b>[robo.name]</b> (Played by: <b>[robo.mind.key]</b>)[robo.stat == DEAD ? " <span class='redtext'>(Deactivated)</span>" : ""][borg_num ?", ":""]<br>"
robolist += "<b>[robo.name]</b>[robo.mind.hide_ckey ? "" : " (Played by: <b>[robo.mind.key]</b>)"] [robo.stat == DEAD ? " <span class='redtext'>(Deactivated)</span>" : ""][borg_num ?", ":""]<br>"
parts += "[robolist]"
if(!borg_spacer)
borg_spacer = TRUE
for (var/mob/living/silicon/robot/robo in GLOB.silicon_mobs)
if (!robo.connected_ai && robo.mind)
parts += "[borg_spacer?"<br>":""]<b>[robo.name]</b> (Played by: <b>[robo.mind.key]</b>) [(robo.stat != DEAD)? "<span class='greentext'>survived</span> as an AI-less borg!" : "was <span class='redtext'>unable to survive</span> the rigors of being a cyborg without an AI."] Its laws were:"
parts += "[borg_spacer?"<br>":""]<b>[robo.name]</b>[robo.mind.hide_ckey ? "" : " (Played by: <b>[robo.mind.key]</b>)"] [(robo.stat != DEAD)? "<span class='greentext'>survived</span> as an AI-less borg!" : "was <span class='redtext'>unable to survive</span> the rigors of being a cyborg without an AI."] Its laws were:"
if(robo) //How the hell do we lose robo between here and the world messages directly above this?
parts += robo.laws.get_law_list(include_zeroth=TRUE)
@@ -529,7 +529,7 @@
var/jobtext = ""
if(ply.assigned_role)
jobtext = " the <b>[ply.assigned_role]</b>"
var/text = "<b>[ply.key]</b> was <b>[ply.name]</b>[jobtext] and"
var/text = "<b>[ply.hide_ckey ? "<b>[ply.name]</b>[jobtext] " : "[ply.key]</b> was <b>[ply.name]</b>[jobtext] and "]"
if(ply.current)
if(ply.current.stat == DEAD)
text += " <span class='redtext'>died</span>"
+21 -1
View File
@@ -113,6 +113,22 @@
else
return trim(html_encode(name), max_length)
/**
* stripped_multiline_input but reflects to the user instead if it's too big and returns null.
*/
/proc/stripped_multiline_input_or_reflect(mob/user, message = "", title = "", default = "", max_length=MAX_MESSAGE_LEN, no_trim=FALSE)
var/name = input(user, message, title, default) as message|null
if(isnull(name)) // Return null if canceled.
return null
if(length(name) > max_length)
to_chat(user, name)
to_chat(user, "<span class='danger'>^^^----- The preceeding message has been DISCARDED for being over the maximum length of [max_length]. It has NOT been sent! -----^^^</span>")
return null
if(no_trim)
return copytext(html_encode(name), 1, max_length)
else
return trim(html_encode(name), max_length)
#define NO_CHARS_DETECTED 0
#define SPACES_DETECTED 1
#define SYMBOLS_DETECTED 2
@@ -760,6 +776,10 @@ GLOBAL_LIST_INIT(binary, list("0","1"))
else
return "[number]\th"
/proc/random_capital_letter()
return uppertext(pick(GLOB.alphabet))
/proc/unintelligize(message)
var/regex/word_boundaries = regex(@"\b[\S]+\b", "g")
var/prefix = message[1]
@@ -811,4 +831,4 @@ GLOBAL_LIST_INIT(binary, list("0","1"))
corrupted_text += pick(corruption_options)
if(prob(15))
corrupted_text += pick(corruption_options)
return corrupted_text
return corrupted_text
+14 -10
View File
@@ -462,16 +462,14 @@
else
. = max(0, min(255, 138.5177312231 * log(temp - 10) - 305.0447927307))
/proc/fusionpower2text(power) //used when displaying fusion power on analyzers
switch(power)
if(0 to 5)
return "low"
if(5 to 20)
return "mid"
if(20 to 50)
return "high"
if(50 to INFINITY)
return "super"
/proc/instability2text(instability) //used when displaying fusion power on analyzers
switch(instability)
if(0 to 2)
return "stable, meaning that its heat will always increase."
if(2 to 3)
return "metastable, meaning that its heat will trend upwards."
if (3 to INFINITY)
return "unstable, meaning that its heat will trend downwards."
/proc/color2hex(color) //web colors
if(!color)
@@ -620,6 +618,12 @@
else //regex everything else (works for /proc too)
return lowertext(replacetext("[the_type]", "[type2parent(the_type)]/", ""))
/// Return html to load a url.
/// for use inside of browse() calls to html assets that might be loaded on a cdn.
/proc/url2htmlloader(url)
return {"<html><head><meta http-equiv="refresh" content="0;URL='[url]'"/></head><body onLoad="parent.location='[url]'"></body></html>"}
/proc/strtohex(str)
if(!istext(str)||!str)
return
+17 -4
View File
@@ -11,15 +11,28 @@
#ifdef TESTING
#define DATUMVAR_DEBUGGING_MODE
//#define GC_FAILURE_HARD_LOOKUP //makes paths that fail to GC call find_references before del'ing.
//implies FIND_REF_NO_CHECK_TICK
/*
* Enables extools-powered reference tracking system, letting you see what is referencing objects that refuse to hard delete.
*
* * Requires TESTING to be defined to work.
*/
//#define REFERENCE_TRACKING
//#define FIND_REF_NO_CHECK_TICK //Sets world.loop_checks to false and prevents find references from sleeping
///Method of tracking references without using extools. Slower, kept to avoid over-reliance on extools.
//#define LEGACY_REFERENCE_TRACKING
#ifdef LEGACY_REFERENCE_TRACKING
///Use the legacy reference on things hard deleting by default.
//#define GC_FAILURE_HARD_LOOKUP
#ifdef GC_FAILURE_HARD_LOOKUP
#define FIND_REF_NO_CHECK_TICK
#endif //ifdef GC_FAILURE_HARD_LOOKUP
#endif //ifdef LEGACY_REFERENCE_TRACKING
//#define VISUALIZE_ACTIVE_TURFS //Highlights atmos active turfs in green
#endif
#endif //ifdef TESTING
//#define UNIT_TESTS //Enables unit tests via TEST_RUN_PARAMETER
#ifndef PRELOAD_RSC //set to:
+5 -1
View File
@@ -9,4 +9,8 @@ GLOBAL_DATUM(start_state, /datum/station_state) // Used in round-end report
//TODO clear this one up too
GLOBAL_DATUM(cult_narsie, /obj/singularity/narsie/large/cult)
GLOBAL_DATUM(cult_narsie, /obj/singularity/narsie/large/cult)
///We want reality_smash_tracker to exist only once and be accesable from anywhere.
GLOBAL_DATUM_INIT(reality_smash_track, /datum/reality_smash_tracker, new)
+52
View File
@@ -40,6 +40,46 @@ GLOBAL_LIST_EMPTY(insect_fluffs_list)
GLOBAL_LIST_EMPTY(insect_markings_list)
GLOBAL_LIST_EMPTY(caps_list)
//a way to index the right bodypart list given the type of bodypart
GLOBAL_LIST_INIT(mutant_reference_list, list(
"tail_lizard" = GLOB.tails_list_lizard,
"waggingtail_lizard" = GLOB.animated_tails_list_lizard,
"tail_human" = GLOB.tails_list_human,
"waggingtail_human" = GLOB.animated_tails_list_human,
"spines" = GLOB.spines_list,
"waggingspines" = GLOB.animated_spines_list,
"snout" = GLOB.snouts_list,
"frills" = GLOB.frills_list,
"horns" = GLOB.horns_list,
"ears" = GLOB.ears_list,
"body_markings" = GLOB.body_markings_list,
"wings" = GLOB.wings_list,
"wingsopen" = GLOB.wings_open_list,
"deco_wings" = GLOB.deco_wings_list,
"legs" = GLOB.legs_list,
"insect_wings" = GLOB.insect_wings_list,
"insect_fluff" = GLOB.insect_fluffs_list,
"insect_markings" = GLOB.insect_markings_list,
"caps" = GLOB.caps_list,
"ipc_screen" = GLOB.ipc_screens_list,
"ipc_antenna" = GLOB.ipc_antennas_list,
"mam_tail" = GLOB.mam_tails_list,
"mam_waggingtail" = GLOB.mam_tails_animated_list,
"mam_body_markings" = GLOB.mam_body_markings_list,
"mam_ears" = GLOB.mam_ears_list,
"mam_snouts" = GLOB.mam_snouts_list,
"taur" = GLOB.taur_list,
"xenodorsal" = GLOB.xeno_dorsal_list,
"xenohead" = GLOB.xeno_head_list,
"xenotail" = GLOB.xeno_tail_list))
//references wag types to regular types, wings open to wings, etc
GLOBAL_LIST_INIT(mutant_transform_list, list("wingsopen" = "wings",
"waggingtail_human" = "tail_human",
"waggingtail_lizard" = "tail_lizard",
"waggingspines" = "spines",
"mam_waggingtail" = "mam_tail"))
GLOBAL_LIST_INIT(ghost_forms_with_directions_list, list("ghost")) //stores the ghost forms that support directional sprites
GLOBAL_LIST_INIT(ghost_forms_with_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things
@@ -231,4 +271,16 @@ GLOBAL_LIST_INIT(speech_verbs, list("default","says","gibbers", "states", "chitt
GLOBAL_LIST_INIT(roundstart_tongues, list("default","human tongue" = /obj/item/organ/tongue, "lizard tongue" = /obj/item/organ/tongue/lizard, "skeleton tongue" = /obj/item/organ/tongue/bone, "fly tongue" = /obj/item/organ/tongue/fly, "ipc tongue" = /obj/item/organ/tongue/robot/ipc))
//locked parts are those that your picked species requires to have
//unlocked parts are those that anyone can choose on customisation regardless
//parts not in unlocked, but in all, are thus locked
GLOBAL_LIST_INIT(all_mutant_parts, list("tail_lizard" = "Tail", "mam_tail" = "Tail", "tail_human" = "Tail", "snout" = "Snout", "frills" = "Frills", "spines" = "Spines", "body_markings" = "Body Markings", "mam_body_markings" = "Species Markings" , "mam_ears" = "Ears", "ears" = "Ears", "mam_snouts" = "Snout", "legs" = "Legs", "deco_wings" = "Decorative Wings", "insect_wings" = "Insect Wings", "insect_fluff" = "Insect Fluff", "taur" = "Tauric Body", "insect_markings" = "Insect Markings", "wings" = "Wings", "xenohead" = "Caste Head", "xenotail" = "Tail", "xenodorsal" = "Dorsal Spines", "ipc_screen" = "Screen", "ipc_antenna" = "Antenna", "meat_type" = "Meat Type", "horns" = "Horns"))
GLOBAL_LIST_INIT(unlocked_mutant_parts, list("horns", "insect_fluff"))
//parts in either of the above two lists that require a second option that allows them to be coloured
GLOBAL_LIST_INIT(colored_mutant_parts, list("insect_wings" = "wings_color", "deco_wings" = "wings_color", "horns" = "horns_color"))
//body ids that have greyscale sprites
GLOBAL_LIST_INIT(greyscale_limb_types, list("human","moth","lizard","pod","plant","jelly","slime","golem","lum","stargazer","mush","ethereal","snail","c_golem","b_golem","mammal","xeno","ipc","insect","synthliz","avian","aquatic"))
//body ids that have prosthetic sprites
GLOBAL_LIST_INIT(prosthetic_limb_types, list("xion","bishop","cybersolutions","grayson","hephaestus","nanotrasen","talon"))
@@ -0,0 +1,13 @@
GLOBAL_LIST_INIT(loadout_categories, list(
LOADOUT_CATEGORY_BACKPACK = list(LOADOUT_SUBCATEGORY_BACKPACK_GENERAL, LOADOUT_SUBCATEGORY_BACKPACK_TOYS),
LOADOUT_CATEGORY_NECK = list(LOADOUT_SUBCATEGORY_NECK_GENERAL, LOADOUT_SUBCATEGORY_NECK_TIE, LOADOUT_SUBCATEGORY_NECK_SCARVES),
LOADOUT_CATEGORY_MASK = LOADOUT_SUBCATEGORIES_NONE,
LOADOUT_CATEGORY_HANDS = LOADOUT_SUBCATEGORIES_NONE,
LOADOUT_CATEGORY_UNIFORM = list(LOADOUT_SUBCATEGORY_UNIFORM_GENERAL, LOADOUT_SUBCATEGORY_UNIFORM_JOBS, LOADOUT_SUBCATEGORY_UNIFORM_SUITS, LOADOUT_SUBCATEGORY_UNIFORM_SKIRTS, LOADOUT_SUBCATEGORY_UNIFORM_DRESSES, LOADOUT_SUBCATEGORY_UNIFORM_SWEATERS, LOADOUT_SUBCATEGORY_UNIFORM_PANTS, LOADOUT_SUBCATEGORY_UNIFORM_SHORTS),
LOADOUT_CATEGORY_SUIT = list(LOADOUT_SUBCATEGORY_SUIT_GENERAL, LOADOUT_SUBCATEGORY_SUIT_COATS, LOADOUT_SUBCATEGORY_SUIT_JACKETS, LOADOUT_SUBCATEGORY_SUIT_JOBS),
LOADOUT_CATEGORY_HEAD = list(LOADOUT_SUBCATEGORY_HEAD_GENERAL, LOADOUT_SUBCATEGORY_HEAD_JOBS),
LOADOUT_CATEGORY_SHOES = LOADOUT_SUBCATEGORIES_NONE,
LOADOUT_CATEGORY_GLOVES = LOADOUT_SUBCATEGORIES_NONE,
LOADOUT_CATEGORY_GLASSES = LOADOUT_SUBCATEGORIES_NONE,
LOADOUT_CATEGORY_DONATOR = LOADOUT_SUBCATEGORIES_NONE
))
@@ -107,13 +107,8 @@ GLOBAL_LIST_INIT(maintenance_loot, list(
/obj/item/toy/eightball = 1,
/obj/item/reagent_containers/pill/floorpill = 1,
/obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 2,
/obj/item/storage/daki = 3, //VERY IMPORTANT CIT CHANGE - adds bodypillows to maint
/obj/item/storage/pill_bottle/penis_enlargement = 2,
/obj/item/storage/pill_bottle/breast_enlargement = 2,
/obj/item/clothing/shoes/wheelys = 1,
/obj/item/clothing/shoes/kindleKicks = 1,
/obj/item/autosurgeon/penis = 1,
/obj/item/autosurgeon/testicles = 1,
/obj/item/storage/box/marshmallow = 2,
/obj/item/clothing/gloves/tackler/offbrand = 1,
/obj/item/stack/sticky_tape = 1,
+1
View File
@@ -17,6 +17,7 @@ GLOBAL_LIST_INIT(golem_names, world.file2list("strings/names/golem.txt"))
GLOBAL_LIST_INIT(moth_first, world.file2list("strings/names/moth_first.txt"))
GLOBAL_LIST_INIT(moth_last, world.file2list("strings/names/moth_last.txt"))
GLOBAL_LIST_INIT(plasmaman_names, world.file2list("strings/names/plasmaman.txt"))
GLOBAL_LIST_INIT(ethereal_names, world.file2list("strings/names/ethereal.txt"))
GLOBAL_LIST_INIT(posibrain_names, world.file2list("strings/names/posibrain.txt"))
GLOBAL_LIST_INIT(nightmare_names, world.file2list("strings/names/nightmare.txt"))
GLOBAL_LIST_INIT(megacarp_first_names, world.file2list("strings/names/megacarp1.txt"))
+4
View File
@@ -13,6 +13,7 @@ GLOBAL_LIST_EMPTY(deliverybeacontags) //list of all tags associated with d
GLOBAL_LIST_EMPTY(nuke_list)
GLOBAL_LIST_EMPTY(alarmdisplay) //list of all machines or programs that can display station alerts
GLOBAL_LIST_EMPTY(singularities) //list of all singularities on the station (actually technically all engines)
GLOBAL_LIST_EMPTY(grounding_rods) //list of all grounding rods on the station
GLOBAL_LIST(chemical_reactions_list) //list of all /datum/chemical_reaction datums. Used during chemical reactions
GLOBAL_LIST(chemical_reagents_list) //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff
@@ -41,3 +42,6 @@ GLOBAL_LIST_EMPTY(ai_status_displays)
GLOBAL_LIST_EMPTY(mob_spawners) // All mob_spawn objects
GLOBAL_LIST_EMPTY(alert_consoles) // Station alert consoles, /obj/machinery/computer/station_alert
//list of everyone playing rock paper scissors
GLOBAL_LIST_EMPTY(rockpaperscissors_players)
+2
View File
@@ -37,7 +37,9 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_RESISTCOLD" = TRAIT_RESISTCOLD,
"TRAIT_RESISTHIGHPRESSURE" = TRAIT_RESISTHIGHPRESSURE,
"TRAIT_RESISTLOWPRESSURE" = TRAIT_RESISTLOWPRESSURE,
"TRAIT_BOMBIMMUNE" = TRAIT_BOMBIMMUNE,
"TRAIT_RADIMMUNE" = TRAIT_RADIMMUNE,
"TRAIT_GENELESS" = TRAIT_GENELESS,
"TRAIT_VIRUSIMMUNE" = TRAIT_VIRUSIMMUNE,
"TRAIT_PIERCEIMMUNE" = TRAIT_PIERCEIMMUNE,
"TRAIT_NODISMEMBER" = TRAIT_NODISMEMBER,

Some files were not shown because too many files have changed in this diff Show More