Merge remote-tracking branch 'origin/master' into TGUI-4
@@ -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)
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -4879,6 +4879,10 @@
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/holopad,
|
||||
/obj/machinery/door/poddoor/shutters/preopen{
|
||||
id = "hopqueue";
|
||||
name = "HoP Queue Shutters"
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/primary/central)
|
||||
"aiW" = (
|
||||
|
||||
@@ -334,8 +334,8 @@
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaM" = (
|
||||
/turf/open/floor/plasteel/yellowsiding/corner{
|
||||
icon_state = "yellowcornersiding";
|
||||
dir = 8
|
||||
dir = 8;
|
||||
icon_state = "yellowcornersiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaN" = (
|
||||
@@ -354,8 +354,8 @@
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaP" = (
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 8
|
||||
dir = 8;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaQ" = (
|
||||
@@ -433,8 +433,8 @@
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaW" = (
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 1
|
||||
dir = 1;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"aaX" = (
|
||||
@@ -550,8 +550,8 @@
|
||||
"abm" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 4
|
||||
dir = 4;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abn" = (
|
||||
@@ -580,8 +580,8 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 4
|
||||
dir = 4;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abr" = (
|
||||
@@ -595,8 +595,8 @@
|
||||
"abt" = (
|
||||
/obj/structure/pool/Rboard,
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 8
|
||||
dir = 8;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abu" = (
|
||||
@@ -659,8 +659,8 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
|
||||
/turf/open/floor/plasteel/yellowsiding/corner{
|
||||
icon_state = "yellowcornersiding";
|
||||
dir = 4
|
||||
dir = 4;
|
||||
icon_state = "yellowcornersiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abB" = (
|
||||
@@ -670,21 +670,21 @@
|
||||
pixel_y = -27
|
||||
},
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 1
|
||||
dir = 1;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abC" = (
|
||||
/obj/machinery/light,
|
||||
/turf/open/floor/plasteel/yellowsiding{
|
||||
icon_state = "yellowsiding";
|
||||
dir = 1
|
||||
dir = 1;
|
||||
icon_state = "yellowsiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abD" = (
|
||||
/turf/open/floor/plasteel/yellowsiding/corner{
|
||||
icon_state = "yellowcornersiding";
|
||||
dir = 1
|
||||
dir = 1;
|
||||
icon_state = "yellowcornersiding"
|
||||
},
|
||||
/area/crew_quarters/fitness/pool)
|
||||
"abE" = (
|
||||
@@ -6313,27 +6313,7 @@
|
||||
"aoz" = (
|
||||
/turf/closed/wall,
|
||||
/area/maintenance/fore)
|
||||
"aoA" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 9
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white/right,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"aoB" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/light{
|
||||
dir = 1
|
||||
},
|
||||
@@ -6350,23 +6330,6 @@
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"aoC" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 5
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white/left,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"aoH" = (
|
||||
/obj/structure/lattice,
|
||||
/obj/structure/grille,
|
||||
@@ -6692,44 +6655,10 @@
|
||||
},
|
||||
/turf/open/space,
|
||||
/area/space/nearstation)
|
||||
"apq" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"apr" = (
|
||||
/obj/machinery/gateway/centerstation,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"aps" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"apt" = (
|
||||
/obj/structure/chair{
|
||||
dir = 4
|
||||
@@ -6916,9 +6845,6 @@
|
||||
/turf/closed/wall/r_wall,
|
||||
/area/ai_monitored/nuke_storage)
|
||||
"apU" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 10
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white/left,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
@@ -6933,7 +6859,6 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"apV" = (
|
||||
/obj/machinery/gateway,
|
||||
/obj/effect/turf_decal/bot_white,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
@@ -6948,9 +6873,6 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/gateway)
|
||||
"apW" = (
|
||||
/obj/machinery/gateway{
|
||||
dir = 6
|
||||
},
|
||||
/obj/effect/turf_decal/bot_white/right,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
@@ -7876,32 +7798,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/gateway)
|
||||
"arY" = (
|
||||
/obj/structure/closet/crate/internals,
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/machinery/computer/gateway_control,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/gateway)
|
||||
"arZ" = (
|
||||
@@ -8904,6 +8801,32 @@
|
||||
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/closet/crate/internals,
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest{
|
||||
desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";
|
||||
name = "emergency lifejacket"
|
||||
},
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/flashlight,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/gateway)
|
||||
"auh" = (
|
||||
@@ -39042,7 +38965,6 @@
|
||||
/area/chapel/dock)
|
||||
"bKe" = (
|
||||
/obj/machinery/atmospherics/components/unary/vent_pump/on,
|
||||
/obj/structure/closet/emcloset,
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -40077,12 +39999,6 @@
|
||||
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/light/small{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/chair{
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -47273,7 +47189,7 @@
|
||||
"ceT" = (
|
||||
/obj/effect/turf_decal/stripes/line,
|
||||
/obj/structure/closet/emcloset,
|
||||
/turf/open/floor/plating/airless,
|
||||
/turf/open/floor/plating,
|
||||
/area/engine/engineering)
|
||||
"ceU" = (
|
||||
/obj/machinery/atmospherics/components/unary/vent_pump/on{
|
||||
@@ -50404,9 +50320,11 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/crew_quarters/heads/chief)
|
||||
"cqW" = (
|
||||
/obj/effect/spawner/structure/window/reinforced,
|
||||
/turf/closed/mineral,
|
||||
/area/chapel/asteroid/monastery)
|
||||
/obj/structure/chair,
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
/area/chapel/dock)
|
||||
"cqX" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/structure/lattice,
|
||||
@@ -52993,7 +52911,7 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/security/main)
|
||||
"cCT" = (
|
||||
/obj/machinery/rnd/production/protolathe/department/cargo,
|
||||
/obj/machinery/rnd/production/techfab/department/cargo,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/quartermaster/storage)
|
||||
"cCU" = (
|
||||
@@ -55664,11 +55582,11 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/crew_quarters/dorms)
|
||||
"izF" = (
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
/obj/structure/closet/emcloset,
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
/area/maintenance/department/science)
|
||||
/area/chapel/dock)
|
||||
"iAx" = (
|
||||
/obj/structure/cable{
|
||||
icon_state = "4-8"
|
||||
@@ -57738,10 +57656,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 6
|
||||
},
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/science)
|
||||
"nAs" = (
|
||||
/obj/machinery/door/airlock/engineering/glass{
|
||||
@@ -57904,7 +57819,7 @@
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/turf/open/floor/plating/airless,
|
||||
/area/space/nearstation)
|
||||
"nOY" = (
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
@@ -58007,10 +57922,7 @@
|
||||
/obj/structure/table,
|
||||
/obj/item/paper_bin,
|
||||
/obj/item/pen,
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/science)
|
||||
"odM" = (
|
||||
/obj/effect/landmark/barthpot,
|
||||
@@ -59532,14 +59444,13 @@
|
||||
/turf/open/floor/plating/airless,
|
||||
/area/space/nearstation)
|
||||
"ros" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
/obj/machinery/light/small{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
/area/maintenance/department/science)
|
||||
/area/chapel/dock)
|
||||
"rrb" = (
|
||||
/obj/structure/cable{
|
||||
icon_state = "1-2"
|
||||
@@ -60667,10 +60578,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 9
|
||||
},
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/science)
|
||||
"uos" = (
|
||||
/obj/machinery/computer/camera_advanced/base_construction,
|
||||
@@ -61099,13 +61007,6 @@
|
||||
/obj/structure/lattice,
|
||||
/turf/open/space/basic,
|
||||
/area/space/nearstation)
|
||||
"vpz" = (
|
||||
/obj/structure/girder,
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
},
|
||||
/area/maintenance/department/science)
|
||||
"vsk" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 4
|
||||
@@ -61620,12 +61521,6 @@
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/crew_quarters/bar)
|
||||
"wDe" = (
|
||||
/obj/effect/spawner/structure/window/reinforced,
|
||||
/turf/open/floor/plasteel/white{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
/area/chapel/dock)
|
||||
"wDl" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/obj/effect/turf_decal/stripes/corner,
|
||||
@@ -62038,10 +61933,7 @@
|
||||
/area/maintenance/department/science)
|
||||
"xsO" = (
|
||||
/obj/item/ectoplasm,
|
||||
/turf/open/floor/plating{
|
||||
initial_gas_mix = "o2=0.01;n2=0.01";
|
||||
luminosity = 2
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/science)
|
||||
"xuv" = (
|
||||
/obj/item/broken_bottle,
|
||||
@@ -75866,8 +75758,8 @@ aaa
|
||||
bGI
|
||||
bNs
|
||||
cfN
|
||||
cqW
|
||||
cqW
|
||||
cfN
|
||||
cfN
|
||||
cfN
|
||||
cfN
|
||||
bZY
|
||||
@@ -76379,7 +76271,7 @@ aaa
|
||||
aaa
|
||||
bGI
|
||||
bNs
|
||||
cqW
|
||||
cfN
|
||||
bOw
|
||||
cfN
|
||||
bOw
|
||||
@@ -80477,7 +80369,7 @@ aaa
|
||||
aht
|
||||
aqG
|
||||
bGE
|
||||
bKf
|
||||
cqW
|
||||
bKf
|
||||
bMw
|
||||
bNy
|
||||
@@ -80734,8 +80626,8 @@ aht
|
||||
aht
|
||||
aqG
|
||||
bGE
|
||||
bKf
|
||||
bKf
|
||||
izF
|
||||
ros
|
||||
bMx
|
||||
bNz
|
||||
bHM
|
||||
@@ -80991,7 +80883,7 @@ aaa
|
||||
aaa
|
||||
aqG
|
||||
bGE
|
||||
wDe
|
||||
bGE
|
||||
bHM
|
||||
bHM
|
||||
bNA
|
||||
@@ -97884,8 +97776,8 @@ aaa
|
||||
aaa
|
||||
aaa
|
||||
lcZ
|
||||
aoA
|
||||
apq
|
||||
apW
|
||||
apV
|
||||
apU
|
||||
aqQ
|
||||
arX
|
||||
@@ -98398,8 +98290,8 @@ aiT
|
||||
aiS
|
||||
aaa
|
||||
lcZ
|
||||
aoC
|
||||
aps
|
||||
apU
|
||||
apV
|
||||
apW
|
||||
aqS
|
||||
arZ
|
||||
@@ -107723,7 +107615,7 @@ aht
|
||||
bwm
|
||||
ikB
|
||||
iVJ
|
||||
izF
|
||||
lWy
|
||||
typ
|
||||
bwm
|
||||
aht
|
||||
@@ -108233,7 +108125,7 @@ bwm
|
||||
svN
|
||||
bIQ
|
||||
uek
|
||||
izF
|
||||
lWy
|
||||
bwm
|
||||
qnT
|
||||
lJr
|
||||
@@ -108488,9 +108380,9 @@ dMO
|
||||
lWy
|
||||
rxQ
|
||||
lWy
|
||||
ros
|
||||
izF
|
||||
izF
|
||||
bIQ
|
||||
lWy
|
||||
lWy
|
||||
mES
|
||||
lWy
|
||||
lWy
|
||||
@@ -108747,7 +108639,7 @@ bwm
|
||||
nzD
|
||||
uoj
|
||||
bwm
|
||||
izF
|
||||
lWy
|
||||
bwm
|
||||
dMI
|
||||
lWy
|
||||
@@ -109001,7 +108893,7 @@ bkF
|
||||
bwm
|
||||
bwm
|
||||
bwm
|
||||
ros
|
||||
bIQ
|
||||
bwm
|
||||
bwm
|
||||
bwm
|
||||
@@ -109258,8 +109150,8 @@ bkF
|
||||
qIO
|
||||
jXA
|
||||
bwm
|
||||
ros
|
||||
vpz
|
||||
bIQ
|
||||
hXt
|
||||
bwm
|
||||
aht
|
||||
bwm
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -452,6 +452,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
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
//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"
|
||||
@@ -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
|
||||
@@ -811,4 +827,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
|
||||
|
||||
@@ -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
|
||||
))
|
||||
@@ -674,7 +674,7 @@ SUBSYSTEM_DEF(job)
|
||||
return
|
||||
for(var/i in the_mob.client.prefs.chosen_gear)
|
||||
var/datum/gear/G = i
|
||||
G = GLOB.loadout_items[slot_to_string(initial(G.category))][initial(G.name)]
|
||||
G = GLOB.loadout_items[initial(G.category)][initial(G.subcategory)][initial(G.name)]
|
||||
if(!G)
|
||||
continue
|
||||
var/permitted = TRUE
|
||||
@@ -682,14 +682,14 @@ SUBSYSTEM_DEF(job)
|
||||
permitted = FALSE
|
||||
if(G.donoritem && !G.donator_ckey_check(the_mob.client.ckey))
|
||||
permitted = FALSE
|
||||
if(!equipbackpackstuff && G.category == SLOT_IN_BACKPACK)//snowflake check since plopping stuff in the backpack doesnt work for pre-job equip loadout stuffs
|
||||
if(!equipbackpackstuff && G.slot == SLOT_IN_BACKPACK)//snowflake check since plopping stuff in the backpack doesnt work for pre-job equip loadout stuffs
|
||||
permitted = FALSE
|
||||
if(equipbackpackstuff && G.category != SLOT_IN_BACKPACK)//ditto
|
||||
if(equipbackpackstuff && G.slot != SLOT_IN_BACKPACK)//ditto
|
||||
permitted = FALSE
|
||||
if(!permitted)
|
||||
continue
|
||||
var/obj/item/I = new G.path
|
||||
if(!M.equip_to_slot_if_possible(I, G.category, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // If the job's dresscode compliant, try to put it in its slot, first
|
||||
if(!M.equip_to_slot_if_possible(I, G.slot, disable_warning = TRUE, bypass_equip_delay_self = TRUE)) // If the job's dresscode compliant, try to put it in its slot, first
|
||||
if(iscarbon(M))
|
||||
var/mob/living/carbon/C = M
|
||||
var/obj/item/storage/backpack/B = C.back
|
||||
|
||||
@@ -11,6 +11,13 @@
|
||||
// This is to stop squeak spam from inhand usage
|
||||
var/last_use = 0
|
||||
var/use_delay = 20
|
||||
|
||||
// squeak cooldowns
|
||||
var/last_squeak = 0
|
||||
var/squeak_delay = 5
|
||||
|
||||
/// chance we'll be stopped from squeaking by cooldown when something crossing us squeaks
|
||||
var/cross_squeak_delay_chance = 33 // about 3 things can squeak at a time
|
||||
|
||||
/datum/component/squeak/Initialize(custom_sounds, volume_override, chance_override, step_delay_override, use_delay_override)
|
||||
if(!isatom(parent))
|
||||
@@ -19,6 +26,7 @@
|
||||
if(ismovable(parent))
|
||||
RegisterSignal(parent, list(COMSIG_MOVABLE_BUMP, COMSIG_MOVABLE_IMPACT), .proc/play_squeak)
|
||||
RegisterSignal(parent, list(COMSIG_MOVABLE_CROSSED, COMSIG_ITEM_WEARERCROSSED), .proc/play_squeak_crossed)
|
||||
RegisterSignal(parent, COMSIG_CROSS_SQUEAKED, .proc/delay_squeak)
|
||||
RegisterSignal(parent, COMSIG_MOVABLE_DISPOSING, .proc/disposing_react)
|
||||
if(isitem(parent))
|
||||
RegisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_ATTACK_OBJ, COMSIG_ITEM_HIT_REACT), .proc/play_squeak)
|
||||
@@ -39,20 +47,28 @@
|
||||
use_delay = use_delay_override
|
||||
|
||||
/datum/component/squeak/proc/play_squeak()
|
||||
do_play_squeak()
|
||||
|
||||
/datum/component/squeak/proc/do_play_squeak(bypass_cooldown = FALSE)
|
||||
if(!bypass_cooldown && ((last_squeak + squeak_delay) >= world.time))
|
||||
return FALSE
|
||||
if(prob(squeak_chance))
|
||||
if(!override_squeak_sounds)
|
||||
playsound(parent, pickweight(default_squeak_sounds), volume, 1, -1)
|
||||
else
|
||||
playsound(parent, pickweight(override_squeak_sounds), volume, 1, -1)
|
||||
last_squeak = world.time
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/component/squeak/proc/step_squeak()
|
||||
if(steps > step_delay)
|
||||
play_squeak()
|
||||
do_play_squeak(TRUE)
|
||||
steps = 0
|
||||
else
|
||||
steps++
|
||||
|
||||
/datum/component/squeak/proc/play_squeak_crossed(atom/movable/AM)
|
||||
/datum/component/squeak/proc/play_squeak_crossed(datum/source, atom/movable/AM)
|
||||
if(isitem(AM))
|
||||
var/obj/item/I = AM
|
||||
if(I.item_flags & ABSTRACT)
|
||||
@@ -63,13 +79,18 @@
|
||||
return
|
||||
var/atom/current_parent = parent
|
||||
if(isturf(current_parent.loc))
|
||||
play_squeak()
|
||||
if(do_play_squeak())
|
||||
SEND_SIGNAL(AM, COMSIG_CROSS_SQUEAKED)
|
||||
|
||||
/datum/component/squeak/proc/use_squeak()
|
||||
if(last_use + use_delay < world.time)
|
||||
last_use = world.time
|
||||
play_squeak()
|
||||
|
||||
/datum/component/squeak/proc/delay_squeak()
|
||||
if(prob(cross_squeak_delay_chance))
|
||||
last_squeak = world.time
|
||||
|
||||
/datum/component/squeak/proc/on_equip(datum/source, mob/equipper, slot)
|
||||
RegisterSignal(equipper, COMSIG_MOVABLE_DISPOSING, .proc/disposing_react, TRUE)
|
||||
|
||||
|
||||
@@ -105,6 +105,8 @@
|
||||
|
||||
/// Triggered on attack self of the item containing the component
|
||||
/datum/component/two_handed/proc/on_attack_self(datum/source, mob/user)
|
||||
if(!user.is_holding(parent))
|
||||
return //give no quarter to telekinesis powergaemrs (telekinetic wielding will desync the offhand and result in all sorts of bugs so no until someone codes it properly)
|
||||
if(wielded)
|
||||
unwield(user)
|
||||
else
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
if(L.stat == DEAD)
|
||||
continue
|
||||
if(light_nutrition_gain)
|
||||
L.adjust_nutrition(light_amount * light_nutrition_gain * attached_atoms[AM], NUTRITION_LEVEL_FULL)
|
||||
L.adjust_nutrition(light_amount * light_nutrition_gain * attached_atoms[AM], NUTRITION_LEVEL_WELL_FED)
|
||||
if(light_amount > bonus_lum || light_amount < malus_lum)
|
||||
var/mult = ((light_amount > bonus_lum) ? 1 : -1) * attached_atoms[AM]
|
||||
if(light_bruteheal)
|
||||
|
||||
@@ -562,8 +562,8 @@
|
||||
owner.DefaultCombatKnockdown(15, TRUE, FALSE, 15)
|
||||
if(iscarbon(owner))
|
||||
var/mob/living/carbon/C = owner
|
||||
C.silent = max(2, C.silent)
|
||||
C.stuttering = max(5, C.stuttering)
|
||||
C.silent = max(5, C.silent) //Increased, now lasts until five seconds after it ends, instead of 2
|
||||
C.stuttering = max(10, C.stuttering) //Increased, now lasts for five seconds after the mute ends, instead of 3
|
||||
if(!old_health)
|
||||
old_health = owner.health
|
||||
if(!old_oxyloss)
|
||||
|
||||
@@ -253,8 +253,8 @@
|
||||
occur_text = "is cut open, slowly leaking blood"
|
||||
sound_effect = 'sound/effects/wounds/blood1.ogg'
|
||||
severity = WOUND_SEVERITY_MODERATE
|
||||
initial_flow = 2
|
||||
minimum_flow = 0.5
|
||||
initial_flow = 1.5
|
||||
minimum_flow = 0.375
|
||||
max_per_type = 3
|
||||
clot_rate = 0.12
|
||||
threshold_minimum = 30
|
||||
@@ -270,8 +270,8 @@
|
||||
occur_text = "is ripped open, veins spurting blood"
|
||||
sound_effect = 'sound/effects/wounds/blood2.ogg'
|
||||
severity = WOUND_SEVERITY_SEVERE
|
||||
initial_flow = 3.25
|
||||
minimum_flow = 2.75
|
||||
initial_flow = 2.4375
|
||||
minimum_flow = 2.0625
|
||||
clot_rate = 0.07
|
||||
max_per_type = 4
|
||||
threshold_minimum = 60
|
||||
@@ -288,8 +288,8 @@
|
||||
occur_text = "is torn open, spraying blood wildly"
|
||||
sound_effect = 'sound/effects/wounds/blood3.ogg'
|
||||
severity = WOUND_SEVERITY_CRITICAL
|
||||
initial_flow = 4.25
|
||||
minimum_flow = 4
|
||||
initial_flow = 3.1875
|
||||
minimum_flow = 3
|
||||
clot_rate = -0.05 // critical cuts actively get worse instead of better
|
||||
max_per_type = 5
|
||||
threshold_minimum = 90
|
||||
|
||||
@@ -213,6 +213,9 @@ Credit where due:
|
||||
var/list/slots = list("In your left pocket" = SLOT_L_STORE, "In your right pocket" = SLOT_R_STORE, "In your backpack" = SLOT_IN_BACKPACK)
|
||||
if(ishuman(L))
|
||||
var/mob/living/carbon/human/H = L
|
||||
var/obj/item/clockwork/replica_fabricator/F = new
|
||||
if(H.equip_to_slot_or_del(F, SLOT_IN_BACKPACK))
|
||||
to_chat(H, "<span class='brass'>You have been equipped with a replica fabricator, an advanced tool that can convert objects like doors, tables or even coats into clockwork equivalents.</span>")
|
||||
slot = H.equip_in_one_of_slots(S, slots)
|
||||
if(slot == "In your backpack")
|
||||
slot = "In your [H.back.name]"
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
ADD_TRAIT(user, granted_trait, BOOK_TRAIT)
|
||||
|
||||
/obj/item/book/granter/trait/rifleman
|
||||
name = "\proper the Neo-Russian Rifleman\'s Primer"
|
||||
name = "The Neo-Russian Rifleman\'s Primer"
|
||||
desc = "A book with stains of vodka and...blood? The back is hard to read, but says something about bolt-actions. Or pump-actions. Both, maybe."
|
||||
oneuse = FALSE
|
||||
granted_trait = TRAIT_FAST_PUMP
|
||||
|
||||
@@ -106,8 +106,8 @@
|
||||
var/disarming = (target_downed && (shield_flags & SHIELD_BASH_GROUND_SLAM_DISARM)) || (shield_flags & SHIELD_BASH_ALWAYS_DISARM) || (wallhit && (shield_flags & SHIELD_BASH_WALL_DISARM))
|
||||
var/knockdown = !target_downed && ((shield_flags & SHIELD_BASH_ALWAYS_KNOCKDOWN) || (wallhit && (shield_flags & SHIELD_BASH_WALL_KNOCKDOWN)))
|
||||
if(shieldbash_stagger_duration || knockdown)
|
||||
target.visible_message("<span class='warning'>[target] is knocked [knockdown? "to the floor" : "off balanace"]!</span>",
|
||||
"<span class='userdanger'>You are knocked [knockdown? "to the floor" : "off balanace"]!</span>")
|
||||
target.visible_message("<span class='warning'>[target] is knocked [knockdown? "to the floor" : "off balance"]!</span>",
|
||||
"<span class='userdanger'>You are knocked [knockdown? "to the floor" : "off balance"]!</span>")
|
||||
if(knockdown)
|
||||
target.KnockToFloor(disarming)
|
||||
else if(disarming)
|
||||
|
||||
@@ -409,7 +409,7 @@
|
||||
/obj/item/storage/box/syndie_kit/revolver
|
||||
|
||||
/obj/item/storage/box/syndie_kit/revolver/PopulateContents()
|
||||
new /obj/item/gun/ballistic/revolver(src)
|
||||
new /obj/item/gun/ballistic/revolver/syndicate(src)
|
||||
new /obj/item/ammo_box/a357(src)
|
||||
|
||||
/obj/item/storage/box/syndie_kit/pistol
|
||||
|
||||
@@ -26,7 +26,8 @@
|
||||
/turf/open/floor/wood/screwdriver_act(mob/living/user, obj/item/I)
|
||||
if(..())
|
||||
return TRUE
|
||||
return pry_tile(I, user)
|
||||
. = STOP_ATTACK_PROC_CHAIN
|
||||
pry_tile(I, user)
|
||||
|
||||
/turf/open/floor/wood/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
|
||||
if(T.turf_type == type)
|
||||
|
||||
@@ -405,3 +405,49 @@
|
||||
animation_number = initial(animation_number)
|
||||
sigil_active = FALSE
|
||||
animate(src, alpha = initial(alpha), time = 10, flags = ANIMATION_END_NOW)
|
||||
|
||||
/obj/effect/clockwork/sigil/rite
|
||||
name = "radiant sigil"
|
||||
desc = "A glowing sigil glowing with barely-contained power."
|
||||
clockwork_desc = "A sigil that will allow you to perform certain rites on it, provided you have access to sufficient power and materials."
|
||||
icon_state = "sigiltransmission" //am big lazy - recolored transmission sigil
|
||||
sigil_name = "Sigil of Rites"
|
||||
alpha = 255
|
||||
var/performing_rite = FALSE
|
||||
color = "#ffe63a"
|
||||
light_color = "#ffe63a"
|
||||
light_range = 1
|
||||
light_power = 2
|
||||
|
||||
/obj/effect/clockwork/sigil/rite/on_attack_hand(mob/living/user, act_intent = user.a_intent, unarmed_attack_flags)
|
||||
. = ..()
|
||||
if(.)
|
||||
return
|
||||
if(!is_servant_of_ratvar(user))
|
||||
return
|
||||
if(!GLOB.all_clockwork_rites.len) //Did we already generate the list?
|
||||
generate_all_rites()
|
||||
if(performing_rite)
|
||||
to_chat(user, "<span class='warning'>Someone is already performing a rite here!")
|
||||
return
|
||||
var/list/possible_rites = list()
|
||||
for(var/datum/clockwork_rite/R in GLOB.all_clockwork_rites)
|
||||
possible_rites[R] = R
|
||||
var/input_key = input(user, "Choose a rite", "Choosing a rite") as null|anything in possible_rites
|
||||
if(!input_key)
|
||||
return
|
||||
var/datum/clockwork_rite/CR = possible_rites[input_key]
|
||||
if(!CR)
|
||||
return
|
||||
var/choice = alert(user, "What to do with this rite?", "What to do?", "Cast", "Show Info", "Cancel")
|
||||
switch(choice)
|
||||
if("Cast")
|
||||
CR.try_cast(src, user)
|
||||
if("Show Info")
|
||||
var/infotext = CR.build_info()
|
||||
to_chat(user, infotext)
|
||||
|
||||
/obj/effect/clockwork/sigil/rite/proc/generate_all_rites() //The first time someone uses a sigil of rites, all the rites are actually generated. No need to have a bunch of random datums laying around all the time.
|
||||
for(var/V in subtypesof(/datum/clockwork_rite))
|
||||
var/datum/clockwork_rite/R = new V
|
||||
GLOB.all_clockwork_rites += R
|
||||
|
||||
@@ -0,0 +1,196 @@
|
||||
//This file is for clock rites, mainly used by the Sigil of Rites in clock_sigils.dm
|
||||
//The rites themselves are in this file to prevent bloating the other file too much, aswell as for easier access
|
||||
|
||||
#define INFINITE -1
|
||||
|
||||
//The base clockwork rite. This should never be visible
|
||||
/datum/clockwork_rite
|
||||
var/name = "Rite of THE frog" //The name of the rite
|
||||
var/desc = "This rite is used to summon the legendary frog whose-name-shall-not-be-spoken, ender of many worlds." //What does this rite do? Shown to cultists if they choose 'Show Info' after selecting the rite.
|
||||
var/list/required_ingredients = list(/obj/item/clockwork) //What does this rite require?
|
||||
var/power_cost = 0 //How much power does this rite cost.. or does it even add power?
|
||||
var/requires_human = FALSE //Does the rite require a ../carbon/human on the rune?
|
||||
var/must_be_servant = TRUE //If the above is true, does the human need to be a servant?
|
||||
var/target_can_be_invoker = TRUE //Does this rite work if the invoker is also the target?
|
||||
var/cast_time = 0 //How long does the rite take to cast?
|
||||
var/limit = INFINITE //How often can this rite be used per round? Set this to INFINITE for unlimited, 0 for disallowed, anything above 0 for a limit
|
||||
var/times_used = 0 //How often has the rite already been used this shift?
|
||||
var/rite_cast_sound = 'sound/items/bikehorn.ogg' //The sound played when successfully casting the rite. If it honks, the one adding the rite forgot to set one (or was just lazy).
|
||||
|
||||
/datum/clockwork_rite/proc/try_cast(var/obj/effect/clockwork/sigil/rite/R, var/mob/living/invoker) //Performs a ton of checks to see if the invoker can cast the rite
|
||||
if(!istype(R))
|
||||
return FALSE
|
||||
if(!R || !R.loc)
|
||||
return FALSE
|
||||
var/turf/T = R.loc
|
||||
if(!T) //Uh oh something is fucky
|
||||
return FALSE
|
||||
|
||||
if(limit != INFINITE && times_used >= limit) //Is the limit on casts exceeded?
|
||||
to_chat(invoker, "<span class='brass'>There are no more uses left for this rite!</span>")
|
||||
return FALSE
|
||||
|
||||
var/mob/living/carbon/human/H //This is only used if requires_human is TRUE
|
||||
if(requires_human) //In case this requires a target
|
||||
for(var/mob/living/carbon/human/possible_H in T)
|
||||
if((!must_be_servant || is_servant_of_ratvar(possible_H)) && (target_can_be_invoker || invoker != possible_H))
|
||||
H = possible_H
|
||||
break
|
||||
if(!H)
|
||||
to_chat(invoker, "<span class='brass'>There is no target for the rite on the sigil!</span>")
|
||||
return FALSE
|
||||
|
||||
if(required_ingredients.len) //In case this requires materials
|
||||
var/is_missing_materials = FALSE
|
||||
for(var/I in required_ingredients)
|
||||
var/obj/item/Material = locate(I) in T
|
||||
if(!Material)
|
||||
is_missing_materials = TRUE
|
||||
break
|
||||
if(is_missing_materials)
|
||||
var/still_required_string = ""
|
||||
for(var/i = 1 to required_ingredients.len)
|
||||
var/obj/O = required_ingredients[i]
|
||||
if(i != 1)
|
||||
still_required_string += ", "
|
||||
still_required_string += "a [initial(O.name)]"
|
||||
to_chat(invoker, "<span class='brass'>There are still materials missing for this rite. You require [still_required_string].</span>")
|
||||
return FALSE
|
||||
|
||||
if(power_cost) //If this costs power
|
||||
if(!get_clockwork_power(power_cost))
|
||||
to_chat(invoker, "<span class='brass'>There is not enough power for this rite!</span>")
|
||||
return FALSE
|
||||
R.performing_rite = TRUE
|
||||
if(!do_after(invoker, cast_time, target = R))
|
||||
to_chat(invoker, "<span class='warning'>Your rite is disrupted.</span>")
|
||||
R.performing_rite = FALSE
|
||||
return FALSE
|
||||
. = cast(invoker, T, H)
|
||||
if(!.)
|
||||
to_chat(invoker, "<span class='warning'> You fail casting [name]</span>")
|
||||
post_cast(FALSE)
|
||||
else
|
||||
to_chat(invoker, "<span class='warning'>You successfully cast [name]</span>")
|
||||
post_cast(TRUE)
|
||||
R.performing_rite = FALSE
|
||||
return
|
||||
|
||||
/datum/clockwork_rite/proc/cast(var/mob/living/invoker, var/turf/T, var/mob/living/carbon/human/target) //Casts the rite and uses up ingredients. Doublechecks some things to prevent bypassing some restrictions via funky timing or badminnery.
|
||||
if(!T || !invoker)
|
||||
return FALSE
|
||||
if(requires_human && !target)
|
||||
return FALSE
|
||||
if(power_cost && !get_clockwork_power(power_cost))
|
||||
return FALSE
|
||||
adjust_clockwork_power(-power_cost)
|
||||
if(limit != INFINITE && times_used >= limit)
|
||||
return FALSE
|
||||
if(required_ingredients.len)
|
||||
var/is_missing_materials = FALSE
|
||||
for(var/I in required_ingredients)
|
||||
var/obj/item/Material = locate(I) in T
|
||||
if(!Material)
|
||||
is_missing_materials = TRUE
|
||||
break
|
||||
qdel(Material)
|
||||
if(is_missing_materials)
|
||||
return FALSE
|
||||
playsound(T, rite_cast_sound, 50, 2)
|
||||
return TRUE
|
||||
|
||||
/datum/clockwork_rite/proc/post_cast(var/cast_succeeded)
|
||||
if(cast_succeeded)
|
||||
times_used++
|
||||
return TRUE
|
||||
|
||||
/datum/clockwork_rite/proc/build_info() //Constructs the info text of a given rite, based on the vars of the rite
|
||||
. = ""
|
||||
. += "<span class='brass'>This is the <b>[name]</b>.\n"
|
||||
. += "[desc]\n"
|
||||
. += "It requires: "
|
||||
if(required_ingredients.len)
|
||||
var/material_string = ""
|
||||
for(var/i = 1 to required_ingredients.len)
|
||||
var/obj/O = required_ingredients[i]
|
||||
if(i != 1)
|
||||
material_string += ", "
|
||||
material_string += "a [initial(O.name)]"
|
||||
. += "[material_string].\n"
|
||||
else
|
||||
. += "</span><span class='inathneq_small'><b>no</b><span class='brass'> materials.\n"
|
||||
. += "It [power_cost >= 0 ? "costs" : "generates"]<span class='inathneq_small'><b> [power_cost ? "[power_cost]" : "no"] </b><span class='brass'>power.\n"
|
||||
. += "It requires <span class='inathneq_small'><b>[requires_human ? " a human" : " no"]</b><span class='brass'> target.\n"
|
||||
if(requires_human)
|
||||
. += "The target <span class='inathneq_small'><b>[must_be_servant ? "cannot be" : "can be"] </b><span class='brass'> a nonservant.\n"
|
||||
. += "The target <span class='inathneq_small'><b>[target_can_be_invoker ? "can be" : "cannot be"]</b><span class='brass'> the invoker.\n"
|
||||
. += "It requires <span class='inathneq_small'><b>[cast_time/10]</b><span class='brass'> seconds to cast.\n"
|
||||
. += "It has been used <span class='inathneq_small'><b>[times_used]</b><span class='brass'> time[times_used != 1 ? "s" : ""], out of <span class='inathneq_small'><b>[limit != INFINITE ? "[limit]" : "infinite"]</b><span class='brass'> available uses.</span>"
|
||||
|
||||
//Adds a organ or cybernetic implant to a servant without the need for surgery. Cannot be used with brains for.. reasons.
|
||||
/datum/clockwork_rite/advancement
|
||||
name = "Rite of Advancement"
|
||||
desc = "This rite is used to augment a servant with organs or cybernetic implants. The organ of choice, aswell as the servant and the required ingredients must be placed on the sigil for this rite to take place."
|
||||
required_ingredients = list(/obj/item/assembly/prox_sensor, /obj/item/stock_parts/cell)
|
||||
power_cost = 500
|
||||
requires_human = TRUE
|
||||
cast_time = 40
|
||||
rite_cast_sound = 'sound/magic/blind.ogg'
|
||||
|
||||
/datum/clockwork_rite/advancement/cast(var/mob/living/invoker, var/turf/T, var/mob/living/carbon/human/target)
|
||||
var/obj/item/organ/O = locate(/obj/item/organ) in T
|
||||
if(!O)
|
||||
return FALSE
|
||||
if(istype(O, /obj/item/organ/brain)) //NOPE
|
||||
return FALSE
|
||||
. = ..()
|
||||
if(!.)
|
||||
return FALSE
|
||||
O.Insert(target)
|
||||
new /obj/effect/temp_visual/ratvar/sigil/transgression(T)
|
||||
|
||||
//Heals all wounds (not damage) on the target, causing toxloss proportional to amount of wounds healed. 10 damage per wound.
|
||||
/datum/clockwork_rite/treat_wounds
|
||||
name = "Rite of Woundmending"
|
||||
desc = "This rite is used to heal wounds of the servant on the rune. It causes toxins damage proportional to the amount of wounds healed. This can be lethal if performed on an critically injured target."
|
||||
required_ingredients = list(/obj/item/stock_parts/cell, /obj/item/healthanalyzer, /obj/item/reagent_containers/food/drinks/bottle/holyoil)
|
||||
power_cost = 300
|
||||
requires_human = TRUE
|
||||
must_be_servant = FALSE
|
||||
target_can_be_invoker = FALSE
|
||||
cast_time = 80
|
||||
rite_cast_sound = 'sound/magic/staff_healing.ogg'
|
||||
|
||||
/datum/clockwork_rite/treat_wounds/cast(var/mob/living/invoker, var/turf/T, var/mob/living/carbon/human/target)
|
||||
if(!target)
|
||||
return FALSE
|
||||
if(!target.all_wounds.len)
|
||||
to_chat(invoker, "<span class='inathneq_small'>This one does not require mending.</span>")
|
||||
return FALSE
|
||||
.= ..()
|
||||
if(!.)
|
||||
return FALSE
|
||||
target.adjustToxLoss(10 * target.all_wounds.len)
|
||||
QDEL_LIST(target.all_wounds)
|
||||
to_chat(target, "<span class='warning'>You feel your wounds heal, but are overcome with deep nausea.</span>")
|
||||
new /obj/effect/temp_visual/ratvar/sigil/vitality(T)
|
||||
|
||||
//Summons a brass claw implant on the sigil, which can extend a claw that benefits from repeatedly attacking a single target. Can only be cast a limited amount of times.
|
||||
/datum/clockwork_rite/summon_claw
|
||||
name = "Rite of the Claw"
|
||||
desc = "Summons a special arm implant that, when added to a servant's limb, will allow them to extend and retract a claw at will. Don't leave any implants you want to keep on this rune when casting the rite."
|
||||
required_ingredients = list(/obj/item/stock_parts/cell, /obj/item/organ/cyberimp, /obj/item/assembly/flash)
|
||||
power_cost = 1000
|
||||
cast_time = 60
|
||||
limit = 4
|
||||
rite_cast_sound = 'sound/magic/clockwork/fellowship_armory.ogg'
|
||||
|
||||
/datum/clockwork_rite/summon_claw/cast(var/mob/living/invoker, var/turf/T, var/mob/living/carbon/human/target)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return FALSE
|
||||
var/obj/item/organ/cyberimp/arm/clockwork/claw/CL = new /obj/item/organ/cyberimp/arm/clockwork/claw(T)
|
||||
CL.visible_message("<span class='warning'>[CL] materialises out of thin air!")
|
||||
new /obj/effect/temp_visual/ratvar/sigil/transmission(T,2)
|
||||
|
||||
#undef INFINITE
|
||||
@@ -0,0 +1,32 @@
|
||||
//This file is for snowflakey clock augmentations and clock-themed cybernetic implants.
|
||||
|
||||
//The base clockie arm implant, which only clock cultist can use unless it is emagged. THIS SHOULD NEVER ACTUALLY EXIST
|
||||
/obj/item/organ/cyberimp/arm/clockwork
|
||||
name = "clock-themed arm-mounted implant"
|
||||
var/clockwork_desc = "According to Ratvar, this really shouldn't exist. Tell Him about this immediately."
|
||||
syndicate_implant = TRUE
|
||||
icon_state = "clock_arm_implant"
|
||||
|
||||
/obj/item/organ/cyberimp/arm/clockwork/ui_action_click()
|
||||
if(is_servant_of_ratvar(owner) || (obj_flags & EMAGGED)) //If you somehow manage to steal a clockie's implant AND have an emag AND manage to get it implanted for yourself, good on ya!
|
||||
return ..()
|
||||
to_chat(owner, "<span class='warning'>The implant refuses to activate..</span>")
|
||||
|
||||
/obj/item/organ/cyberimp/arm/clockwork/examine(mob/user)
|
||||
if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc)
|
||||
desc = clockwork_desc
|
||||
. = ..()
|
||||
desc = initial(desc)
|
||||
|
||||
/obj/item/organ/cyberimp/arm/clockwork/emag_act()
|
||||
if(obj_flags & EMAGGED)
|
||||
return
|
||||
obj_flags |= EMAGGED
|
||||
to_chat(usr, "<span class='notice'>You emag [src], hoping it'll achieve something..</span>")
|
||||
|
||||
//Brass claw implant. Holds the brass claw from brass_claw.dm and can extend / retract it at will.
|
||||
/obj/item/organ/cyberimp/arm/clockwork/claw
|
||||
name = "brass claw implant"
|
||||
desc = "Yikes, the claw attached to this looks pretty darn sharp."
|
||||
clockwork_desc = "This implant, when added to a servant's arm, allows them to extend and retract a claw at will, though this is mildly painful to do. It will refuse to work for any non-servants."
|
||||
contents = newlist(/obj/item/clockwork/brass_claw)
|
||||
@@ -0,0 +1,51 @@
|
||||
//Brass claw, an armblade-like weapon used by a clock implant. Stealthy if retracted, very obvious if active.
|
||||
//Bit weaker than an armblade strength-wise but gains combo on consecutive attacks against the same target, which causes bonus damage
|
||||
|
||||
/obj/item/clockwork/brass_claw
|
||||
name = "brass claw"
|
||||
desc = "A very sharp claw made out of brass."
|
||||
clockwork_desc = "A incredibly sharp claw made out of brass. It is quite effective at crippling enemies, though very obvious when extended.\nGains combo on consecutive attacks against a target, causing bonus damage."
|
||||
icon_state = "brass_claw" //Codersprite moment
|
||||
item_state = "brass_claw"
|
||||
lefthand_file = 'icons/mob/inhands/antag/clockwork_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/antag/clockwork_righthand.dmi'
|
||||
w_class = WEIGHT_CLASS_HUGE
|
||||
force = 15 //Doesn't generate vitality like the spear does / has somewhat less damage, but quite good at wounding and gets through armor pretty well. Also gains 2 bonus damage per consecutive attack on the same target
|
||||
throwforce = 0 //haha yes lets be safe about this
|
||||
throw_range = 0
|
||||
throw_speed = 0
|
||||
armour_penetration = 20
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
sharpness = SHARP_EDGED
|
||||
wound_bonus = 5
|
||||
bare_wound_bonus = 15
|
||||
total_mass = TOTAL_MASS_HAND_REPLACEMENT
|
||||
var/mob/living/last_attacked
|
||||
var/combo = 0
|
||||
var/damage_per_combo = 2
|
||||
var/maximum_combo_damage = 18 //33 damage on max stacks. Usually the target will already be dead by then but if they somehow aren't, better to have this capped
|
||||
|
||||
/obj/item/clockwork/brass_claw/Initialize()
|
||||
. = ..()
|
||||
AddComponent(/datum/component/butchering, 60, 80)
|
||||
|
||||
/obj/item/clockwork/brass_claw/examine(mob/user)
|
||||
if(is_servant_of_ratvar(user))
|
||||
clockwork_desc += "\n<span class='brass'>It has </span><span class='inathneq_small'><b>[combo]</span></b><span class='brass'> combo stacks built up against the current target, causing </span><span class='inathneq_small'><b>[min(maximum_combo_damage, combo * damage_per_combo)]</span></b><span class='brass'> bonus damage.</span>"
|
||||
. = ..()
|
||||
clockwork_desc = initial(clockwork_desc)
|
||||
|
||||
/obj/item/clockwork/brass_claw/attack(mob/living/target, mob/living/carbon/human/user)
|
||||
. = ..()
|
||||
if(QDELETED(target) || target.anti_magic_check(chargecost = 0) || is_servant_of_ratvar(target))
|
||||
return
|
||||
if(target != last_attacked) //Loses all combat on switching targets
|
||||
last_attacked = target
|
||||
combo = 0
|
||||
else
|
||||
if(!iscultist(target)) //Hostile cultists being hit stacks up combo far faster than usual
|
||||
combo++
|
||||
else
|
||||
combo += 3
|
||||
target.adjustBruteLoss(min(maximum_combo_damage, combo * damage_per_combo))
|
||||
@@ -12,6 +12,8 @@
|
||||
attack_verb = list("stabbed", "poked", "slashed")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
block_parry_data = /datum/block_parry_data/ratvarian_spear
|
||||
item_flags = ITEM_CAN_PARRY
|
||||
var/bonus_burn = 5
|
||||
|
||||
/obj/item/clockwork/weapon/ratvarian_spear/ratvar_act()
|
||||
@@ -43,7 +45,7 @@
|
||||
else if(iscultist(target) || isconstruct(target))
|
||||
to_chat(target, "<span class='userdanger'>Your body flares with agony at [src]'s presence!</span>")
|
||||
bonus_damage *= 3 //total 30 damage on cultists, 50 with ratvar
|
||||
GLOB.clockwork_vitality += target.adjustFireLoss(bonus_damage) //adds the damage done to existing vitality
|
||||
GLOB.clockwork_vitality += max(0, target.adjustFireLoss(bonus_damage)) //adds the damage done to existing vitality
|
||||
|
||||
/obj/item/clockwork/weapon/ratvarian_spear/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
|
||||
var/turf/T = get_turf(hit_atom)
|
||||
@@ -80,3 +82,15 @@
|
||||
new /obj/effect/temp_visual/ratvar/spearbreak(T)
|
||||
action.weapon_reset(RATVARIAN_WEAPON_COOLDOWN)
|
||||
|
||||
//A very short, very effective parry that counts on you predicting when the enemy will attack.
|
||||
/datum/block_parry_data/ratvarian_spear
|
||||
parry_time_windup = 0 //Very good for predicting
|
||||
parry_time_active = 3 //Very short
|
||||
parry_time_spindown = 1
|
||||
parry_time_perfect = 2
|
||||
parry_efficiency_perfect = 110 //Very low leeway for counterattacks...
|
||||
parry_efficiency_considered_successful = 0.8
|
||||
parry_efficiency_to_counterattack = 1
|
||||
parry_cooldown = 15 //But also very low cooldown..
|
||||
parry_failed_stagger_duration = 2 SECONDS //And relatively small penalties for failing.
|
||||
parry_failed_clickcd_duration = 1 SECONDS
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
desc = "Charges your slab with divine energy, allowing you to overwhelm a target with Ratvar's light."
|
||||
invocations = list("Divinity, show them your light!")
|
||||
whispered = TRUE
|
||||
channel_time = 10 // I think making kindle channel a third of the time less is a good make up for the fact that it silences people for such a little amount of time.
|
||||
channel_time = 15 // I think making kindle channel a third of the time less is a good make up for the fact that it silences people for such a little amount of time.
|
||||
power_cost = 125
|
||||
usage_tip = "The light can be used from up to two tiles away. Damage taken will GREATLY REDUCE the stun's duration."
|
||||
tier = SCRIPTURE_DRIVER
|
||||
|
||||
@@ -81,6 +81,25 @@
|
||||
return /obj/effect/clockwork/sigil/vitality/neutered
|
||||
return ..()
|
||||
|
||||
//Sigil of Rites: Creates a sigil that allows to perform certain rites on it. More information on these can be found in clock_rites.dm, they usually require power, materials and sometimes a target.
|
||||
/datum/clockwork_scripture/create_object/sigil_of_rites
|
||||
descname = "Sigil, Access to rites"
|
||||
name = "Sigil of Rites"
|
||||
desc = "Places a sigil that, when interacted with, will allow for a variety of rites to be performed on the sigil. These usually require power cells, clockwork power, and some other components."
|
||||
invocations = list("Engine, allow us..", ".. to be blessed with your rites.")
|
||||
channel_time = 80
|
||||
power_cost = 1400
|
||||
invokers_required = 2
|
||||
multiple_invokers_used = TRUE
|
||||
whispered = TRUE
|
||||
object_path = /obj/effect/clockwork/sigil/rite
|
||||
creator_message = "<span class='brass'>A sigil of Rites appears beneath you. It will allow you to perform certain rites, given sufficient materials and power.</span>"
|
||||
usage_tip = "It may be useful to coordinate to acquire needed materials quickly."
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
one_per_tile = TRUE
|
||||
primary_component = HIEROPHANT_ANSIBLE
|
||||
sort_priority = 4
|
||||
|
||||
//Judicial Visor: Creates a judicial visor, which can smite an area.
|
||||
/datum/clockwork_scripture/create_object/judicial_visor
|
||||
descname = "Delayed Area Knockdown Glasses"
|
||||
@@ -96,7 +115,7 @@
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
space_allowed = TRUE
|
||||
primary_component = BELLIGERENT_EYE
|
||||
sort_priority = 4
|
||||
sort_priority = 5
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Creates a Judicial Visor, which can smite an area, applying Belligerent and briefly stunning."
|
||||
|
||||
@@ -115,7 +134,7 @@
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
space_allowed = TRUE
|
||||
primary_component = VANGUARD_COGWHEEL
|
||||
sort_priority = 6
|
||||
sort_priority = 7
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Creates a Ratvarian shield, which can absorb energy from attacks for use in powerful bashes."
|
||||
|
||||
@@ -131,7 +150,7 @@
|
||||
usage_tip = "Throwing the spear at a mob will do massive damage and knock them down, but break the spear. You will need to wait for 30 seconds before resummoning it."
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
primary_component = VANGUARD_COGWHEEL
|
||||
sort_priority = 7
|
||||
sort_priority = 8
|
||||
important = TRUE
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Permanently binds clockwork armor and a Ratvarian spear to you."
|
||||
@@ -229,7 +248,7 @@
|
||||
usage_tip = "This is a very effective way to rapidly reinforce a base after an attack."
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
primary_component = VANGUARD_COGWHEEL
|
||||
sort_priority = 8
|
||||
sort_priority = 9
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Repairs nearby structures and constructs. Servants wearing clockwork armor will also be healed.<br><b>Maximum 10 chants.</b>"
|
||||
var/heal_attempts = 4
|
||||
@@ -342,7 +361,7 @@
|
||||
usage_tip = "Though it requires you to stand still, this scripture can do massive damage."
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
primary_component = BELLIGERENT_EYE
|
||||
sort_priority = 5
|
||||
sort_priority = 6
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Allows you to fire energy rays at target locations.<br><b>Maximum 5 chants.</b>"
|
||||
var/static/list/nzcrentr_insults = list("You're not very good at aiming.", "You hunt badly.", "What a waste of energy.", "Almost funny to watch.",
|
||||
@@ -391,7 +410,7 @@
|
||||
usage_tip = "It may be useful to end channelling early if the burning becomes too much to handle.."
|
||||
tier = SCRIPTURE_SCRIPT
|
||||
primary_component = GEIS_CAPACITOR
|
||||
sort_priority = 10
|
||||
sort_priority = 11
|
||||
quickbind = TRUE
|
||||
quickbind_desc = "Quickly drains power in an area around the invoker, causing burns proportional to the amount of energy drained.<br><b>Maximum of 20 chants.</b>"
|
||||
|
||||
|
||||
@@ -40,7 +40,6 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
//If it's 0, that's good, if it's anything but 0, the owner of this prefs file's antag choices were,
|
||||
//autocorrected this round, not that you'd need to check that.
|
||||
|
||||
|
||||
var/UI_style = null
|
||||
var/buttons_locked = FALSE
|
||||
var/hotkeys = FALSE
|
||||
@@ -230,7 +229,8 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
var/gear_points = 10
|
||||
var/list/gear_categories
|
||||
var/list/chosen_gear = list()
|
||||
var/gear_tab
|
||||
var/gear_category
|
||||
var/gear_subcategory
|
||||
|
||||
var/screenshake = 100
|
||||
var/damagescreenshake = 2
|
||||
@@ -1059,58 +1059,83 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
dat += "<br>"
|
||||
|
||||
if(3)
|
||||
if(!gear_tab)
|
||||
gear_tab = GLOB.loadout_items[1]
|
||||
dat += "<table align='center' width='100%'>"
|
||||
dat += "<tr><td colspan=4><center><b><font color='[gear_points == 0 ? "#E62100" : "#CCDDFF"]'>[gear_points]</font> loadout points remaining.</b> \[<a href='?_src_=prefs;preference=gear;clear_loadout=1'>Clear Loadout</a>\]</center></td></tr>"
|
||||
dat += "<tr><td colspan=4><center>You can only choose one item per category, unless it's an item that spawns in your backpack or hands.</center></td></tr>"
|
||||
dat += "<tr><td colspan=4><center><b>"
|
||||
var/firstcat = TRUE
|
||||
for(var/i in GLOB.loadout_items)
|
||||
if(firstcat)
|
||||
firstcat = FALSE
|
||||
|
||||
if(!length(GLOB.loadout_items))
|
||||
dat += "<center>ERROR: No loadout categories - something is horribly wrong!"
|
||||
else
|
||||
if(!GLOB.loadout_categories[gear_category])
|
||||
gear_category = GLOB.loadout_categories[1]
|
||||
var/firstcat = TRUE
|
||||
for(var/category in GLOB.loadout_categories)
|
||||
if(firstcat)
|
||||
firstcat = FALSE
|
||||
else
|
||||
dat += " |"
|
||||
if(category == gear_category)
|
||||
dat += " <span class='linkOn'>[category]</span> "
|
||||
else
|
||||
dat += " <a href='?_src_=prefs;preference=gear;select_category=[html_encode(category)]'>[category]</a> "
|
||||
|
||||
dat += "</b></center></td></tr>"
|
||||
dat += "<tr><td colspan=4><hr></td></tr>"
|
||||
|
||||
dat += "<tr><td colspan=4><center><b>"
|
||||
|
||||
if(!length(GLOB.loadout_categories[gear_category]))
|
||||
dat += "No subcategories detected. Something is horribly wrong!"
|
||||
else
|
||||
dat += " |"
|
||||
if(i == gear_tab)
|
||||
dat += " <span class='linkOn'>[i]</span> "
|
||||
else
|
||||
dat += " <a href='?_src_=prefs;preference=gear;select_category=[i]'>[i]</a> "
|
||||
dat += "</b></center></td></tr>"
|
||||
dat += "<tr><td colspan=4><hr></td></tr>"
|
||||
dat += "<tr><td colspan=4><b><center>[gear_tab]</center></b></td></tr>"
|
||||
dat += "<tr><td colspan=4><hr></td></tr>"
|
||||
dat += "<tr width=10% style='vertical-align:top;'><td width=15%><b>Name</b></td>"
|
||||
dat += "<td style='vertical-align:top'><b>Cost</b></td>"
|
||||
dat += "<td width=10%><font size=2><b>Restrictions</b></font></td>"
|
||||
dat += "<td width=80%><font size=2><b>Description</b></font></td></tr>"
|
||||
for(var/j in GLOB.loadout_items[gear_tab])
|
||||
var/datum/gear/gear = GLOB.loadout_items[gear_tab][j]
|
||||
var/donoritem = gear.donoritem
|
||||
if(donoritem && !gear.donator_ckey_check(user.ckey))
|
||||
continue
|
||||
var/class_link = ""
|
||||
if(gear.type in chosen_gear)
|
||||
class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(j)];toggle_gear=0'"
|
||||
else if(gear_points <= 0)
|
||||
class_link = "style='white-space:normal;' class='linkOff'"
|
||||
else if(donoritem)
|
||||
class_link = "style='white-space:normal;background:#ebc42e;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(j)];toggle_gear=1'"
|
||||
else
|
||||
class_link = "style='white-space:normal;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(j)];toggle_gear=1'"
|
||||
dat += "<tr style='vertical-align:top;'><td width=15%><a [class_link]>[j]</a></td>"
|
||||
dat += "<td width = 5% style='vertical-align:top'>[gear.cost]</td><td>"
|
||||
if(islist(gear.restricted_roles))
|
||||
if(gear.restricted_roles.len)
|
||||
if(gear.restricted_desc)
|
||||
dat += "<font size=2>"
|
||||
dat += gear.restricted_desc
|
||||
dat += "</font>"
|
||||
var/list/subcategories = GLOB.loadout_categories[gear_category]
|
||||
if(!subcategories.Find(gear_subcategory))
|
||||
gear_subcategory = subcategories[1]
|
||||
|
||||
var/firstsubcat = FALSE
|
||||
for(var/subcategory in subcategories)
|
||||
if(firstsubcat)
|
||||
firstsubcat = FALSE
|
||||
else
|
||||
dat += "<font size=2>"
|
||||
dat += gear.restricted_roles.Join(";")
|
||||
dat += "</font>"
|
||||
dat += "</td><td><font size=2><i>[gear.description]</i></font></td></tr>"
|
||||
dat += "</table>"
|
||||
dat += " |"
|
||||
if(gear_subcategory == subcategory)
|
||||
dat += " <span class='linkOn'>[subcategory]</span> "
|
||||
else
|
||||
dat += " <a href='?_src_=prefs;preference=gear;select_subcategory=[html_encode(subcategory)]'>[subcategory]</a> "
|
||||
dat += "</b></center></td></tr>"
|
||||
|
||||
dat += "<tr width=10% style='vertical-align:top;'><td width=15%><b>Name</b></td>"
|
||||
dat += "<td style='vertical-align:top'><b>Cost</b></td>"
|
||||
dat += "<td width=10%><font size=2><b>Restrictions</b></font></td>"
|
||||
dat += "<td width=80%><font size=2><b>Description</b></font></td></tr>"
|
||||
for(var/name in GLOB.loadout_items[gear_category][gear_subcategory])
|
||||
var/datum/gear/gear = GLOB.loadout_items[gear_category][gear_subcategory][name]
|
||||
var/donoritem = gear.donoritem
|
||||
if(donoritem && !gear.donator_ckey_check(user.ckey))
|
||||
continue
|
||||
var/class_link = ""
|
||||
if(gear.type in chosen_gear)
|
||||
class_link = "style='white-space:normal;' class='linkOn' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=0'"
|
||||
else if(gear_points <= 0)
|
||||
class_link = "style='white-space:normal;' class='linkOff'"
|
||||
else if(donoritem)
|
||||
class_link = "style='white-space:normal;background:#ebc42e;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=1'"
|
||||
else
|
||||
class_link = "style='white-space:normal;' href='?_src_=prefs;preference=gear;toggle_gear_path=[html_encode(name)];toggle_gear=1'"
|
||||
dat += "<tr style='vertical-align:top;'><td width=15%><a [class_link]>[name]</a></td>"
|
||||
dat += "<td width = 5% style='vertical-align:top'>[gear.cost]</td><td>"
|
||||
if(islist(gear.restricted_roles))
|
||||
if(gear.restricted_roles.len)
|
||||
if(gear.restricted_desc)
|
||||
dat += "<font size=2>"
|
||||
dat += gear.restricted_desc
|
||||
dat += "</font>"
|
||||
else
|
||||
dat += "<font size=2>"
|
||||
dat += gear.restricted_roles.Join(";")
|
||||
dat += "</font>"
|
||||
dat += "</td><td><font size=2><i>[gear.description]</i></font></td></tr>"
|
||||
dat += "</table>"
|
||||
if(4) // Content preferences
|
||||
dat += "<table><tr><td width='340px' height='300px' valign='top'>"
|
||||
dat += "<h2>Fetish content prefs</h2>"
|
||||
@@ -2691,11 +2716,13 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
gear_points = CONFIG_GET(number/initial_gear_points)
|
||||
save_preferences()
|
||||
if(href_list["select_category"])
|
||||
for(var/i in GLOB.loadout_items)
|
||||
if(i == href_list["select_category"])
|
||||
gear_tab = i
|
||||
gear_category = html_decode(href_list["select_category"])
|
||||
gear_subcategory = GLOB.loadout_categories[gear_category][1]
|
||||
if(href_list["select_subcategory"])
|
||||
gear_subcategory = html_decode(href_list["select_subcategory"])
|
||||
if(href_list["toggle_gear_path"])
|
||||
var/datum/gear/G = GLOB.loadout_items[gear_tab][html_decode(href_list["toggle_gear_path"])]
|
||||
var/name = html_decode(href_list["toggle_gear_path"])
|
||||
var/datum/gear/G = GLOB.loadout_items[gear_category][gear_subcategory][name]
|
||||
if(!G)
|
||||
return
|
||||
var/toggle = text2num(href_list["toggle_gear"])
|
||||
@@ -2875,17 +2902,17 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
LAZYINITLIST(L)
|
||||
for(var/i in chosen_gear)
|
||||
var/datum/gear/G = i
|
||||
var/occupied_slots = L[slot_to_string(initial(G.category))] ? L[slot_to_string(initial(G.category))] + 1 : 1
|
||||
LAZYSET(L, slot_to_string(initial(G.category)), occupied_slots)
|
||||
var/occupied_slots = L[initial(G.category)] ? L[initial(G.category)] + 1 : 1
|
||||
LAZYSET(L, initial(G.category), occupied_slots)
|
||||
switch(slot)
|
||||
if(SLOT_IN_BACKPACK)
|
||||
if(L[slot_to_string(SLOT_IN_BACKPACK)] < BACKPACK_SLOT_AMT)
|
||||
if(L[LOADOUT_CATEGORY_BACKPACK] < BACKPACK_SLOT_AMT)
|
||||
return TRUE
|
||||
if(SLOT_HANDS)
|
||||
if(L[slot_to_string(SLOT_HANDS)] < HANDS_SLOT_AMT)
|
||||
if(L[LOADOUT_CATEGORY_HANDS] < HANDS_SLOT_AMT)
|
||||
return TRUE
|
||||
else
|
||||
if(L[slot_to_string(slot)] < DEFAULT_SLOT_AMT)
|
||||
if(L[slot] < DEFAULT_SLOT_AMT)
|
||||
return TRUE
|
||||
|
||||
#undef DEFAULT_SLOT_AMT
|
||||
|
||||
@@ -224,7 +224,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
|
||||
var/needs_update = savefile_needs_update(S)
|
||||
if(needs_update == -2) //fatal, can't load any data
|
||||
return 0
|
||||
|
||||
|
||||
. = TRUE
|
||||
|
||||
//general preferences
|
||||
@@ -443,7 +443,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
|
||||
return 0
|
||||
|
||||
. = TRUE
|
||||
|
||||
|
||||
//Species
|
||||
var/species_id
|
||||
S["species"] >> species_id
|
||||
|
||||
@@ -469,3 +469,16 @@
|
||||
icon_state = "maid"
|
||||
item_state = "maid"
|
||||
dynamic_hair_suffix = ""
|
||||
|
||||
/obj/item/clothing/head/widered
|
||||
name = "Wide red hat"
|
||||
desc = "It is both wide, and red. Stylish!"
|
||||
icon_state = "widehat_red"
|
||||
item_state = "widehat_red"
|
||||
|
||||
/obj/item/clothing/head/kabuto
|
||||
name = "Kabuto helmet"
|
||||
desc = "A traditional kabuto helmet."
|
||||
icon_state = "kabuto"
|
||||
item_state = "kabuto"
|
||||
flags_inv = HIDEHAIR|HIDEEARS
|
||||
|
||||
@@ -1057,3 +1057,9 @@
|
||||
desc = "Reminds you of someone, but you just can't put your finger on it..."
|
||||
icon_state = "waldo_shirt"
|
||||
item_state = "waldo_shirt"
|
||||
|
||||
/obj/item/clothing/suit/samurai
|
||||
name = "Samurai outfit"
|
||||
desc = "An outfit used by traditional japanese warriors."
|
||||
icon_state = "samurai"
|
||||
item_state = "samurai"
|
||||
@@ -329,3 +329,29 @@
|
||||
desc = "cloud"
|
||||
icon_state = "cloud"
|
||||
can_adjust = FALSE
|
||||
|
||||
/obj/item/clothing/under/costume/kimono
|
||||
name = "Kimono"
|
||||
desc = "A traditional piece of clothing from japan"
|
||||
icon_state = "kimono"
|
||||
item_state = "kimono"
|
||||
|
||||
/obj/item/clothing/under/costume/kimono/black
|
||||
name = "Black Kimono"
|
||||
icon_state = "kimono_a"
|
||||
item_state = "kimono_a"
|
||||
|
||||
/obj/item/clothing/under/costume/kimono/kamishimo
|
||||
name = "Kamishimo"
|
||||
icon_state = "kamishimo"
|
||||
item_state = "kamishimo"
|
||||
|
||||
/obj/item/clothing/under/costume/kimono/fancy
|
||||
name = "Fancy Kimono"
|
||||
icon_state = "fancy_kimono"
|
||||
item_state = "fancy_kimono"
|
||||
|
||||
/obj/item/clothing/under/costume/kimono/sakura
|
||||
name = "Sakura Kimono'"
|
||||
icon_state = "sakura_kimono"
|
||||
item_state = "sakura_kimono"
|
||||
|
||||
@@ -308,3 +308,21 @@
|
||||
icon_state = "polyfemtankpantsu"
|
||||
poly_states = 2
|
||||
poly_colors = list("#808080", "#FF3535")
|
||||
|
||||
/obj/item/clothing/under/misc/black_dress
|
||||
name = "little black dress"
|
||||
desc = "A small black dress"
|
||||
icon_state = "littleblackdress_s"
|
||||
item_state = "littleblackdress_s"
|
||||
|
||||
/obj/item/clothing/under/misc/pinktutu
|
||||
name = "pink tutu"
|
||||
desc = "A pink tutu"
|
||||
icon_state = "pinktutu_s"
|
||||
item_state = "pinktutu_s"
|
||||
|
||||
/obj/item/clothing/under/misc/bathrobe
|
||||
name = "bathrobe"
|
||||
desc = "A blue bathrobe."
|
||||
icon_state = "bathrobe"
|
||||
item_state = "bathrobe"
|
||||
|
||||
@@ -42,6 +42,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
|
||||
name = "immovable rod"
|
||||
desc = "What the fuck is that?"
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
movement_type = FLOATING
|
||||
icon_state = "immrod"
|
||||
throwforce = 100
|
||||
move_force = INFINITY
|
||||
|
||||
@@ -183,9 +183,38 @@
|
||||
attack_verb = list("stabbed", "diced", "sliced", "cleaved", "chopped", "lacerated", "cut", "jabbed", "punctured")
|
||||
icon_state = "crusher-glaive"
|
||||
item_state = "crusher0-glaive"
|
||||
item_flags = ITEM_CAN_PARRY
|
||||
block_parry_data = /datum/block_parry_data/crusherglaive
|
||||
//ideas: altclick that lets you pummel people with the handguard/handle?
|
||||
//parrying functionality?
|
||||
|
||||
/datum/block_parry_data/crusherglaive // it's like quickparry, without the damage multiplier
|
||||
parry_time_windup = 0
|
||||
parry_time_active = 5
|
||||
parry_time_spindown = 0
|
||||
parry_time_perfect = 1.5
|
||||
parry_time_perfect_leeway = 0.5
|
||||
parry_imperfect_falloff_percent = 30
|
||||
parry_efficiency_perfect = 100
|
||||
parry_failed_stagger_duration = 1 SECONDS
|
||||
parry_failed_clickcd_duration = 1 SECONDS
|
||||
|
||||
/obj/item/kinetic_crusher/glaive/on_active_parry(mob/living/owner, atom/object, damage, attack_text, attack_type, armour_penetration, mob/attacker, def_zone, list/block_return, parry_efficiency, parry_time) // if you're dumb enough to go for a parry...
|
||||
var/turf/proj_turf = owner.loc // destabilizer bolt, ignoring cooldown
|
||||
if(!isturf(proj_turf))
|
||||
return
|
||||
var/obj/item/projectile/destabilizer/D = new /obj/item/projectile/destabilizer(proj_turf)
|
||||
for(var/t in trophies)
|
||||
var/obj/item/crusher_trophy/T = t
|
||||
T.on_projectile_fire(D, owner)
|
||||
D.preparePixelProjectile(attacker, owner)
|
||||
D.firer = owner
|
||||
D.hammer_synced = src
|
||||
playsound(owner, 'sound/weapons/plasma_cutter.ogg', 100, 1)
|
||||
D.fire()
|
||||
if((!attacker.anchored || ismegafauna(attacker))) // free backstab, if you perfect parry
|
||||
attacker.dir = get_dir(owner,attacker)
|
||||
|
||||
/obj/item/kinetic_crusher/glaive/update_icon_state()
|
||||
item_state = "crusher[wielded]-glaive" // this is not icon_state and not supported by 2hcomponent
|
||||
|
||||
|
||||
@@ -62,10 +62,6 @@
|
||||
//Effects of bloodloss
|
||||
var/word = pick("dizzy","woozy","faint")
|
||||
switch(blood_volume)
|
||||
if(BLOOD_VOLUME_EXCESS to BLOOD_VOLUME_MAX_LETHAL)
|
||||
if(prob(15))
|
||||
to_chat(src, "<span class='userdanger'>Blood starts to tear your skin apart. You're going to burst!</span>")
|
||||
gib()
|
||||
if(BLOOD_VOLUME_MAXIMUM to BLOOD_VOLUME_EXCESS)
|
||||
if(prob(10))
|
||||
to_chat(src, "<span class='warning'>You feel terribly bloated.</span>")
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
id = "jelly"
|
||||
default_color = "00FF90"
|
||||
say_mod = "chirps"
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR,WINGCOLOR,HAS_FLESH,HAS_BONE)
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR,WINGCOLOR,HAS_FLESH)
|
||||
mutantlungs = /obj/item/organ/lungs/slime
|
||||
mutant_heart = /obj/item/organ/heart/slime
|
||||
mutant_bodyparts = list("mcolor" = "FFFFFF", "mam_tail" = "None", "mam_ears" = "None", "mam_snouts" = "None", "taur" = "None", "deco_wings" = "None")
|
||||
|
||||
@@ -441,7 +441,7 @@
|
||||
to_chat(user, "You cannot send IC messages (muted).")
|
||||
return FALSE
|
||||
else if(!params)
|
||||
var/custom_emote = stripped_multiline_input(user, "Choose an emote to display.", "Custom Emote", null, MAX_MESSAGE_LEN)
|
||||
var/custom_emote = stripped_multiline_input_or_reflect(user, "Choose an emote to display.", "Custom Emote", null, MAX_MESSAGE_LEN)
|
||||
if(custom_emote && !check_invalid(user, custom_emote))
|
||||
var/type = input("Is this a visible or hearable emote?") as null|anything in list("Visible", "Hearable")
|
||||
switch(type)
|
||||
@@ -531,3 +531,29 @@
|
||||
to_chat(user, "<span class='notice'>You ready your slapping hand.</span>")
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You're incapable of slapping in your current state.</span>")
|
||||
|
||||
/datum/emote/living/audio_emote/blorble
|
||||
key = "blorble"
|
||||
key_third_person = "blorbles"
|
||||
message = "blorbles."
|
||||
message_param = "blorbles at %t."
|
||||
|
||||
/datum/emote/living/audio_emote/blorble/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && iscarbon(user))
|
||||
var/mob/living/carbon/C = user
|
||||
if(isjellyperson(C))
|
||||
pick(playsound(C, 'sound/effects/attackblob.ogg', 50, 1),playsound(C, 'sound/effects/blobattack.ogg', 50, 1))
|
||||
|
||||
/datum/emote/living/audio_emote/blurp
|
||||
key = "blurp"
|
||||
key_third_person = "blurps"
|
||||
message = "blurps."
|
||||
message_param = "blurps at %t."
|
||||
|
||||
/datum/emote/living/audio_emote/blurp/run_emote(mob/user, params)
|
||||
. = ..()
|
||||
if(. && iscarbon(user))
|
||||
var/mob/living/carbon/C = user
|
||||
if(isjellyperson(C))
|
||||
pick(playsound(C, 'sound/effects/meatslap.ogg', 50, 1),playsound(C, 'sound/effects/gib_step.ogg', 50, 1))
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
if(GLOB.say_disabled) //This is here to try to identify lag problems
|
||||
to_chat(usr, "<span class='danger'>Speech is currently admin-disabled.</span>")
|
||||
return
|
||||
|
||||
if(length(message) > MAX_MESSAGE_LEN)
|
||||
to_chat(usr, message)
|
||||
to_chat(usr, "<span class='danger'>^^^----- The preceeding message has been DISCARDED for being over the maximum length of [MAX_MESSAGE_LEN]. It has NOT been sent! -----^^^</span>")
|
||||
return
|
||||
|
||||
message = trim(copytext_char(sanitize(message), 1, MAX_MESSAGE_LEN))
|
||||
clear_typing_indicator() // clear it immediately!
|
||||
|
||||
@@ -37,7 +37,7 @@ proc/get_top_level_mob(var/mob/S)
|
||||
to_chat(user, "You cannot send IC messages (muted).")
|
||||
return FALSE
|
||||
else if(!params)
|
||||
var/subtle_emote = stripped_multiline_input(user, "Choose an emote to display.", "Subtle", null, MAX_MESSAGE_LEN)
|
||||
var/subtle_emote = stripped_multiline_input_or_reflect(user, "Choose an emote to display.", "Subtle", null, MAX_MESSAGE_LEN)
|
||||
if(subtle_emote && !check_invalid(user, subtle_emote))
|
||||
var/type = input("Is this a visible or hearable emote?") as null|anything in list("Visible", "Hearable")
|
||||
switch(type)
|
||||
@@ -98,7 +98,7 @@ proc/get_top_level_mob(var/mob/S)
|
||||
to_chat(user, "You cannot send IC messages (muted).")
|
||||
return FALSE
|
||||
else if(!params)
|
||||
var/subtle_emote = stripped_multiline_input(user, "Choose an emote to display.", "Subtler" , null, MAX_MESSAGE_LEN)
|
||||
var/subtle_emote = stripped_multiline_input_or_reflect(user, "Choose an emote to display.", "Subtler" , null, MAX_MESSAGE_LEN)
|
||||
if(subtle_emote && !check_invalid(user, subtle_emote))
|
||||
var/type = input("Is this a visible or hearable emote?") as null|anything in list("Visible", "Hearable")
|
||||
switch(type)
|
||||
|
||||
@@ -72,7 +72,8 @@
|
||||
return
|
||||
M.put_in_hand(src, H.held_index)
|
||||
|
||||
/obj/item/modular_computer/laptop/on_attack_hand(mob/user)
|
||||
/obj/item/modular_computer/laptop/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags)
|
||||
. = ..()
|
||||
if(screen_on && isturf(loc))
|
||||
return attack_self(user)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/item/ammo_box/magazine/m12g
|
||||
name = "shotgun magazine (12g buckshot slugs)"
|
||||
name = "shotgun magazine (12g buckshot)"
|
||||
desc = "A drum magazine."
|
||||
icon_state = "m12gb"
|
||||
ammo_type = /obj/item/ammo_casing/shotgun/buckshot
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
/obj/item/ammo_box/magazine/m12g/slug
|
||||
name = "shotgun magazine (12g slugs)"
|
||||
icon_state = "m12gb" //this may need an unique sprite
|
||||
icon_state = "m12gsl"
|
||||
ammo_type = /obj/item/ammo_casing/shotgun
|
||||
|
||||
/obj/item/ammo_box/magazine/m12g/dragon
|
||||
|
||||
@@ -84,6 +84,11 @@
|
||||
. = ..()
|
||||
. += "[get_ammo(0,0)] of those are live rounds."
|
||||
|
||||
/obj/item/gun/ballistic/revolver/syndicate
|
||||
unique_reskin = list("Default" = "revolver",
|
||||
"Silver" = "russianrevolver",
|
||||
"Robust" = "revolvercit")
|
||||
|
||||
/obj/item/gun/ballistic/revolver/detective
|
||||
name = "\improper .38 Mars Special"
|
||||
desc = "A cheap Martian knock-off of a classic law enforcement firearm. Uses .38-special rounds."
|
||||
@@ -486,4 +491,4 @@
|
||||
for(var/i = 0, i < ratio, i++)
|
||||
var/mutable_appearance/charge_bar = mutable_appearance(icon, "[initial(icon_state)]_charge", color = batt_color)
|
||||
charge_bar.pixel_x = i
|
||||
. += charge_bar
|
||||
. += charge_bar
|
||||
|
||||
@@ -291,10 +291,17 @@
|
||||
/datum/uplink_item/ammo/bolt_action
|
||||
name = "Surplus Rifle Clip"
|
||||
desc = "A stripper clip used to quickly load bolt action rifles. Contains 5 rounds."
|
||||
item = /obj/item/ammo_box/a762
|
||||
item = /obj/item/ammo_box/a762
|
||||
cost = 1
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/ammo/bolt_action_bulk
|
||||
name = "Surplus Rifle Clip Box"
|
||||
desc = "An ammo box we found in a warehouse, holding 7 clips of 5 rounds for bolt-action rifles. Yes, the cheap ones."
|
||||
item = /obj/item/storage/toolbox/ammo
|
||||
cost = 4
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/ammo/dark_gygax/bag
|
||||
name = "Dark Gygax Ammo Bag"
|
||||
desc = "A duffel bag containing ammo for three full reloads of the incendiary carbine and flash bang launcher that are equipped on a standard Dark Gygax exosuit."
|
||||
|
||||
@@ -206,9 +206,7 @@
|
||||
this primer of questionable worth and value is rumored to increase your rifle-bolt-working and/or shotgun \
|
||||
racking fivefold. Then again, the techniques here only work on bolt-actions and pump-actions..."
|
||||
item = /obj/item/book/granter/trait/rifleman
|
||||
cost = 3
|
||||
restricted_roles = list("Operative") // i want it to be surplusable but i also want it to be mostly nukie only, please advise
|
||||
surplus = 90
|
||||
cost = 3 // fuck it available for everyone
|
||||
|
||||
/datum/uplink_item/device_tools/stimpack
|
||||
name = "Stimpack"
|
||||
|
||||
@@ -576,7 +576,7 @@ GLOBAL_LIST_EMPTY(vending_products)
|
||||
"<span class='notice'>You right [src].")
|
||||
|
||||
unbuckle_all_mobs(TRUE)
|
||||
|
||||
anchored = FALSE //so you can push it back into position
|
||||
tilted = FALSE
|
||||
layer = initial(layer)
|
||||
|
||||
|
||||
@@ -50,6 +50,78 @@
|
||||
-->
|
||||
<div class="commit sansserif">
|
||||
|
||||
<h2 class="date">09 August 2020</h2>
|
||||
<h3 class="author">Hatterhat updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">Proto-kinetic glaives (not crushers) can parry now.</li>
|
||||
</ul>
|
||||
<h3 class="author">MrJWhit updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">Adds a second shutter on the top of the hop line</li>
|
||||
</ul>
|
||||
<h3 class="author">silicons updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">immovable rods no longer drop down chasms</li>
|
||||
<li class="rscdel">fun removal: squeaking objects now have an 1 second cooldown between squeaks, and will have a 33% chance of interrupting any other squeaking object when Cross()ing, meaning no more ear-fuck conveyor belts.</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">08 August 2020</h2>
|
||||
<h3 class="author">DeltaFire15 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="balance">Roundstart cultists now start with a replica fabricator - no brass though, make your own.</li>
|
||||
<li class="balance">Kindle cast time: 10 > 15, mute after stun end: 2 > 5, slur after mute end: 3 > 5</li>
|
||||
<li class="bugfix">The ratvarian spear no longer adds negative vitality under very specific circumstances.</li>
|
||||
<li class="balance">The Ratvarian Spear can parry now! Short parries with low leeway, but low cooldown.</li>
|
||||
<li class="rscadd">The brass claw, a implant-based weapon which gains combo on consecutive hits against the same target.</li>
|
||||
<li class="rscadd">The sigil of rites, a sigil used to perform various rites with a cost of power and materials</li>
|
||||
<li class="rscadd">The Rite of Advancement: Used to add a organ or cyberimplant to a clockie without need for surgery.</li>
|
||||
<li class="rscadd">The Rite of Woundmending: Used to heal all wounds on another cultist, causing toxins damage in return.</li>
|
||||
<li class="rscadd">The Rite of the Claw: Used to summon a brass claw implant. Maximum of 4 uses per round.</li>
|
||||
</ul>
|
||||
<h3 class="author">Hatterhat updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">You can now buy a toolbox's worth of Mosin-Nagant ammo for a fairly discounted price.</li>
|
||||
<li class="rscadd">Revolvers from the dedicated kit now have reskinning capabilities.</li>
|
||||
<li class="bugfix">You can now actually buy the riflery primer, which lets you pump shotguns and work the Mosin's bolt faster.</li>
|
||||
<li class="imageadd">Bulldog slug magazines now have a unique sprite.</li>
|
||||
</ul>
|
||||
<h3 class="author">Ludox235 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscdel">Removed an abductee objective that told you to remove all oxygen.</li>
|
||||
<li class="rscadd">Added a new abductee objective to replace the removed one.</li>
|
||||
</ul>
|
||||
<h3 class="author">Sishen1542 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">🅱️oneless</li>
|
||||
<li class="rscadd">squishy slime emotes</li>
|
||||
</ul>
|
||||
<h3 class="author">timothyteakettle updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="tweak">heparin makes you bleed half as much now</li>
|
||||
<li class="tweak">cuts make you bleed 25% less now</li>
|
||||
<li class="rscadd">more items in the loadout and loadout has subcategories now for easier searching</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">07 August 2020</h2>
|
||||
<h3 class="author">dapnee updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">fixed active tufs on some space ruins, murderdome VR, and a few on pubby, changed cargo autolathe to techfab, messed with pipe room leading to monastery.</li>
|
||||
</ul>
|
||||
<h3 class="author">lolman360 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">vendors are now unanchored when tipped. it just fell over it's not bolted to the ground anymore.</li>
|
||||
<li class="bugfix">podpeople no fat when sunbathing.</li>
|
||||
</ul>
|
||||
<h3 class="author">silicons updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="balance">explosions only recurse one level into storage before dropping 1 level per storage layer.</li>
|
||||
<li class="tweak">volumetric storage is now minimum 16 pixels per item because 8 was ridiculous</li>
|
||||
<li class="spellcheck">shieldbash balanace --> balance</li>
|
||||
<li class="rscadd">attempting to send too long of an emote will now reflect it back to you instead of cutting it off and discarding the overflow.</li>
|
||||
<li class="rscadd">holoparasites can now play music</li>
|
||||
<li class="balance">lethal blood now causes damaging bleeding instead of outright gibbing</li>
|
||||
</ul>
|
||||
|
||||
<h2 class="date">06 August 2020</h2>
|
||||
<h3 class="author">Auris456852 updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
|
||||
@@ -26753,3 +26753,68 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
|
||||
less often
|
||||
zeroisthebiggay:
|
||||
- rscadd: nukies can buy holoparasites
|
||||
2020-08-07:
|
||||
dapnee:
|
||||
- bugfix: fixed active tufs on some space ruins, murderdome VR, and a few on pubby,
|
||||
changed cargo autolathe to techfab, messed with pipe room leading to monastery.
|
||||
lolman360:
|
||||
- bugfix: vendors are now unanchored when tipped. it just fell over it's not bolted
|
||||
to the ground anymore.
|
||||
- bugfix: podpeople no fat when sunbathing.
|
||||
silicons:
|
||||
- balance: explosions only recurse one level into storage before dropping 1 level
|
||||
per storage layer.
|
||||
- tweak: volumetric storage is now minimum 16 pixels per item because 8 was ridiculous
|
||||
- spellcheck: shieldbash balanace --> balance
|
||||
- rscadd: attempting to send too long of an emote will now reflect it back to you
|
||||
instead of cutting it off and discarding the overflow.
|
||||
- rscadd: holoparasites can now play music
|
||||
- balance: lethal blood now causes damaging bleeding instead of outright gibbing
|
||||
2020-08-08:
|
||||
DeltaFire15:
|
||||
- balance: Roundstart cultists now start with a replica fabricator - no brass though,
|
||||
make your own.
|
||||
- balance: 'Kindle cast time: 10 > 15, mute after stun end: 2 > 5, slur after mute
|
||||
end: 3 > 5'
|
||||
- bugfix: The ratvarian spear no longer adds negative vitality under very specific
|
||||
circumstances.
|
||||
- balance: The Ratvarian Spear can parry now! Short parries with low leeway, but
|
||||
low cooldown.
|
||||
- rscadd: The brass claw, a implant-based weapon which gains combo on consecutive
|
||||
hits against the same target.
|
||||
- rscadd: The sigil of rites, a sigil used to perform various rites with a cost
|
||||
of power and materials
|
||||
- rscadd: 'The Rite of Advancement: Used to add a organ or cyberimplant to a clockie
|
||||
without need for surgery.'
|
||||
- rscadd: 'The Rite of Woundmending: Used to heal all wounds on another cultist,
|
||||
causing toxins damage in return.'
|
||||
- rscadd: 'The Rite of the Claw: Used to summon a brass claw implant. Maximum of
|
||||
4 uses per round.'
|
||||
Hatterhat:
|
||||
- rscadd: You can now buy a toolbox's worth of Mosin-Nagant ammo for a fairly discounted
|
||||
price.
|
||||
- rscadd: Revolvers from the dedicated kit now have reskinning capabilities.
|
||||
- bugfix: You can now actually buy the riflery primer, which lets you pump shotguns
|
||||
and work the Mosin's bolt faster.
|
||||
- imageadd: Bulldog slug magazines now have a unique sprite.
|
||||
Ludox235:
|
||||
- rscdel: Removed an abductee objective that told you to remove all oxygen.
|
||||
- rscadd: Added a new abductee objective to replace the removed one.
|
||||
Sishen1542:
|
||||
- tweak: "\U0001F171\uFE0Foneless"
|
||||
- rscadd: squishy slime emotes
|
||||
timothyteakettle:
|
||||
- tweak: heparin makes you bleed half as much now
|
||||
- tweak: cuts make you bleed 25% less now
|
||||
- rscadd: more items in the loadout and loadout has subcategories now for easier
|
||||
searching
|
||||
2020-08-09:
|
||||
Hatterhat:
|
||||
- rscadd: Proto-kinetic glaives (not crushers) can parry now.
|
||||
MrJWhit:
|
||||
- rscadd: Adds a second shutter on the top of the hop line
|
||||
silicons:
|
||||
- bugfix: immovable rods no longer drop down chasms
|
||||
- rscdel: 'fun removal: squeaking objects now have an 1 second cooldown between
|
||||
squeaks, and will have a 33% chance of interrupting any other squeaking object
|
||||
when Cross()ing, meaning no more ear-fuck conveyor belts.'
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
author: "silicons"
|
||||
delete-after: True
|
||||
changes:
|
||||
- rscadd: "holoparasites can now play music"
|
||||
@@ -1,4 +0,0 @@
|
||||
author: "silicons"
|
||||
delete-after: True
|
||||
changes:
|
||||
- balance: "explosions only recurse one level into storage before dropping 1 level per storage layer."
|
||||
@@ -1,4 +0,0 @@
|
||||
author: "silicons"
|
||||
delete-after: True
|
||||
changes:
|
||||
- tweak: "volumetric storage is now minimum 16 pixels per item because 8 was ridiculous"
|
||||
|
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 224 KiB |
|
Before Width: | Height: | Size: 426 KiB After Width: | Height: | Size: 428 KiB |
|
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 276 KiB |
|
Before Width: | Height: | Size: 409 KiB After Width: | Height: | Size: 415 KiB |
|
Before Width: | Height: | Size: 268 KiB After Width: | Height: | Size: 276 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 108 KiB After Width: | Height: | Size: 108 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 119 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 41 KiB |
@@ -1,496 +1,497 @@
|
||||
//This is the file that handles donator loadout items.
|
||||
|
||||
/datum/gear/pingcoderfailsafe
|
||||
/datum/gear/donator
|
||||
name = "IF YOU SEE THIS, PING A CODER RIGHT NOW!"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/bikehorn/golden
|
||||
category = LOADOUT_CATEGORY_DONATOR
|
||||
ckeywhitelist = list("This entry should never appear with this variable set.") //If it does, then that means somebody fucked up the whitelist system pretty hard
|
||||
|
||||
/datum/gear/donortestingbikehorn
|
||||
/datum/gear/donator/donortestingbikehorn
|
||||
name = "Donor item testing bikehorn"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/bikehorn
|
||||
geargroupID = list("DONORTEST") //This is a list mainly for the sake of testing, but geargroupID works just fine with ordinary strings
|
||||
|
||||
/datum/gear/kevhorn
|
||||
/datum/gear/donator/kevhorn
|
||||
name = "Airhorn"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/bikehorn/airhorn
|
||||
ckeywhitelist = list("kevinz000")
|
||||
|
||||
/datum/gear/cebusoap
|
||||
/datum/gear/donator/cebusoap
|
||||
name = "Cebutris' soap"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/custom/ceb_soap
|
||||
ckeywhitelist = list("cebutris")
|
||||
|
||||
/datum/gear/kiaracloak
|
||||
/datum/gear/donator/kiaracloak
|
||||
name = "Kiara's cloak"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/cloak/inferno
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/kiaracollar
|
||||
/datum/gear/donator/kiaracollar
|
||||
name = "Kiara's collar"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar/inferno
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/kiaramedal
|
||||
/datum/gear/donator/kiaramedal
|
||||
name = "Insignia of Steele"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/accessory/medal/steele
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/hheart
|
||||
/datum/gear/donator/hheart
|
||||
name = "The Hollow Heart"
|
||||
category = SLOT_WEAR_MASK
|
||||
slot = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/hheart
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/engravedzippo
|
||||
/datum/gear/donator/engravedzippo
|
||||
name = "Engraved zippo"
|
||||
category = SLOT_HANDS
|
||||
slot = SLOT_HANDS
|
||||
path = /obj/item/lighter/gold
|
||||
ckeywhitelist = list("dirtyoldharry")
|
||||
|
||||
/datum/gear/geisha
|
||||
/datum/gear/donator/geisha
|
||||
name = "Geisha suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/geisha
|
||||
ckeywhitelist = list("atiefling")
|
||||
|
||||
/datum/gear/specialscarf
|
||||
/datum/gear/donator/specialscarf
|
||||
name = "Special scarf"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/zomb
|
||||
ckeywhitelist = list("zombierobin")
|
||||
|
||||
/datum/gear/redmadcoat
|
||||
/datum/gear/donator/redmadcoat
|
||||
name = "The Mad's labcoat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/toggle/labcoat/mad/red
|
||||
ckeywhitelist = list("zombierobin")
|
||||
|
||||
/datum/gear/santahat
|
||||
/datum/gear/donator/santahat
|
||||
name = "Santa hat"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/santa/fluff
|
||||
ckeywhitelist = list("illotafv")
|
||||
|
||||
/datum/gear/reindeerhat
|
||||
/datum/gear/donator/reindeerhat
|
||||
name = "Reindeer hat"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/hardhat/reindeer/fluff
|
||||
ckeywhitelist = list("illotafv")
|
||||
|
||||
/datum/gear/treeplushie
|
||||
/datum/gear/donator/treeplushie
|
||||
name = "Christmas tree plushie"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/tree
|
||||
ckeywhitelist = list("illotafv")
|
||||
|
||||
/datum/gear/santaoutfit
|
||||
/datum/gear/donator/santaoutfit
|
||||
name = "Santa costume"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/space/santa/fluff
|
||||
ckeywhitelist = list("illotafv")
|
||||
|
||||
/datum/gear/treecloak
|
||||
/datum/gear/donator/treecloak
|
||||
name = "Christmas tree cloak"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/cloak/festive
|
||||
ckeywhitelist = list("illotafv")
|
||||
|
||||
/datum/gear/carrotplush
|
||||
/datum/gear/donator/carrotplush
|
||||
name = "Carrot plushie"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/carrot
|
||||
ckeywhitelist = list("improvedname")
|
||||
|
||||
/datum/gear/carrotcloak
|
||||
/datum/gear/donator/carrotcloak
|
||||
name = "Carrot cloak"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/cloak/carrot
|
||||
ckeywhitelist = list("improvedname")
|
||||
|
||||
/datum/gear/albortorosamask
|
||||
/datum/gear/donator/albortorosamask
|
||||
name = "Alborto Rosa mask"
|
||||
category = SLOT_WEAR_MASK
|
||||
slot = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/luchador/zigfie
|
||||
ckeywhitelist = list("zigfie")
|
||||
|
||||
/datum/gear/mankini
|
||||
/datum/gear/donator/mankini
|
||||
name = "Mankini"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/stripper/mankini
|
||||
ckeywhitelist = list("zigfie")
|
||||
|
||||
/datum/gear/pinkshoes
|
||||
/datum/gear/donator/pinkshoes
|
||||
name = "Pink shoes"
|
||||
category = SLOT_SHOES
|
||||
slot = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sneakers/pink
|
||||
ckeywhitelist = list("zigfie")
|
||||
|
||||
/datum/gear/reecesgreatcoat
|
||||
/datum/gear/donator/reecesgreatcoat
|
||||
name = "Reece's Great Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/trenchcoat/green
|
||||
ckeywhitelist = list("geemiesif")
|
||||
|
||||
/datum/gear/russianflask
|
||||
/datum/gear/donator/russianflask
|
||||
name = "Russian flask"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/reagent_containers/food/drinks/flask/russian
|
||||
cost = 2
|
||||
ckeywhitelist = list("slomka")
|
||||
|
||||
/datum/gear/stalkermask
|
||||
/datum/gear/donator/stalkermask
|
||||
name = "S.T.A.L.K.E.R. mask"
|
||||
category = SLOT_WEAR_MASK
|
||||
slot = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/gas/stalker
|
||||
ckeywhitelist = list("slomka")
|
||||
|
||||
/datum/gear/stripedcollar
|
||||
/datum/gear/donator/stripedcollar
|
||||
name = "Striped collar"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar/stripe
|
||||
ckeywhitelist = list("jademanique")
|
||||
|
||||
/datum/gear/performersoutfit
|
||||
/datum/gear/donator/performersoutfit
|
||||
name = "Bluish performer's outfit"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/singer/yellow/custom
|
||||
ckeywhitelist = list("killer402402")
|
||||
|
||||
/datum/gear/vermillion
|
||||
/datum/gear/donator/vermillion
|
||||
name = "Vermillion clothing"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/suit/vermillion
|
||||
ckeywhitelist = list("fractious")
|
||||
|
||||
/datum/gear/AM4B
|
||||
/datum/gear/donator/AM4B
|
||||
name = "Foam Force AM4-B"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/gun/ballistic/automatic/AM4B
|
||||
ckeywhitelist = list("zeronetalpha")
|
||||
|
||||
/datum/gear/carrotsatchel
|
||||
/datum/gear/donator/carrotsatchel
|
||||
name = "Carrot Satchel"
|
||||
category = SLOT_HANDS
|
||||
slot = SLOT_HANDS
|
||||
path = /obj/item/storage/backpack/satchel/carrot
|
||||
ckeywhitelist = list("improvedname")
|
||||
|
||||
/datum/gear/naomisweater
|
||||
/datum/gear/donator/naomisweater
|
||||
name = "worn black sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/black/naomi
|
||||
ckeywhitelist = list("technicalmagi")
|
||||
|
||||
/datum/gear/naomicollar
|
||||
/datum/gear/donator/naomicollar
|
||||
name = "worn pet collar"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar/naomi
|
||||
ckeywhitelist = list("technicalmagi")
|
||||
|
||||
/datum/gear/gladiator
|
||||
/datum/gear/donator/gladiator
|
||||
name = "Gladiator Armor"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/under/costume/gladiator
|
||||
ckeywhitelist = list("aroche")
|
||||
|
||||
/datum/gear/bloodredtie
|
||||
/datum/gear/donator/bloodredtie
|
||||
name = "Blood Red Tie"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/tie/bloodred
|
||||
ckeywhitelist = list("kyutness")
|
||||
|
||||
/datum/gear/puffydress
|
||||
/datum/gear/donator/puffydress
|
||||
name = "Puffy Dress"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/puffydress
|
||||
ckeywhitelist = list("stallingratt")
|
||||
|
||||
/datum/gear/labredblack
|
||||
/datum/gear/donator/labredblack
|
||||
name = "Black and Red Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/toggle/labcoat/labredblack
|
||||
ckeywhitelist = list("blakeryan", "durandalphor")
|
||||
|
||||
/datum/gear/torisword
|
||||
/datum/gear/donator/torisword
|
||||
name = "Rainbow Zweihander"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/dualsaber/hypereutactic/toy/rainbow
|
||||
ckeywhitelist = list("annoymous35")
|
||||
|
||||
/datum/gear/darksabre
|
||||
/datum/gear/donator/darksabre
|
||||
name = "Dark Sabre"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/darksabre
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
datum/gear/darksabresheath
|
||||
/datum/gear/donator/darksabresheath
|
||||
name = "Dark Sabre Sheath"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/storage/belt/sabre/darksabre
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/toriball
|
||||
/datum/gear/donator/toriball
|
||||
name = "Rainbow Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/rainbow
|
||||
ckeywhitelist = list("annoymous35")
|
||||
|
||||
/datum/gear/izzyball
|
||||
/datum/gear/donator/izzyball
|
||||
name = "Katlin's Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/rainbow/izzy
|
||||
ckeywhitelist = list("izzyinbox")
|
||||
|
||||
/datum/gear/cloak
|
||||
/datum/gear/donator/cloak
|
||||
name = "Green Cloak"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/cloak/green
|
||||
ckeywhitelist = list("killer402402")
|
||||
|
||||
/datum/gear/steelflask
|
||||
/datum/gear/donator/steelflask
|
||||
name = "Steel Flask"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/reagent_containers/food/drinks/flask/steel
|
||||
cost = 2
|
||||
ckeywhitelist = list("nik707")
|
||||
|
||||
/datum/gear/paperhat
|
||||
/datum/gear/donator/paperhat
|
||||
name = "Paper Hat"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/paperhat
|
||||
ckeywhitelist = list("kered2")
|
||||
|
||||
/datum/gear/cloakce
|
||||
/datum/gear/donator/cloakce
|
||||
name = "Polychromic CE Cloak"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/neck/cloak/polychromic/polyce
|
||||
ckeywhitelist = list("worksbythesea", "blakeryan")
|
||||
|
||||
/datum/gear/ssk
|
||||
/datum/gear/donator/ssk
|
||||
name = "Stun Sword Kit"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/ssword_kit
|
||||
ckeywhitelist = list("phillip458")
|
||||
|
||||
/datum/gear/techcoat
|
||||
/datum/gear/donator/techcoat
|
||||
name = "Techomancers Labcoat"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/suit/toggle/labcoat/mad/techcoat
|
||||
ckeywhitelist = list("wilchen")
|
||||
|
||||
/datum/gear/leechjar
|
||||
/datum/gear/donator/leechjar
|
||||
name = "Jar of Leeches"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/custom/leechjar
|
||||
ckeywhitelist = list("sgtryder")
|
||||
|
||||
/datum/gear/darkarmor
|
||||
/datum/gear/donator/darkarmor
|
||||
name = "Dark Armor"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/suit/armor/vest/darkcarapace
|
||||
ckeywhitelist = list("inferno707")
|
||||
|
||||
/datum/gear/devilwings
|
||||
/datum/gear/donator/devilwings
|
||||
name = "Strange Wings"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/devilwings
|
||||
ckeywhitelist = list("kitsun")
|
||||
|
||||
/datum/gear/flagcape
|
||||
/datum/gear/donator/flagcape
|
||||
name = "US Flag Cape"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/neck/flagcape
|
||||
ckeywhitelist = list("darnchacha")
|
||||
|
||||
/datum/gear/luckyjack
|
||||
/datum/gear/donator/luckyjack
|
||||
name = "Lucky Jackboots"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/clothing/shoes/lucky
|
||||
ckeywhitelist = list("donaldtrumpthecommunist")
|
||||
|
||||
/datum/gear/raiqbawks
|
||||
/datum/gear/donator/raiqbawks
|
||||
name = "Miami Boombox"
|
||||
category = SLOT_HANDS
|
||||
slot = SLOT_HANDS
|
||||
cost = 2
|
||||
path = /obj/item/boombox/raiq
|
||||
ckeywhitelist = list("chefferz")
|
||||
|
||||
/datum/gear/m41
|
||||
/datum/gear/donator/m41
|
||||
name = "Toy M41"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/gun/m41
|
||||
ckeywhitelist = list("thalverscholen")
|
||||
|
||||
/datum/gear/Divine_robes
|
||||
/datum/gear/donator/Divine_robes
|
||||
name = "Divine robes"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/custom/lunasune
|
||||
ckeywhitelist = list("invader4352")
|
||||
|
||||
/datum/gear/gothcoat
|
||||
/datum/gear/donator/gothcoat
|
||||
name = "Goth Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/gothcoat
|
||||
ckeywhitelist = list("norko")
|
||||
|
||||
/datum/gear/corgisuit
|
||||
/datum/gear/donator/corgisuit
|
||||
name = "Corgi Suit"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/ian_costume
|
||||
ckeywhitelist = list("cathodetherobot")
|
||||
|
||||
/datum/gear/sharkcloth
|
||||
/datum/gear/donator/sharkcloth
|
||||
name = "Leon's Skimpy Outfit"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/under/custom/leoskimpy
|
||||
ckeywhitelist = list("spectrosis")
|
||||
|
||||
/datum/gear/mimemask
|
||||
/datum/gear/donator/mimemask
|
||||
name = "Mime Mask"
|
||||
category = SLOT_WEAR_MASK
|
||||
slot = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/gas/mime
|
||||
ckeywhitelist = list("pireamaineach")
|
||||
|
||||
/datum/gear/mimeoveralls
|
||||
/datum/gear/donator/mimeoveralls
|
||||
name = "Mime's Overalls"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/under/custom/mimeoveralls
|
||||
ckeywhitelist = list("pireamaineach")
|
||||
|
||||
/datum/gear/soulneck
|
||||
/datum/gear/donator/soulneck
|
||||
name = "Soul Necklace"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/undertale
|
||||
ckeywhitelist = list("twilightic")
|
||||
|
||||
/datum/gear/frenchberet
|
||||
/datum/gear/donator/frenchberet
|
||||
name = "French Beret"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/frenchberet
|
||||
ckeywhitelist = list("notazoltan")
|
||||
|
||||
/datum/gear/zuliecloak
|
||||
/datum/gear/donator/zuliecloak
|
||||
name = "Project: Zul-E"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/cloak/zuliecloak
|
||||
ckeywhitelist = list("asky")
|
||||
|
||||
/datum/gear/blackredgold
|
||||
/datum/gear/donator/blackredgold
|
||||
name = "Black, Red, and Gold Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/blackredgold
|
||||
ckeywhitelist = list("ttbnc")
|
||||
|
||||
/datum/gear/fritzplush
|
||||
/datum/gear/donator/fritzplush
|
||||
name = "Fritz Plushie"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/mammal/dog/fritz
|
||||
ckeywhitelist = list("analwerewolf")
|
||||
|
||||
/datum/gear/kimono
|
||||
/datum/gear/donator/kimono
|
||||
name = "Kimono"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/kimono
|
||||
ckeywhitelist = list("sfox63")
|
||||
|
||||
/datum/gear/commjacket
|
||||
/datum/gear/donator/commjacket
|
||||
name = "Dusty Commisar's Cloak"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/commjacket
|
||||
ckeywhitelist = list("sadisticbatter")
|
||||
|
||||
/datum/gear/mw2_russian_para
|
||||
/datum/gear/donator/mw2_russian_para
|
||||
name = "Russian Paratrooper Jumper"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/custom/mw2_russian_para
|
||||
ckeywhitelist = list("investigator77")
|
||||
|
||||
/datum/gear/longblackgloves
|
||||
/datum/gear/donator/longblackgloves
|
||||
name = "Luna's Gauntlets"
|
||||
category = SLOT_GLOVES
|
||||
slot = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/longblackgloves
|
||||
ckeywhitelist = list("bigmanclancy")
|
||||
|
||||
/datum/gear/trendy_fit
|
||||
/datum/gear/donator/trendy_fit
|
||||
name = "Trendy Fit"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/custom/trendy_fit
|
||||
ckeywhitelist = list("midgetdragon")
|
||||
|
||||
/datum/gear/singery
|
||||
/datum/gear/donator/singery
|
||||
name = "Yellow Performer Outfit"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/singer/yellow
|
||||
ckeywhitelist = list("maxlynchy")
|
||||
|
||||
/datum/gear/csheet
|
||||
/datum/gear/donator/csheet
|
||||
name = "NT Bedsheet"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/bedsheet/captain
|
||||
ckeywhitelist = list("tikibomb")
|
||||
|
||||
/datum/gear/borgplush
|
||||
/datum/gear/donator/borgplush
|
||||
name = "Robot Plush"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/borgplushie
|
||||
ckeywhitelist = list("nicholaiavenicci")
|
||||
|
||||
/datum/gear/donorberet
|
||||
/datum/gear/donator/donorberet
|
||||
name = "Atmos Beret"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/blueberet
|
||||
ckeywhitelist = list("foxystalin")
|
||||
|
||||
/datum/gear/donorgoggles
|
||||
/datum/gear/donator/donorgoggles
|
||||
name = "Flight Goggles"
|
||||
category = SLOT_HEAD
|
||||
slot = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/flight
|
||||
ckeywhitelist = list("maxlynchy")
|
||||
|
||||
/datum/gear/onionneck
|
||||
/datum/gear/donator/onionneck
|
||||
name = "Onion Necklace"
|
||||
category = SLOT_NECK
|
||||
slot = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/necklace/onion
|
||||
ckeywhitelist = list("cdrcross")
|
||||
|
||||
/datum/gear/mikubikini
|
||||
/datum/gear/donator/mikubikini
|
||||
name = "starlight singer bikini"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/custom/mikubikini
|
||||
ckeywhitelist = list("grandvegeta")
|
||||
|
||||
/datum/gear/mikujacket
|
||||
/datum/gear/donator/mikujacket
|
||||
name = "starlight singer jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
slot = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/mikujacket
|
||||
ckeywhitelist = list("grandvegeta")
|
||||
|
||||
/datum/gear/mikuhair
|
||||
/datum/gear/donator/mikuhair
|
||||
name = "starlight singer hair"
|
||||
category = SLOT_W_UNIFORM
|
||||
slot = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/head/mikuhair
|
||||
ckeywhitelist = list("grandvegeta")
|
||||
|
||||
/datum/gear/mikugloves
|
||||
/datum/gear/donator/mikugloves
|
||||
name = "starlight singer gloves"
|
||||
category = SLOT_GLOVES
|
||||
slot = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/mikugloves
|
||||
ckeywhitelist = list("grandvegeta")
|
||||
|
||||
/datum/gear/mikuleggings
|
||||
/datum/gear/donator/mikuleggings
|
||||
name = "starlight singer leggings"
|
||||
category = SLOT_SHOES
|
||||
slot = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sneakers/mikuleggings
|
||||
ckeywhitelist = list("grandvegeta")
|
||||
|
||||
/datum/gear/cosmos
|
||||
/datum/gear/donator/cosmos
|
||||
name = "cosmic space bedsheet"
|
||||
category = SLOT_IN_BACKPACK
|
||||
slot = SLOT_IN_BACKPACK
|
||||
path = /obj/item/bedsheet/cosmos
|
||||
ckeywhitelist = list("grunnyyy")
|
||||
|
||||
@@ -27,8 +27,13 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids)
|
||||
/proc/initialize_global_loadout_items()
|
||||
load_loadout_config()
|
||||
for(var/item in subtypesof(/datum/gear))
|
||||
var/datum/gear/I = new item
|
||||
LAZYSET(GLOB.loadout_items[slot_to_string(I.category)], I.name, I)
|
||||
var/datum/gear/I = item
|
||||
if(!initial(I.name))
|
||||
continue
|
||||
I = new item
|
||||
LAZYINITLIST(GLOB.loadout_items[I.category])
|
||||
LAZYINITLIST(GLOB.loadout_items[I.category][I.subcategory])
|
||||
GLOB.loadout_items[I.category][I.subcategory][I.name] = I
|
||||
if(islist(I.geargroupID))
|
||||
var/list/ggidlist = I.geargroupID
|
||||
I.ckeywhitelist = list()
|
||||
@@ -41,7 +46,9 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids)
|
||||
|
||||
/datum/gear
|
||||
var/name
|
||||
var/category
|
||||
var/category = LOADOUT_CATEGORY_NONE
|
||||
var/subcategory = LOADOUT_SUBCATEGORY_NONE
|
||||
var/slot
|
||||
var/description
|
||||
var/path //item-to-spawn path
|
||||
var/cost = 1 //normally, each loadout costs a single point.
|
||||
|
||||
@@ -1,47 +1,45 @@
|
||||
/datum/gear/medicbriefcase
|
||||
/datum/gear/hands/medicbriefcase
|
||||
name = "Medical Briefcase"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/storage/briefcase/medical
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer")
|
||||
restricted_desc = "MD, CMO"
|
||||
|
||||
/datum/gear/stethoscope
|
||||
/datum/gear/neck/stethoscope
|
||||
name = "Stethoscope"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/stethoscope
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer")
|
||||
|
||||
/datum/gear/bluescrubs
|
||||
/datum/gear/uniform/bluescrubs
|
||||
name = "Blue Scrubs"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/medical/doctor/blue
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist")
|
||||
restricted_desc = "Medical"
|
||||
|
||||
/datum/gear/greenscrubs
|
||||
|
||||
/datum/gear/uniform/greenscrubs
|
||||
name = "Green Scrubs"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/medical/doctor/green
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist")
|
||||
restricted_desc = "Medical"
|
||||
|
||||
/datum/gear/purplescrubs
|
||||
/datum/gear/uniform/purplescrubs
|
||||
name = "Purple Scrubs"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/medical/doctor/purple
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist")
|
||||
restricted_desc = "Medical"
|
||||
|
||||
/datum/gear/nursehat
|
||||
/datum/gear/head/nursehat
|
||||
name = "Nurse Hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/nursehat
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist")
|
||||
restricted_desc = "Medical"
|
||||
|
||||
/datum/gear/nursesuit
|
||||
/datum/gear/uniform/nursesuit
|
||||
name = "Nurse Suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/rank/medical/doctor/nurse
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Geneticist", "Chemist", "Virologist")
|
||||
restricted_desc = "Medical"
|
||||
restricted_desc = "Medical"
|
||||
|
||||
@@ -1,71 +1,70 @@
|
||||
/datum/gear/navyblueuniformhos
|
||||
/datum/gear/uniform/navyblueuniformhos
|
||||
name = "Head of Security navyblue uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/security/head_of_security/formal
|
||||
restricted_roles = list("Head of Security")
|
||||
|
||||
/datum/gear/navybluehosberet
|
||||
/datum/gear/head/navybluehosberet
|
||||
name = "Head of security's navyblue beret"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/beret/sec/navyhos
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Head of Security")
|
||||
|
||||
/datum/gear/navybluejackethos
|
||||
/datum/gear/suit/navybluejackethos
|
||||
name = "head of security's navyblue jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
path = /obj/item/clothing/suit/armor/hos/navyblue
|
||||
restricted_roles = list("Head of Security")
|
||||
|
||||
/datum/gear/navybluejacketofficer
|
||||
/datum/gear/suit/navybluejacketofficer
|
||||
name = "security officer's navyblue jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
path = /obj/item/clothing/suit/armor/navyblue
|
||||
restricted_roles = list("Security Officer")
|
||||
|
||||
/datum/gear/navyblueofficerberet
|
||||
/datum/gear/head/navyblueofficerberet
|
||||
name = "Security officer's Navyblue beret"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/beret/sec/navyofficer
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Security Officer")
|
||||
|
||||
/datum/gear/navyblueuniformofficer
|
||||
/datum/gear/uniform/navyblueuniformofficer
|
||||
name = "Security officer navyblue uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/security/officer/formal
|
||||
restricted_roles = list("Security Officer")
|
||||
|
||||
/datum/gear/navybluejacketwarden
|
||||
/datum/gear/suit/navybluejacketwarden
|
||||
name = "warden navyblue jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
path = /obj/item/clothing/suit/armor/vest/warden/navyblue
|
||||
restricted_roles = list("Warden")
|
||||
|
||||
/datum/gear/navybluewardenberet
|
||||
/datum/gear/head/navybluewardenberet
|
||||
name = "Warden's navyblue beret"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/beret/sec/navywarden
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Warden")
|
||||
|
||||
/datum/gear/navyblueuniformwarden
|
||||
/datum/gear/uniform/navyblueuniformwarden
|
||||
name = "Warden navyblue uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/security/warden/formal
|
||||
restricted_roles = list("Warden")
|
||||
|
||||
/datum/gear/secskirt
|
||||
/datum/gear/uniform/secskirt
|
||||
name = "Security skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/security/officer/skirt
|
||||
restricted_roles = list("Security Officer", "Warden", "Head of Security")
|
||||
|
||||
/datum/gear/hosskirt
|
||||
/datum/gear/uniform/hosskirt
|
||||
name = "Head of security's skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/rank/security/head_of_security/skirt
|
||||
restricted_roles = list("Head of Security")
|
||||
|
||||
/datum/gear/sechud
|
||||
/datum/gear/glasses/sechud
|
||||
name = "Security Hud"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/hud/security
|
||||
restricted_roles = list("Security Officer", "Warden", "Head of Security")
|
||||
restricted_roles = list("Security Officer", "Warden", "Head of Security")
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
/datum/gear/greytidestationwide
|
||||
/datum/gear/uniform/greytidestationwide
|
||||
name = "Staff Assistant's jumpsuit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/staffassistant
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Assistant")
|
||||
|
||||
/datum/gear/neetsuit
|
||||
/datum/gear/suit/neetsuit
|
||||
name = "D.A.B. suit"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/assu_suit
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Assistant")
|
||||
cost = 2
|
||||
|
||||
/datum/gear/neethelm
|
||||
/datum/gear/head/neethelm
|
||||
name = "D.A.B. helmet"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/assu_helmet
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Assistant")
|
||||
cost = 2
|
||||
|
||||
/datum/gear/plushvar
|
||||
/datum/gear/backpack/plushvar
|
||||
name = "Ratvar Plushie"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/plushvar
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
cost = 5
|
||||
restricted_roles = list("Chaplain")
|
||||
|
||||
/datum/gear/narplush
|
||||
/datum/gear/backpack/narplush
|
||||
name = "Narsie Plushie"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/plush/narplush
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
cost = 5
|
||||
restricted_roles = list("Chaplain")
|
||||
|
||||
@@ -1,112 +1,100 @@
|
||||
/datum/gear/plushbox
|
||||
/datum/gear/backpack
|
||||
category = LOADOUT_CATEGORY_BACKPACK
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_GENERAL
|
||||
slot = SLOT_IN_BACKPACK
|
||||
|
||||
/datum/gear/backpack/plushbox
|
||||
name = "Plushie Choice Box"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/choice_beacon/box/plushie
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
|
||||
/datum/gear/tennis
|
||||
/datum/gear/backpack/tennis
|
||||
name = "Classic Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
|
||||
/datum/gear/tennisred
|
||||
/datum/gear/backpack/tennis/red
|
||||
name = "Red Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/red
|
||||
|
||||
/datum/gear/tennisyellow
|
||||
/datum/gear/backpack/tennis/yellow
|
||||
name = "Yellow Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/yellow
|
||||
|
||||
/datum/gear/tennisgreen
|
||||
/datum/gear/backpack/tennis/green
|
||||
name = "Green Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/green
|
||||
|
||||
/datum/gear/tenniscyan
|
||||
/datum/gear/backpack/tennis/cyan
|
||||
name = "Cyan Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/cyan
|
||||
|
||||
/datum/gear/tennisblue
|
||||
/datum/gear/backpack/tennis/blue
|
||||
name = "Blue Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/blue
|
||||
|
||||
/datum/gear/tennispurple
|
||||
/datum/gear/backpack/tennis/purple
|
||||
name = "Purple Tennis Ball"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/tennis/purple
|
||||
|
||||
/datum/gear/dildo
|
||||
/datum/gear/backpack/dildo
|
||||
name = "Customizable dildo"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/dildo/custom
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
|
||||
/datum/gear/toykatana
|
||||
/datum/gear/backpack/toykatana
|
||||
name = "Toy Katana"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/toy/katana
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
cost = 3
|
||||
|
||||
/datum/gear/tapeplayer
|
||||
/datum/gear/backpack/tapeplayer
|
||||
name = "Taperecorder"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/taperecorder
|
||||
|
||||
/datum/gear/tape
|
||||
/datum/gear/backpack/tape
|
||||
name = "Spare cassette tape"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/tape/random
|
||||
|
||||
/datum/gear/newspaper
|
||||
/datum/gear/backpack/newspaper
|
||||
name = "Newspaper"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/newspaper
|
||||
|
||||
/datum/gear/crayons
|
||||
/datum/gear/backpack/crayons
|
||||
name = "Box of crayons"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/storage/crayons
|
||||
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
|
||||
|
||||
/datum/gear/multipen
|
||||
/datum/gear/backpack/multipen
|
||||
name = "A multicolored pen"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/pen/fourcolor
|
||||
|
||||
/datum/gear/fountainpen
|
||||
/datum/gear/backpack/fountainpen
|
||||
name = "A fancy pen"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/pen/fountain
|
||||
cost = 2
|
||||
|
||||
/datum/gear/modular_tablet
|
||||
/datum/gear/backpack/modular_tablet
|
||||
name = "A modular tablet"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/modular_computer/tablet/preset/cheap/
|
||||
cost = 4
|
||||
|
||||
/datum/gear/modular_laptop
|
||||
/datum/gear/backpack/modular_laptop
|
||||
name = "A modular laptop"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/modular_computer/laptop/preset/civilian
|
||||
cost = 7
|
||||
|
||||
/datum/gear/ringbox_gold
|
||||
/datum/gear/backpack/ringbox_gold
|
||||
name = "A gold ring box"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/storage/fancy/ringbox
|
||||
cost = 3
|
||||
|
||||
/datum/gear/ringbox_silver
|
||||
/datum/gear/backpack/ringbox_silver
|
||||
name = "A silver ring box"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/storage/fancy/ringbox/silver
|
||||
cost = 3
|
||||
|
||||
/datum/gear/ringbox_diamond
|
||||
/datum/gear/backpack/ringbox_diamond
|
||||
name = "A diamond ring box"
|
||||
category = SLOT_IN_BACKPACK
|
||||
path = /obj/item/storage/fancy/ringbox/diamond
|
||||
cost = 5
|
||||
|
||||
|
||||
@@ -1,49 +1,43 @@
|
||||
/datum/gear/blindfold
|
||||
/datum/gear/glasses
|
||||
category = LOADOUT_CATEGORY_GLASSES
|
||||
slot = SLOT_GLASSES
|
||||
|
||||
/datum/gear/glasses/blindfold
|
||||
name = "Blindfold"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/sunglasses/blindfold
|
||||
|
||||
/datum/gear/cold
|
||||
/datum/gear/glasses/cold
|
||||
name = "Cold goggles"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/cold
|
||||
|
||||
/datum/gear/eyepatch
|
||||
/datum/gear/glasses/eyepatch
|
||||
name = "Eyepatch"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/eyepatch
|
||||
|
||||
/datum/gear/heat
|
||||
/datum/gear/glasses/heat
|
||||
name = "Heat goggles"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/heat
|
||||
|
||||
/datum/gear/hipster
|
||||
/datum/gear/glasses/hipster
|
||||
name = "Hipster glasses"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/regular/hipster
|
||||
|
||||
/datum/gear/jamjar
|
||||
/datum/gear/glasses/jamjar
|
||||
name = "Jamjar glasses"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/regular/jamjar
|
||||
|
||||
/datum/gear/monocle
|
||||
/datum/gear/glasses/monocle
|
||||
name = "Monocle"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/monocle
|
||||
|
||||
/datum/gear/orange
|
||||
/datum/gear/glasses/orange
|
||||
name = "Orange glasses"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/orange
|
||||
|
||||
/datum/gear/red
|
||||
/datum/gear/glasses/red
|
||||
name = "Red Glasses"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/red
|
||||
|
||||
/datum/gear/prescription
|
||||
/datum/gear/glasses/prescription
|
||||
name = "Prescription glasses"
|
||||
category = SLOT_GLASSES
|
||||
path = /obj/item/clothing/glasses/regular
|
||||
|
||||
@@ -1,28 +1,26 @@
|
||||
/datum/gear/fingerless
|
||||
/datum/gear/gloves
|
||||
category = LOADOUT_CATEGORY_GLOVES
|
||||
slot = SLOT_GLOVES
|
||||
|
||||
/datum/gear/gloves/fingerless
|
||||
name = "Fingerless Gloves"
|
||||
category = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/fingerless
|
||||
|
||||
/datum/gear/evening
|
||||
/datum/gear/gloves/evening
|
||||
name = "Evening gloves"
|
||||
category = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/evening
|
||||
|
||||
/datum/gear/goldring
|
||||
/datum/gear/gloves/goldring
|
||||
name = "A gold ring"
|
||||
category = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/ring
|
||||
cost = 2
|
||||
|
||||
/datum/gear/silverring
|
||||
/datum/gear/gloves/silverring
|
||||
name = "A silver ring"
|
||||
category = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/ring/silver
|
||||
cost = 2
|
||||
|
||||
/datum/gear/diamondring
|
||||
/datum/gear/gloves/diamondring
|
||||
name = "A diamond ring"
|
||||
category = SLOT_GLOVES
|
||||
path = /obj/item/clothing/gloves/ring/diamond
|
||||
cost = 4
|
||||
|
||||
|
||||
@@ -1,67 +1,54 @@
|
||||
/datum/gear/cane
|
||||
/datum/gear/hands
|
||||
category = LOADOUT_CATEGORY_HANDS
|
||||
slot = SLOT_HANDS
|
||||
|
||||
/datum/gear/hands/cane
|
||||
name = "Cane"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/cane
|
||||
|
||||
/datum/gear/cigarettes
|
||||
/datum/gear/hands/cigarettes
|
||||
name = "Cigarette pack"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/storage/fancy/cigarettes
|
||||
|
||||
/datum/gear/dice
|
||||
/datum/gear/hands/dice
|
||||
name = "Dice bag"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/storage/box/dice
|
||||
|
||||
/datum/gear/eightball
|
||||
/datum/gear/hands/eightball
|
||||
name = "Magic eightball"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/toy/eightball
|
||||
|
||||
/datum/gear/matches
|
||||
/datum/gear/hands/matches
|
||||
name = "Matchbox"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/storage/box/matches
|
||||
|
||||
/datum/gear/cheaplighter
|
||||
/datum/gear/hands/cheaplighter
|
||||
name = "Cheap lighter"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/lighter/greyscale
|
||||
|
||||
/datum/gear/cards
|
||||
/datum/gear/hands/cards
|
||||
name = "Playing cards"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/toy/cards/deck
|
||||
|
||||
/datum/gear/skub
|
||||
/datum/gear/hands/skub
|
||||
name = "Skub"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/skub
|
||||
|
||||
/datum/gear/carpplushie
|
||||
name = "Space carp plushie"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/toy/plush/carpplushie
|
||||
|
||||
/datum/gear/wallet
|
||||
/datum/gear/hands/wallet
|
||||
name = "Wallet"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/storage/wallet
|
||||
|
||||
/datum/gear/flask
|
||||
/datum/gear/hands/flask
|
||||
name = "Flask"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/reagent_containers/food/drinks/flask
|
||||
cost = 2
|
||||
|
||||
/datum/gear/zippolighter
|
||||
/datum/gear/hands/zippolighter
|
||||
name = "Zippo Lighter"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/lighter
|
||||
cost = 2
|
||||
|
||||
/datum/gear/cigar
|
||||
/datum/gear/hands/cigar
|
||||
name = "Cigar"
|
||||
category = SLOT_HANDS
|
||||
path = /obj/item/clothing/mask/cigarette/cigar
|
||||
cost = 4 //smoking is bad mkay
|
||||
|
||||
@@ -1,146 +1,136 @@
|
||||
/datum/gear/baseball
|
||||
/datum/gear/head
|
||||
category = LOADOUT_CATEGORY_HEAD
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_GENERAL
|
||||
slot = SLOT_HEAD
|
||||
|
||||
/datum/gear/head/baseball
|
||||
name = "Ballcap"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/soft/mime
|
||||
|
||||
/datum/gear/beanie
|
||||
/datum/gear/head/beanie
|
||||
name = "Beanie"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/beanie
|
||||
|
||||
/datum/gear/beret
|
||||
/datum/gear/head/beret
|
||||
name = "Black beret"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/beret/black
|
||||
|
||||
/datum/gear/flatcap
|
||||
/datum/gear/head/flatcap
|
||||
name = "Flat cap"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/flatcap
|
||||
|
||||
/datum/gear/pirate
|
||||
/datum/gear/head/pirate
|
||||
name = "Pirate hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/pirate
|
||||
|
||||
/datum/gear/rice_hat
|
||||
/datum/gear/head/rice_hat
|
||||
name = "Rice hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/rice_hat
|
||||
|
||||
/datum/gear/ushanka
|
||||
name = "Ushanka"
|
||||
category = SLOT_HEAD
|
||||
/datum/gear/head/ushanka
|
||||
path = /obj/item/clothing/head/ushanka
|
||||
|
||||
/datum/gear/slime
|
||||
/datum/gear/head/slime
|
||||
name = "Slime hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/collectable/slime
|
||||
|
||||
/datum/gear/fedora
|
||||
/datum/gear/head/fedora
|
||||
name = "Fedora"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/fedora
|
||||
|
||||
/datum/gear/that
|
||||
/datum/gear/head/that
|
||||
name = "Top Hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/that
|
||||
|
||||
/datum/gear/maidband
|
||||
/datum/gear/head/maidband
|
||||
name = "Maid headband"
|
||||
category = SLOT_HEAD
|
||||
path= /obj/item/clothing/head/maid
|
||||
|
||||
/datum/gear/flakhelm
|
||||
/datum/gear/head/flakhelm
|
||||
name = "Flak Helmet"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/flakhelm
|
||||
cost = 2
|
||||
|
||||
/datum/gear/bunnyears
|
||||
/datum/gear/head/bunnyears
|
||||
name = "Bunny Ears"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/rabbitears
|
||||
|
||||
/datum/gear/mailmanhat
|
||||
/datum/gear/head/mailmanhat
|
||||
name = "Mailman's Hat"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/mailman
|
||||
|
||||
//trek fancy Hats!
|
||||
/datum/gear/trekcap
|
||||
/datum/gear/head/trekcap
|
||||
name = "Federation Officer's Cap (White)"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/caphat/formal/fedcover
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Captain","Head of Personnel")
|
||||
|
||||
/datum/gear/trekcapcap
|
||||
/datum/gear/head/trekcapcap
|
||||
name = "Federation Officer's Cap (Black)"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/caphat/formal/fedcover/black
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Captain","Head of Personnel")
|
||||
|
||||
/datum/gear/trekcapmedisci
|
||||
/datum/gear/head/trekcapmedisci
|
||||
name = "Federation Officer's Cap (Blue)"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/caphat/formal/fedcover/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekcapeng
|
||||
/datum/gear/head/trekcapeng
|
||||
name = "Federation Officer's Cap (Yellow)"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/caphat/formal/fedcover/eng
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/trekcapsec
|
||||
/datum/gear/head/trekcapsec
|
||||
name = "Federation Officer's Cap (Red)"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/caphat/formal/fedcover/sec
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
// orvilike "original" kepi
|
||||
/datum/gear/orvkepicom
|
||||
/datum/gear/head/orvkepicom
|
||||
name = "Federation Kepi, command"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/command
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Research Director", "Chief Medical Officer", "Quartermaster")
|
||||
|
||||
/datum/gear/orvkepiops
|
||||
/datum/gear/head/orvkepiops
|
||||
name = "Federation Kepi, ops/sec"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/engsec
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Engineering, Security and Cargo"
|
||||
restricted_roles = list("Chief Engineer", "Atmospheric Technician", "Station Engineer", "Warden", "Detective", "Security Officer", "Head of Security", "Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/orvkepimedsci
|
||||
/datum/gear/head/orvkepimedsci
|
||||
name = "Federation Kepi, medsci"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Virologist", "Paramedic", "Geneticist", "Research Director", "Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/orvkepisrv
|
||||
/datum/gear/head/orvkepisrv
|
||||
name = "Federation Kepi, service"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/service
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Service and Civilian, barring Clown, Mime and Lawyer"
|
||||
restricted_roles = list("Assistant", "Bartender", "Botanist", "Cook", "Curator", "Janitor", "Chaplain")
|
||||
|
||||
/datum/gear/orvkepiass
|
||||
/datum/gear/head/orvkepiass
|
||||
name = "Federation Kepi, assistant"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_roles = list("Assistant")
|
||||
|
||||
/*Commenting out Until next Christmas or made automatic
|
||||
@@ -156,35 +146,37 @@
|
||||
*/
|
||||
|
||||
//Cowboy Stuff
|
||||
/datum/gear/cowboyhat
|
||||
/datum/gear/head/cowboyhat
|
||||
name = "Cowboy Hat, Brown"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/cowboyhat
|
||||
|
||||
/datum/gear/cowboyhat/black
|
||||
/datum/gear/head/cowboyhat/black
|
||||
name = "Cowboy Hat, Black"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/cowboyhat/black
|
||||
|
||||
/datum/gear/cowboyhat/white
|
||||
/datum/gear/head/cowboyhat/white
|
||||
name = "Cowboy Hat, White"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/cowboyhat/white
|
||||
|
||||
/datum/gear/cowboyhat/pink
|
||||
/datum/gear/head/cowboyhat/pink
|
||||
name = "Cowboy Hat, Pink"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/cowboyhat/pink
|
||||
|
||||
/datum/gear/cowboyhat/sec
|
||||
/datum/gear/head/cowboyhat/sec
|
||||
name = "Cowboy Hat, Security"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/cowboyhat/sec
|
||||
subcategory = LOADOUT_SUBCATEGORY_HEAD_JOBS
|
||||
restricted_desc = "Security"
|
||||
restricted_roles = list("Warden","Detective","Security Officer","Head of Security")
|
||||
|
||||
// Misc
|
||||
/datum/gear/wkepi
|
||||
/datum/gear/head/wkepi
|
||||
name = "white kepi"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi
|
||||
|
||||
/datum/gear/head/widered
|
||||
name = "Wide red hat"
|
||||
path = /obj/item/clothing/head/widered
|
||||
|
||||
/datum/gear/head/kabuto
|
||||
name = "Kabuto helmet"
|
||||
path = /obj/item/clothing/head/kabuto
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
/datum/gear/balaclava
|
||||
/datum/gear/mask
|
||||
category = LOADOUT_CATEGORY_MASK
|
||||
slot = SLOT_WEAR_MASK
|
||||
|
||||
/datum/gear/mask/balaclava
|
||||
name = "Balaclava"
|
||||
category = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/balaclava
|
||||
|
||||
/datum/gear/moustache
|
||||
/datum/gear/mask/moustache
|
||||
name = "Fake moustache"
|
||||
category = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/fakemoustache
|
||||
|
||||
/datum/gear/joy
|
||||
/datum/gear/mask/joy
|
||||
name = "Joy mask"
|
||||
category = SLOT_WEAR_MASK
|
||||
path = /obj/item/clothing/mask/joy
|
||||
cost = 3
|
||||
|
||||
|
||||
@@ -1,99 +1,88 @@
|
||||
/datum/gear/bluetie
|
||||
/datum/gear/neck
|
||||
category = LOADOUT_CATEGORY_NECK
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_GENERAL
|
||||
slot = SLOT_NECK
|
||||
|
||||
/datum/gear/neck/bluetie
|
||||
name = "Blue tie"
|
||||
category = SLOT_NECK
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_TIE
|
||||
path = /obj/item/clothing/neck/tie/blue
|
||||
|
||||
/datum/gear/redtie
|
||||
/datum/gear/neck/redtie
|
||||
name = "Red tie"
|
||||
category = SLOT_NECK
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_TIE
|
||||
path = /obj/item/clothing/neck/tie/red
|
||||
|
||||
/datum/gear/blacktie
|
||||
/datum/gear/neck/blacktie
|
||||
name = "Black tie"
|
||||
category = SLOT_NECK
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_TIE
|
||||
path = /obj/item/clothing/neck/tie/black
|
||||
|
||||
/datum/gear/collar
|
||||
/datum/gear/neck/collar
|
||||
name = "Collar"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar
|
||||
|
||||
/datum/gear/leathercollar
|
||||
/datum/gear/neck/leathercollar
|
||||
name = "Leather collar"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar/leather
|
||||
|
||||
/datum/gear/choker
|
||||
/datum/gear/neck/choker
|
||||
name = "Choker"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/petcollar/choker
|
||||
|
||||
/datum/gear/scarf
|
||||
/datum/gear/neck/scarf
|
||||
name = "White scarf"
|
||||
category = SLOT_NECK
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_SCARVES
|
||||
path = /obj/item/clothing/neck/scarf
|
||||
|
||||
/datum/gear/blackscarf
|
||||
/datum/gear/neck/scarf/black
|
||||
name = "Black scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/black
|
||||
|
||||
/datum/gear/redscarf
|
||||
/datum/gear/neck/scarf/red
|
||||
name = "Red scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/red
|
||||
|
||||
/datum/gear/greenscarf
|
||||
/datum/gear/neck/scarf/green
|
||||
name = "Green scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/green
|
||||
|
||||
/datum/gear/darkbluescarf
|
||||
/datum/gear/neck/scarf/darkblue
|
||||
name = "Dark blue scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/darkblue
|
||||
|
||||
/datum/gear/purplescarf
|
||||
/datum/gear/neck/scarf/purple
|
||||
name = "Purple scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/purple
|
||||
|
||||
/datum/gear/yellowscarf
|
||||
/datum/gear/neck/scarf/yellow
|
||||
name = "Yellow scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/yellow
|
||||
|
||||
/datum/gear/orangescarf
|
||||
/datum/gear/neck/scarf/orange
|
||||
name = "Orange scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/orange
|
||||
|
||||
/datum/gear/cyanscarf
|
||||
/datum/gear/neck/scarf/cyan
|
||||
name = "Cyan scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/scarf/cyan
|
||||
|
||||
/datum/gear/stripedredscarf
|
||||
/datum/gear/neck/scarf/stripedred
|
||||
name = "Striped red scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/stripedredscarf
|
||||
|
||||
/datum/gear/stripedbluescarf
|
||||
/datum/gear/neck/scarf/stripedblue
|
||||
name = "Striped blue scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/stripedbluescarf
|
||||
|
||||
/datum/gear/stripedgreenscarf
|
||||
/datum/gear/neck/scarf/stripedgreen
|
||||
name = "Striped green scarf"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/stripedgreenscarf
|
||||
|
||||
/datum/gear/headphones
|
||||
/datum/gear/neck/headphones
|
||||
name = "Headphones"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/ears/headphones
|
||||
|
||||
/datum/gear/polycloak
|
||||
/datum/gear/neck/polycloak
|
||||
name = "Polychromatic Cloak"
|
||||
category = SLOT_NECK
|
||||
path = /obj/item/clothing/neck/cloak/polychromic
|
||||
|
||||
@@ -1,84 +1,71 @@
|
||||
/datum/gear/laceup
|
||||
/datum/gear/shoes
|
||||
category = LOADOUT_CATEGORY_SHOES
|
||||
slot = SLOT_SHOES
|
||||
|
||||
/datum/gear/shoes/laceup
|
||||
name = "Laceup shoes"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/laceup
|
||||
|
||||
/datum/gear/workboots
|
||||
/datum/gear/shoes/workboots
|
||||
name = "Work boots"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/workboots
|
||||
|
||||
/datum/gear/jackboots
|
||||
/datum/gear/shoes/jackboots
|
||||
name = "Jackboots"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/jackboots
|
||||
|
||||
/datum/gear/winterboots
|
||||
/datum/gear/shoes/winterboots
|
||||
name = "Winter boots"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/winterboots
|
||||
|
||||
/datum/gear/sandals
|
||||
/datum/gear/shoes/sandals
|
||||
name = "Sandals"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sandal
|
||||
|
||||
/datum/gear/blackshoes
|
||||
/datum/gear/shoes/blackshoes
|
||||
name = "Black shoes"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sneakers/black
|
||||
|
||||
/datum/gear/brownshoes
|
||||
/datum/gear/shoes/brownshoes
|
||||
name = "Brown shoes"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sneakers/brown
|
||||
|
||||
/datum/gear/whiteshoes
|
||||
/datum/gear/shoes/whiteshoes
|
||||
name = "White shoes"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/sneakers/white
|
||||
|
||||
/datum/gear/gildedcuffs
|
||||
/datum/gear/shoes/gildedcuffs
|
||||
name = "Gilded leg wraps"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/wraps
|
||||
|
||||
/datum/gear/silvercuffs
|
||||
/datum/gear/shoes/silvercuffs
|
||||
name = "Silver leg wraps"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/wraps/silver
|
||||
|
||||
/datum/gear/redcuffs
|
||||
/datum/gear/shoes/redcuffs
|
||||
name = "Red leg wraps"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/wraps/red
|
||||
|
||||
/datum/gear/bluecuffs
|
||||
/datum/gear/shoes/bluecuffs
|
||||
name = "Blue leg wraps"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/wraps/blue
|
||||
|
||||
/datum/gear/christmasbootsr
|
||||
/datum/gear/shoes/christmasbootsr
|
||||
name = "Red Christmas Boots"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/winterboots/christmasbootsr
|
||||
|
||||
/datum/gear/christmasbootsg
|
||||
/datum/gear/shoes/christmasbootsg
|
||||
name = "Green Christmas Boots"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/winterboots/christmasbootsg
|
||||
|
||||
/datum/gear/santaboots
|
||||
/datum/gear/shoes/santaboots
|
||||
name = "Santa Boots"
|
||||
category = SLOT_SHOES
|
||||
path= /obj/item/clothing/shoes/winterboots/santaboots
|
||||
|
||||
/datum/gear/cowboyboots
|
||||
/datum/gear/shoes/cowboyboots
|
||||
name = "Cowboy Boots, Brown"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/cowboyboots
|
||||
|
||||
/datum/gear/cowboyboots/black
|
||||
/datum/gear/shoes/cowboyboots/black
|
||||
name = "Cowboy Boots, Black"
|
||||
category = SLOT_SHOES
|
||||
path = /obj/item/clothing/shoes/cowboyboots/black
|
||||
path = /obj/item/clothing/shoes/cowboyboots/black
|
||||
|
||||
@@ -1,261 +1,250 @@
|
||||
/datum/gear/poncho
|
||||
/datum/gear/suit
|
||||
category = LOADOUT_CATEGORY_SUIT
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_GENERAL
|
||||
slot = SLOT_WEAR_SUIT
|
||||
|
||||
/datum/gear/suit/poncho
|
||||
name = "Poncho"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/poncho
|
||||
|
||||
/datum/gear/ponchogreen
|
||||
/datum/gear/suit/ponchogreen
|
||||
name = "Green poncho"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/poncho/green
|
||||
|
||||
/datum/gear/ponchored
|
||||
/datum/gear/suit/ponchored
|
||||
name = "Red poncho"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/poncho/red
|
||||
|
||||
/datum/gear/redhood
|
||||
/datum/gear/suit/redhood
|
||||
name = "Red cloak"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/cloak/david
|
||||
cost = 3
|
||||
|
||||
/datum/gear/jacketbomber
|
||||
/datum/gear/suit/jacketbomber
|
||||
name = "Bomber jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketflannelblack // all of these are reskins of bomber jackets but with the vibe to make you look like a true lumberjack
|
||||
/datum/gear/suit/jacketflannelblack // all of these are reskins of bomber jackets but with the vibe to make you look like a true lumberjack
|
||||
name = "Black flannel jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/flannel
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketflannelred
|
||||
/datum/gear/suit/jacketflannelred
|
||||
name = "Red flannel jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/flannel/red
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketflannelaqua
|
||||
/datum/gear/suit/jacketflannelaqua
|
||||
name = "Aqua flannel jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/flannel/aqua
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketflannelbrown
|
||||
/datum/gear/suit/jacketflannelbrown
|
||||
name = "Brown flannel jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/flannel/brown
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketleather
|
||||
/datum/gear/suit/jacketleather
|
||||
name = "Leather jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/leather
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/overcoatleather
|
||||
/datum/gear/suit/overcoatleather
|
||||
name = "Leather overcoat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/leather/overcoat
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketpuffer
|
||||
/datum/gear/suit/jacketpuffer
|
||||
name = "Puffer jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/puffer
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/vestpuffer
|
||||
/datum/gear/suit/vestpuffer
|
||||
name = "Puffer vest"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/puffer/vest
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketlettermanbrown
|
||||
/datum/gear/suit/jacketlettermanbrown
|
||||
name = "Brown letterman jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/letterman
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketlettermanred
|
||||
/datum/gear/suit/jacketlettermanred
|
||||
name = "Red letterman jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/letterman_red
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/jacketlettermanNT
|
||||
/datum/gear/suit/jacketlettermanNT
|
||||
name = "Nanotrasen letterman jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/letterman_nanotrasen
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/coat
|
||||
/datum/gear/suit/coat
|
||||
name = "Winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_COATS
|
||||
|
||||
/datum/gear/coat/aformal
|
||||
/datum/gear/suit/coat/aformal
|
||||
name = "Assistant's formal winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/aformal
|
||||
|
||||
/datum/gear/coat/runed
|
||||
/datum/gear/suit/coat/runed
|
||||
name = "Runed winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/narsie/fake
|
||||
|
||||
/datum/gear/coat/brass
|
||||
/datum/gear/suit/coat/brass
|
||||
name = "Brass winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/ratvar/fake
|
||||
|
||||
/datum/gear/coat/polycoat
|
||||
/datum/gear/suit/coat/polycoat
|
||||
name = "Polychromic winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/polychromic
|
||||
cost = 4 //too many people with neon green coats is hard on the eyes
|
||||
|
||||
/datum/gear/coat/med
|
||||
/datum/gear/suit/coat/med
|
||||
name = "Medical winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/medical
|
||||
restricted_roles = list("Chief Medical Officer", "Medical Doctor") // Reserve it to Medical Doctors and their boss, the Chief Medical Officer
|
||||
|
||||
/datum/gear/coat/paramedic
|
||||
/datum/gear/suit/coat/paramedic
|
||||
name = "Paramedic winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/paramedic
|
||||
restricted_roles = list("Chief Medical Officer", "Paramedic") // Reserve it to Paramedics and their boss, the Chief Medical Officer
|
||||
|
||||
/datum/gear/coat/robotics
|
||||
/datum/gear/suit/coat/robotics
|
||||
name = "Robotics winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/robotics
|
||||
restricted_roles = list("Research Director", "Roboticist")
|
||||
|
||||
/datum/gear/coat/sci
|
||||
/datum/gear/suit/coat/sci
|
||||
name = "Science winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/science
|
||||
restricted_roles = list("Research Director", "Scientist", "Roboticist") // Reserve it to the Science Departement
|
||||
|
||||
/datum/gear/coat/eng
|
||||
/datum/gear/suit/coat/eng
|
||||
name = "Engineering winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/engineering
|
||||
restricted_roles = list("Chief Engineer", "Station Engineer") // Reserve it to Station Engineers and their boss, the Chief Engineer
|
||||
|
||||
/datum/gear/coat/eng/atmos
|
||||
/datum/gear/suit/coat/eng/atmos
|
||||
name = "Atmospherics winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/engineering/atmos
|
||||
restricted_roles = list("Chief Engineer", "Atmospheric Technician") // Reserve it to Atmos Techs and their boss, the Chief Engineer
|
||||
|
||||
/datum/gear/coat/hydro
|
||||
/datum/gear/suit/coat/hydro
|
||||
name = "Hydroponics winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/hydro
|
||||
restricted_roles = list("Head of Personnel", "Botanist") // Reserve it to Botanists and their boss, the Head of Personnel
|
||||
|
||||
/datum/gear/coat/bar
|
||||
/datum/gear/suit/coat/bar
|
||||
name = "Bar winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/bar
|
||||
restricted_roles = list("Bartender") // Reserve it to Bartenders and not the Head of Personnel because he doesnt deserve to look as fancy as them
|
||||
|
||||
/datum/gear/coat/cargo
|
||||
/datum/gear/suit/coat/cargo
|
||||
name = "Cargo winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/cargo
|
||||
restricted_roles = list("Quartermaster", "Cargo Technician") // Reserve it to Cargo Techs and their boss, the Quartermaster
|
||||
|
||||
/datum/gear/coat/miner
|
||||
/datum/gear/suit/coat/miner
|
||||
name = "Mining winter coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/miner
|
||||
restricted_roles = list("Quartermaster", "Shaft Miner") // Reserve it to Miners and their boss, the Quartermaster
|
||||
|
||||
/datum/gear/militaryjacket
|
||||
/datum/gear/suit/militaryjacket
|
||||
name = "Military Jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/jacket/miljacket
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
|
||||
/datum/gear/ianshirt
|
||||
/datum/gear/suit/ianshirt
|
||||
name = "Ian Shirt"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/ianshirt
|
||||
|
||||
/datum/gear/flakjack
|
||||
/datum/gear/suit/flakjack
|
||||
name = "Flak Jacket"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/flakjack
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
|
||||
cost = 2
|
||||
|
||||
/datum/gear/trekds9_coat
|
||||
/datum/gear/suit/trekds9_coat
|
||||
name = "DS9 Overcoat (use uniform)"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/trek/ds9
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "All, barring Service and Civilian"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster",
|
||||
"Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Scientist", "Roboticist",
|
||||
"Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer",
|
||||
"Cargo Technician", "Shaft Miner") //everyone who actually deserves a job.
|
||||
//Federation jackets from movies
|
||||
/datum/gear/trekcmdcap
|
||||
/datum/gear/suit/trekcmdcap
|
||||
name = "Fed (movie) uniform, Black"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/fedcoat/capt
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_roles = list("Captain","Head of Personnel")
|
||||
|
||||
/datum/gear/trekcmdmov
|
||||
/datum/gear/suit/trekcmdmov
|
||||
name = "Fed (movie) uniform, Red"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/fedcoat
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Heads of Staff and Security"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster","Warden","Detective","Security Officer")
|
||||
|
||||
/datum/gear/trekmedscimov
|
||||
/datum/gear/suit/trekmedscimov
|
||||
name = "Fed (movie) uniform, Blue"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/fedcoat/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengmov
|
||||
/datum/gear/suit/trekengmov
|
||||
name = "Fed (movie) uniform, Yellow"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/fedcoat/eng
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Engineering and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/trekcmdcapmod
|
||||
/datum/gear/suit/trekcmdcapmod
|
||||
name = "Fed (Modern) uniform, White"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/modernfedcoat
|
||||
restricted_roles = list("Captain","Head of Personnel")
|
||||
|
||||
/datum/gear/trekcmdmod
|
||||
/datum/gear/suit/trekcmdmod
|
||||
name = "Fed (Modern) uniform, Red"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/modernfedcoat/sec
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Heads of Staff and Security"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster","Warden","Detective","Security Officer")
|
||||
|
||||
/datum/gear/trekmedscimod
|
||||
/datum/gear/suit/trekmedscimod
|
||||
name = "Fed (Modern) uniform, Blue"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/modernfedcoat/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengmod
|
||||
/datum/gear/suit/trekengmod
|
||||
name = "Fed (Modern) uniform, Yellow"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/storage/fluff/modernfedcoat/eng
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_JOBS
|
||||
restricted_desc = "Engineering and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/christmascoatr
|
||||
/datum/gear/suit/christmascoatr
|
||||
name = "Red Christmas Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/christmascoatr
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_COATS
|
||||
|
||||
/datum/gear/christmascoatg
|
||||
/datum/gear/suit/christmascoatg
|
||||
name = "Green Christmas Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/christmascoatg
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_COATS
|
||||
|
||||
/datum/gear/christmascoatrg
|
||||
/datum/gear/suit/christmascoatrg
|
||||
name = "Red and Green Christmas Coat"
|
||||
category = SLOT_WEAR_SUIT
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/christmascoatrg
|
||||
subcategory = LOADOUT_SUBCATEGORY_SUIT_COATS
|
||||
|
||||
/datum/gear/suit/samurai
|
||||
name = "Samurai outfit"
|
||||
path = /obj/item/clothing/suit/samurai
|
||||
|
||||
@@ -1,562 +1,542 @@
|
||||
/datum/gear/suitblack
|
||||
name = "Black suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/black
|
||||
/datum/gear/uniform
|
||||
category = LOADOUT_CATEGORY_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_GENERAL
|
||||
slot = SLOT_W_UNIFORM
|
||||
|
||||
/datum/gear/suitgreen
|
||||
/datum/gear/uniform/suit
|
||||
name = "Black suit"
|
||||
path = /obj/item/clothing/under/suit/black
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_SUITS
|
||||
|
||||
/datum/gear/uniform/suit/green
|
||||
name = "Green suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/green
|
||||
|
||||
/datum/gear/suitred
|
||||
/datum/gear/uniform/suit/red
|
||||
name = "Red suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/red
|
||||
|
||||
/datum/gear/suitcharcoal
|
||||
/datum/gear/uniform/suit/charcoal
|
||||
name = "Charcoal suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/charcoal
|
||||
|
||||
/datum/gear/suitnavy
|
||||
/datum/gear/uniform/suit/navy
|
||||
name = "Navy suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/navy
|
||||
|
||||
/datum/gear/suitburgundy
|
||||
/datum/gear/uniform/suit/burgundy
|
||||
name = "Burgundy suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/burgundy
|
||||
|
||||
/datum/gear/suittan
|
||||
/datum/gear/uniform/suit/tan
|
||||
name = "Tan suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/tan
|
||||
|
||||
/datum/gear/suitwhite
|
||||
/datum/gear/uniform/suit/white
|
||||
name = "White suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/suit/white
|
||||
|
||||
/datum/gear/assistantformal
|
||||
/datum/gear/uniform/assistantformal
|
||||
name = "Assistant's formal uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/assistantformal
|
||||
|
||||
/datum/gear/maidcostume
|
||||
/datum/gear/uniform/maidcostume
|
||||
name = "Maid costume"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/maid
|
||||
|
||||
/datum/gear/mailmanuniform
|
||||
/datum/gear/uniform/mailmanuniform
|
||||
name = "Mailman's jumpsuit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/mailman
|
||||
|
||||
/datum/gear/skirtblack
|
||||
/datum/gear/uniform/skirt
|
||||
name = "Black skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_SKIRTS
|
||||
|
||||
/datum/gear/skirtblue
|
||||
/datum/gear/uniform/skirt/blue
|
||||
name = "Blue skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/blue
|
||||
|
||||
/datum/gear/skirtred
|
||||
/datum/gear/uniform/skirt/red
|
||||
name = "Red skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/red
|
||||
|
||||
/datum/gear/skirtpurple
|
||||
/datum/gear/uniform/skirt/purple
|
||||
name = "Purple skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/purple
|
||||
|
||||
/datum/gear/skirtplaid
|
||||
/datum/gear/uniform/skirt/plaid
|
||||
name = "Plaid skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/plaid
|
||||
|
||||
/datum/gear/schoolgirlblue
|
||||
/datum/gear/uniform/schoolgirlblue
|
||||
name = "Blue Schoolgirl Uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/schoolgirl
|
||||
|
||||
/datum/gear/schoolgirlred
|
||||
/datum/gear/uniform/schoolgirlred
|
||||
name = "Red Schoolgirl Uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/schoolgirl/red
|
||||
|
||||
/datum/gear/schoolgirlgreen
|
||||
/datum/gear/uniform/schoolgirlgreen
|
||||
name = "Green Schoolgirl Uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/schoolgirl/green
|
||||
|
||||
/datum/gear/schoolgirlorange
|
||||
/datum/gear/uniform/schoolgirlorange
|
||||
name = "Orange Schoolgirl Uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/schoolgirl/orange
|
||||
|
||||
/datum/gear/stripeddress
|
||||
/datum/gear/uniform/dress
|
||||
name = "Striped Dress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/striped
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
|
||||
/datum/gear/sundresswhite
|
||||
/datum/gear/uniform/dress/sun/white
|
||||
name = "White Sundress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/sundress/white
|
||||
|
||||
/datum/gear/sundress
|
||||
/datum/gear/uniform/dress/sun
|
||||
name = "Sundress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/sundress
|
||||
|
||||
/datum/gear/greendress
|
||||
/datum/gear/uniform/dress/green
|
||||
name = "Green Dress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/green
|
||||
|
||||
/datum/gear/pinkdress
|
||||
/datum/gear/uniform/dress/pink
|
||||
name = "Pink Dress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/pink
|
||||
/datum/gear/flowerdress
|
||||
|
||||
/datum/gear/uniform/dress/orange
|
||||
name = "Flower Dress"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/flower
|
||||
|
||||
/datum/gear/sweptskirt
|
||||
/datum/gear/uniform/skirt/swept
|
||||
name = "Swept skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/swept
|
||||
|
||||
/datum/gear/croptop
|
||||
/datum/gear/uniform/croptop
|
||||
name = "Croptop"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/croptop
|
||||
|
||||
/datum/gear/yoga
|
||||
/datum/gear/uniform/pants
|
||||
name = "Yoga Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/yoga
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_PANTS
|
||||
|
||||
/datum/gear/kilt
|
||||
/datum/gear/uniform/kilt
|
||||
name = "Kilt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/kilt
|
||||
|
||||
/datum/gear/camoshorts
|
||||
/datum/gear/uniform/pants/camo
|
||||
name = "Camo Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/camo
|
||||
|
||||
/datum/gear/athleticshorts
|
||||
/datum/gear/uniform/shorts
|
||||
name = "Athletic Shorts"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/shorts/red
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_SHORTS
|
||||
|
||||
/datum/gear/bjeans
|
||||
/datum/gear/uniform/pants/bjeans
|
||||
name = "Black Jeans"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/blackjeans
|
||||
|
||||
/datum/gear/cjeans
|
||||
/datum/gear/uniform/pants/cjeans
|
||||
name = "Classic Jeans"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/classicjeans
|
||||
|
||||
/datum/gear/khaki
|
||||
/datum/gear/uniform/pants/khaki
|
||||
name = "Khaki Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/khaki
|
||||
|
||||
/datum/gear/wpants
|
||||
/datum/gear/uniform/pants/white
|
||||
name = "White Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/white
|
||||
|
||||
/datum/gear/rpants
|
||||
/datum/gear/uniform/pants/red
|
||||
name = "Red Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/red
|
||||
|
||||
/datum/gear/tpants
|
||||
/datum/gear/uniform/pants/tan
|
||||
name = "Tan Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/tan
|
||||
|
||||
/datum/gear/trpants
|
||||
/datum/gear/uniform/pants/track
|
||||
name = "Track Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/track
|
||||
|
||||
/datum/gear/rippedjeans
|
||||
/datum/gear/uniform/pants/ripped
|
||||
name = "Ripped Jeans"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/jeanripped
|
||||
|
||||
/datum/gear/jeanshort
|
||||
/datum/gear/uniform/shorts/jean
|
||||
name = "Jean Shorts"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/jeanshort
|
||||
|
||||
/datum/gear/denimskirt
|
||||
/datum/gear/uniform/skirt/denim
|
||||
name = "Denim Skirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/denimskirt
|
||||
|
||||
/datum/gear/yoga
|
||||
name = "Yoga Pants"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/pants/yoga
|
||||
|
||||
// Pantsless Sweaters
|
||||
|
||||
/datum/gear/turtleneck
|
||||
/datum/gear/uniform/turtleneck
|
||||
name = "Tactitool Turtleneck"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/syndicate/cosmetic
|
||||
|
||||
/datum/gear/creamsweater
|
||||
/datum/gear/uniform/sweater
|
||||
name = "Cream Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_SWEATERS
|
||||
|
||||
/datum/gear/blacksweater
|
||||
/datum/gear/uniform/sweater/black
|
||||
name = "Black Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/black
|
||||
|
||||
/datum/gear/purpsweater
|
||||
/datum/gear/uniform/sweater/purple
|
||||
name = "Purple Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/purple
|
||||
|
||||
/datum/gear/greensweater
|
||||
/datum/gear/uniform/sweater/green
|
||||
name = "Green Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/green
|
||||
|
||||
/datum/gear/redsweater
|
||||
/datum/gear/uniform/sweater/red
|
||||
name = "Red Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/red
|
||||
|
||||
/datum/gear/bluesweater
|
||||
/datum/gear/uniform/sweater/blue
|
||||
name = "Navy Commando Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/sweater/blue
|
||||
|
||||
/datum/gear/keyholesweater
|
||||
/datum/gear/uniform/sweater/keyhole
|
||||
name = "Keyhole Sweater"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/keyholesweater
|
||||
|
||||
/datum/gear/polyjump
|
||||
/datum/gear/uniform/polyjump
|
||||
name = "Polychromic Jumpsuit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/polyjumpsuit
|
||||
cost = 2
|
||||
|
||||
/datum/gear/polyskirt
|
||||
|
||||
/datum/gear/uniform/skirt/poly
|
||||
name = "Polychromic Jumpskirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/polychromic
|
||||
cost = 2
|
||||
|
||||
/datum/gear/polysuit
|
||||
/datum/gear/uniform/suit/poly
|
||||
name = "Polychromic Button-up Shirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/poly_shirt
|
||||
cost = 3
|
||||
|
||||
/datum/gear/polypleated
|
||||
|
||||
/datum/gear/uniform/skirt/poly/pleated
|
||||
name = "Polychromic Pleated Sweaterskirt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/dress/skirt/polychromic/pleated
|
||||
cost = 3
|
||||
|
||||
/datum/gear/polykilt
|
||||
/datum/gear/uniform/polykilt
|
||||
name = "Polychromic Kilt"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/kilt/polychromic
|
||||
cost = 3
|
||||
|
||||
/datum/gear/polyshorts
|
||||
/datum/gear/uniform/shorts/poly
|
||||
name = "Polychromic Shorts"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/polyshorts
|
||||
cost = 3
|
||||
|
||||
/datum/gear/polyshortpants
|
||||
/datum/gear/uniform/shorts/poly/athletic
|
||||
name = "Polychromic Athletic Shorts"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/shorts/polychromic
|
||||
cost = 2
|
||||
|
||||
// Trekie things
|
||||
//TOS
|
||||
/datum/gear/trekcmdtos
|
||||
/datum/gear/uniform/trekcmdtos
|
||||
name = "TOS uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster")
|
||||
|
||||
/datum/gear/trekmedscitos
|
||||
/datum/gear/uniform/trekmedscitos
|
||||
name = "TOS uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengtos
|
||||
/datum/gear/uniform/trekengtos
|
||||
name = "TOS uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
//TNG
|
||||
/datum/gear/trekcmdtng
|
||||
/datum/gear/uniform/trekcmdtng
|
||||
name = "TNG uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/next
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster")
|
||||
|
||||
/datum/gear/trekmedscitng
|
||||
/datum/gear/uniform/trekmedscitng
|
||||
name = "TNG uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci/next
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengtng
|
||||
/datum/gear/uniform/trekengtng
|
||||
name = "TNG uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec/next
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
//VOY
|
||||
/datum/gear/trekcmdvoy
|
||||
/datum/gear/uniform/trekcmdvoy
|
||||
name = "VOY uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/voy
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster")
|
||||
|
||||
/datum/gear/trekmedscivoy
|
||||
/datum/gear/uniform/trekmedscivoy
|
||||
name = "VOY uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci/voy
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengvoy
|
||||
/datum/gear/uniform/trekengvoy
|
||||
name = "VOY uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec/voy
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
//DS9
|
||||
/datum/gear/trekcmdds9
|
||||
/datum/gear/uniform/trekcmdds9
|
||||
name = "DS9 uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/ds9
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster")
|
||||
|
||||
/datum/gear/trekmedscids9
|
||||
/datum/gear/uniform/trekmedscids9
|
||||
name = "DS9 uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci/ds9
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengds9
|
||||
/datum/gear/uniform/trekengds9
|
||||
name = "DS9 uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec/ds9
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
//ENT
|
||||
/datum/gear/trekcmdent
|
||||
/datum/gear/uniform/trekcmdent
|
||||
name = "ENT uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/ent
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster")
|
||||
|
||||
/datum/gear/trekmedscient
|
||||
/datum/gear/uniform/trekmedscient
|
||||
name = "ENT uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci/ent
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/trekengent
|
||||
/datum/gear/uniform/trekengent
|
||||
name = "ENT uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec/ent
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
//TheMotionPicture
|
||||
/datum/gear/trekfedutil
|
||||
/datum/gear/uniform/trekfedutil
|
||||
name = "TMP uniform"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/fedutil
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "All, barring Service and Civilian"
|
||||
restricted_roles = list("Head of Security","Captain","Head of Personnel","Chief Engineer","Research Director","Chief Medical Officer","Quartermaster",
|
||||
"Medical Doctor","Chemist","Virologist","Paramedic","Geneticist","Scientist", "Roboticist",
|
||||
"Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer",
|
||||
"Cargo Technician", "Shaft Miner")
|
||||
|
||||
/datum/gear/trekfedtrainee
|
||||
/datum/gear/uniform/trekfedtrainee
|
||||
name = "TMP uniform, trainee"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/fedutil/trainee
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Assistant", "Janitor", "Cargo Technician")
|
||||
|
||||
/datum/gear/trekfedservice
|
||||
/datum/gear/uniform/trekfedservice
|
||||
name = "TMP uniform, service"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/fedutil/service
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Service and Civilian, barring Clown, Mime and Lawyer"
|
||||
restricted_roles = list("Assistant", "Bartender", "Botanist", "Cook", "Curator", "Janitor", "Chaplain")
|
||||
|
||||
//Orvilike
|
||||
/datum/gear/orvcmd
|
||||
/datum/gear/uniform/orvcmd
|
||||
name = "ORV uniform, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/orv
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Research Director", "Chief Medical Officer", "Quartermaster")
|
||||
|
||||
/datum/gear/orvcmd_capt
|
||||
/datum/gear/uniform/orvcmd_capt
|
||||
name = "ORV uniform, capt"
|
||||
category = SLOT_W_UNIFORM
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
path = /obj/item/clothing/under/trek/command/orv/captain
|
||||
restricted_roles = list("Captain")
|
||||
|
||||
/datum/gear/orvmedsci
|
||||
/datum/gear/uniform/orvmedsci
|
||||
name = "ORV uniform, med/sci"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/medsci/orv
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Virologist", "Paramedic", "Geneticist", "Research Director", "Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/orvcmd_medsci
|
||||
/datum/gear/uniform/orvcmd_medsci
|
||||
name = "ORV uniform, med/sci, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/orv/medsci
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Chief Medical Officer", "Research Director")
|
||||
|
||||
/datum/gear/orvops
|
||||
/datum/gear/uniform/orvops
|
||||
name = "ORV uniform, ops/sec"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/engsec/orv
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering, Security and Cargo"
|
||||
restricted_roles = list("Chief Engineer", "Atmospheric Technician", "Station Engineer", "Warden", "Detective", "Security Officer", "Head of Security", "Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/orvcmd_ops
|
||||
/datum/gear/uniform/orvcmd_ops
|
||||
name = "ORV uniform, ops/sec, cmd"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/command/orv/engsec
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Chief Engineer", "Head of Security")
|
||||
|
||||
/datum/gear/orvass
|
||||
/datum/gear/uniform/orvass
|
||||
name = "ORV uniform, assistant"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/orv
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Assistant")
|
||||
|
||||
/datum/gear/orvsrv
|
||||
/datum/gear/uniform/orvsrv
|
||||
name = "ORV uniform, service"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/trek/orv/service
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Assistant", "Bartender", "Botanist", "Cook", "Curator", "Janitor", "Chaplain")
|
||||
restricted_desc = "Service and Civilian, barring Clown, Mime and Lawyer"
|
||||
|
||||
//Memes
|
||||
/datum/gear/gear_harnesses
|
||||
/datum/gear/uniform/gear_harnesses
|
||||
name = "Gear Harness"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/gear_harness
|
||||
|
||||
//Christmas
|
||||
/*Commenting out Until next Christmas or made automatic
|
||||
/datum/gear/christmasmaler
|
||||
/datum/gear/uniform/christmasmaler
|
||||
name = "Red Masculine Christmas Suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/christmas
|
||||
|
||||
/datum/gear/christmasmaleg
|
||||
/datum/gear/uniform/christmasmaleg
|
||||
name = "Green Masculine Christmas Suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/christmas/green
|
||||
|
||||
/datum/gear/christmasfemaler
|
||||
/datum/gear/uniform/christmasfemaler
|
||||
name = "Red Feminine Christmas Suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/christmas/croptop
|
||||
|
||||
/datum/gear/christmasfemaleg
|
||||
/datum/gear/uniform/christmasfemaleg
|
||||
name = "Green Feminine Christmas Suit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/christmas/croptop/green
|
||||
|
||||
/datum/gear/pinkstripper
|
||||
/datum/gear/uniform/pinkstripper
|
||||
name = "Pink stripper outfit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/stripper
|
||||
cost = 3
|
||||
*/
|
||||
|
||||
/datum/gear/greenstripper
|
||||
/datum/gear/uniform/greenstripper
|
||||
name = "Green stripper outfit"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/misc/stripper/green
|
||||
cost = 3
|
||||
|
||||
/datum/gear/qipao
|
||||
/datum/gear/uniform/qipao
|
||||
name = "Qipao, Black"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/qipao
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/qipao/white
|
||||
/datum/gear/uniform/qipao/white
|
||||
name = "Qipao, White"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/qipao/white
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/qipao/red
|
||||
/datum/gear/uniform/qipao/red
|
||||
name = "Qipao, Red"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/qipao/red
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/cheongsam
|
||||
/datum/gear/uniform/cheongsam
|
||||
name = "Cheongsam, Black"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/cheongsam
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/cheongsam/white
|
||||
/datum/gear/uniform/cheongsam/white
|
||||
name = "Cheongsam, White"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/cheongsam/white
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/cheongsam/red
|
||||
/datum/gear/uniform/cheongsam/red
|
||||
name = "Cheongsam, Red"
|
||||
category = SLOT_W_UNIFORM
|
||||
path = /obj/item/clothing/under/costume/cheongsam/red
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_DRESSES
|
||||
cost = 3
|
||||
|
||||
/datum/gear/uniform/dress/black
|
||||
name = "Black dress"
|
||||
path = /obj/item/clothing/under/misc/black_dress
|
||||
|
||||
/datum/gear/uniform/skirt/pinktutu
|
||||
name = "Pink tutu"
|
||||
path = /obj/item/clothing/under/misc/pinktutu
|
||||
|
||||
/datum/gear/uniform/bathrobe
|
||||
name = "Bathrobe"
|
||||
path = /obj/item/clothing/under/misc/bathrobe
|
||||
|
||||
/datum/gear/uniform/kimono
|
||||
name = "Kimono"
|
||||
path = /obj/item/clothing/under/costume/kimono
|
||||
|
||||
/datum/gear/uniform/kimono/black
|
||||
name = "Black kimono"
|
||||
path = /obj/item/clothing/under/costume/kimono/black
|
||||
|
||||
/datum/gear/uniform/kimono/kamishimo
|
||||
name = "Kamishimo"
|
||||
path = /obj/item/clothing/under/costume/kimono/kamishimo
|
||||
|
||||
/datum/gear/uniform/kimono/fancy
|
||||
name = "Fancy kimono"
|
||||
path = /obj/item/clothing/under/costume/kimono/fancy
|
||||
|
||||
/datum/gear/uniform/kimono/sakura
|
||||
name = "Sakura kimono"
|
||||
path = /obj/item/clothing/under/costume/kimono/sakura
|
||||
|
||||
@@ -31,7 +31,7 @@ Flood the station's powernet with as much electricity as you can.
|
||||
Replace all the floor tiles with wood, carpeting, grass or bling.
|
||||
You must escape the station! Get the shuttle called!
|
||||
Don't allow anyone to be cloned.
|
||||
The oxygen is killing them all and they don't even know it. Make sure no oxygen is on the station.
|
||||
Their cold, mindless gaze pierce your soul. They see your every movements, it's merely a question of time before they try to control us further. Deactivate all cameras!
|
||||
Your body must be improved. Ingest as many drugs as you can.
|
||||
You are hungry. Eat as much food as you can find.
|
||||
You see you see what they cannot you see the open door you seeE you SEeEe you SEe yOU seEee SHOW THEM ALL
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
#include "code\__DEFINES\language.dm"
|
||||
#include "code\__DEFINES\layers_planes.dm"
|
||||
#include "code\__DEFINES\lighting.dm"
|
||||
#include "code\__DEFINES\loadout.dm"
|
||||
#include "code\__DEFINES\logging.dm"
|
||||
#include "code\__DEFINES\machines.dm"
|
||||
#include "code\__DEFINES\maps.dm"
|
||||
@@ -201,6 +202,7 @@
|
||||
#include "code\_globalvars\lists\client.dm"
|
||||
#include "code\_globalvars\lists\flavor_misc.dm"
|
||||
#include "code\_globalvars\lists\keybindings.dm"
|
||||
#include "code\_globalvars\lists\loadout_categories.dm"
|
||||
#include "code\_globalvars\lists\maintenance_loot.dm"
|
||||
#include "code\_globalvars\lists\mapping.dm"
|
||||
#include "code\_globalvars\lists\medals.dm"
|
||||
@@ -1525,6 +1527,7 @@
|
||||
#include "code\modules\antagonists\clockcult\clock_effects\servant_blocker.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_effects\spatial_gateway.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\clock_powerdrain.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\clock_rites.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\component_helpers.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\fabrication_helpers.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\hierophant_network.dm"
|
||||
@@ -1532,6 +1535,7 @@
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\ratvarian_language.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\scripture_checks.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_helpers\slab_abilities.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_augments.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_components.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clockwork_armor.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clockwork_slab.dm"
|
||||
@@ -1543,6 +1547,7 @@
|
||||
#include "code\modules\antagonists\clockcult\clock_items\soul_vessel.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\wraith_spectacles.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\_call_weapon.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\brass_claw.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\ratvarian_shield.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_items\clock_weapons\ratvarian_spear.dm"
|
||||
#include "code\modules\antagonists\clockcult\clock_mobs\_eminence.dm"
|
||||
|
||||