mirror of
https://github.com/quotefox/Hyper-Station-13.git
synced 2026-07-18 11:12:26 +01:00
Merge branch 'Safety-Tether' of https://github.com/haha26315/Hyper-Station-13 into Safety-Tether
This commit is contained in:
@@ -8536,6 +8536,7 @@
|
||||
dir = 1;
|
||||
name = "air scrubber"
|
||||
},
|
||||
/obj/machinery/iv_drip,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/patients_rooms/room_b)
|
||||
"bfl" = (
|
||||
@@ -9024,12 +9025,17 @@
|
||||
},
|
||||
/area/medical/virology)
|
||||
"bje" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/cyan/hidden{
|
||||
dir = 4;
|
||||
name = "air supply pipe"
|
||||
/obj/machinery/door/airlock{
|
||||
dir = 1;
|
||||
name = "Kitchen";
|
||||
req_access_txt = "28"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/turf/open/floor/plasteel{
|
||||
dir = 8;
|
||||
icon_plating = "floor";
|
||||
icon_state = "floor_whole_alt"
|
||||
},
|
||||
/area/crew_quarters/kitchen)
|
||||
"bjh" = (
|
||||
/obj/effect/turf_decal/loading_area{
|
||||
dir = 6;
|
||||
@@ -10007,7 +10013,6 @@
|
||||
icon_state = "steel_panel";
|
||||
name = "steel pannel"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/effect/landmark/start/cook,
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
@@ -17908,6 +17913,7 @@
|
||||
dir = 1;
|
||||
name = "air scrubber"
|
||||
},
|
||||
/obj/machinery/iv_drip,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/patients_rooms/room_a)
|
||||
"cMF" = (
|
||||
@@ -21196,6 +21202,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/effect/landmark/start/prisoner,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/security/prison)
|
||||
"drb" = (
|
||||
@@ -25558,9 +25565,6 @@
|
||||
/turf/open/floor/plating/layenia,
|
||||
/area/layenia)
|
||||
"egH" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer3{
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
dir = 9;
|
||||
name = "scrubbers pipe"
|
||||
@@ -25571,6 +25575,10 @@
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 9
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer3{
|
||||
dir = 9;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
"egI" = (
|
||||
@@ -28034,15 +28042,14 @@
|
||||
},
|
||||
/area/engine/atmos)
|
||||
"eAc" = (
|
||||
/obj/machinery/vending/cola/random,
|
||||
/obj/machinery/light{
|
||||
dir = 1;
|
||||
pixel_y = 16
|
||||
},
|
||||
/obj/structure/sign/directions/evac{
|
||||
dir = 4;
|
||||
pixel_y = 24
|
||||
},
|
||||
/obj/machinery/light{
|
||||
dir = 1;
|
||||
pixel_y = 16
|
||||
},
|
||||
/turf/open/floor/plasteel/dark{
|
||||
dir = 1;
|
||||
icon_state = "darkfull_plate"
|
||||
@@ -33572,8 +33579,8 @@
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 10
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer1{
|
||||
dir = 4;
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
dir = 9;
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/turf/open/floor/plasteel{
|
||||
@@ -36366,10 +36373,6 @@
|
||||
/obj/effect/turf_decal/weather/grass/line{
|
||||
dir = 6
|
||||
},
|
||||
/obj/item/toy/plush/bird/kenk{
|
||||
pixel_x = -8;
|
||||
pixel_y = -13
|
||||
},
|
||||
/turf/open/water/jungle,
|
||||
/area/crew_quarters/dorms/upper)
|
||||
"fOH" = (
|
||||
@@ -67018,9 +67021,6 @@
|
||||
},
|
||||
/area/crew_quarters/dorms/upper)
|
||||
"ksc" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/holopad,
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
@@ -70713,14 +70713,6 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/hydroponics)
|
||||
"kVZ" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
dir = 4;
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer3{
|
||||
dir = 8;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/turf/open/floor/plasteel/stairs/medium{
|
||||
dir = 4
|
||||
},
|
||||
@@ -70753,19 +70745,16 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/security/range)
|
||||
"kWi" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer3{
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
dir = 9;
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 6
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer3{
|
||||
dir = 5;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/turf/open/floor/plasteel{
|
||||
icon_state = "floor_plate"
|
||||
},
|
||||
@@ -75356,6 +75345,9 @@
|
||||
dir = 10;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"lJs" = (
|
||||
@@ -75363,6 +75355,10 @@
|
||||
dir = 4;
|
||||
pixel_x = 7
|
||||
},
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"lJv" = (
|
||||
@@ -77441,9 +77437,6 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer3{
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 10
|
||||
},
|
||||
@@ -78832,14 +78825,14 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/maintenance/starboard/central/upper)
|
||||
"mmz" = (
|
||||
/obj/effect/turf_decal/loading_area{
|
||||
dir = 4;
|
||||
icon_state = "steel_panel";
|
||||
name = "steel pannel"
|
||||
/obj/machinery/light{
|
||||
pixel_y = -1
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
/obj/machinery/vending/cola/random,
|
||||
/turf/open/floor/plasteel/dark{
|
||||
icon_state = "darkfull_plate"
|
||||
},
|
||||
/area/hallway/primary/port)
|
||||
"mmH" = (
|
||||
/obj/structure/cable{
|
||||
icon_state = "1-8"
|
||||
@@ -93996,6 +93989,7 @@
|
||||
icon_state = "drain";
|
||||
name = "drain"
|
||||
},
|
||||
/obj/machinery/iv_drip,
|
||||
/turf/open/floor/plasteel/freezer,
|
||||
/area/medical/surgery)
|
||||
"ovb" = (
|
||||
@@ -111737,11 +111731,14 @@
|
||||
/turf/open/floor/plating/snowed,
|
||||
/area/layenia)
|
||||
"qQm" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 5
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 6
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
/obj/machinery/iv_drip,
|
||||
/turf/open/floor/plasteel/white{
|
||||
icon_state = "plaswhite_plate"
|
||||
},
|
||||
/area/medical/medbay/central)
|
||||
"qQw" = (
|
||||
/obj/item/screwdriver{
|
||||
pixel_y = 10
|
||||
@@ -116699,10 +116696,12 @@
|
||||
dir = 5;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"rxd" = (
|
||||
@@ -128704,6 +128703,7 @@
|
||||
dir = 1;
|
||||
pixel_y = 16
|
||||
},
|
||||
/obj/item/toy/plush/bird/kenk,
|
||||
/turf/open/transparent/openspace/layenia,
|
||||
/area/crew_quarters/theatre)
|
||||
"tew" = (
|
||||
@@ -130246,6 +130246,9 @@
|
||||
dir = 8;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"tqv" = (
|
||||
@@ -133292,14 +133295,10 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/crew_quarters/heads/cmo)
|
||||
"tKC" = (
|
||||
/obj/machinery/disposal/bin,
|
||||
/obj/machinery/light{
|
||||
dir = 4;
|
||||
pixel_x = 7
|
||||
},
|
||||
/obj/structure/disposalpipe/trunk{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"tKH" = (
|
||||
@@ -139639,11 +139638,14 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/crew_quarters/bar/cafe/storage)
|
||||
"uEK" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
/obj/structure/closet/crate,
|
||||
/obj/effect/spawner/lootdrop/maintenance,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"uEM" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/machinery/chem_dispenser/drinks/beer,
|
||||
@@ -139662,9 +139664,6 @@
|
||||
c_tag = "Kitchen South";
|
||||
dir = 1
|
||||
},
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/crew_quarters/kitchen)
|
||||
"uET" = (
|
||||
@@ -141211,7 +141210,7 @@
|
||||
name = "kitchen shutters"
|
||||
},
|
||||
/obj/item/storage/fancy/donut_box{
|
||||
pixel_y = 8
|
||||
pixel_y = 1
|
||||
},
|
||||
/turf/open/floor/plasteel/dark{
|
||||
icon_state = "darkfull_whole_alt"
|
||||
@@ -142944,11 +142943,11 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/port/aft)
|
||||
"vdk" = (
|
||||
/obj/item/twohanded/required/kirbyplants/random,
|
||||
/obj/machinery/light{
|
||||
dir = 1;
|
||||
pixel_y = 16
|
||||
},
|
||||
/obj/machinery/vending/snack/random,
|
||||
/turf/open/floor/plasteel/dark{
|
||||
dir = 1;
|
||||
icon_state = "darkfull_plate"
|
||||
@@ -143162,9 +143161,6 @@
|
||||
/obj/structure/cable{
|
||||
icon_state = "2-8"
|
||||
},
|
||||
/obj/structure/cable{
|
||||
icon_state = "0-8"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 10
|
||||
},
|
||||
@@ -143869,7 +143865,6 @@
|
||||
icon_state = "steel_panel";
|
||||
name = "steel pannel"
|
||||
},
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
dir = 9;
|
||||
name = "scrubbers pipe"
|
||||
@@ -146360,11 +146355,13 @@
|
||||
},
|
||||
/area/medical/medbay/central)
|
||||
"vCo" = (
|
||||
/obj/machinery/atmospherics/pipe/layer_manifold{
|
||||
dir = 4
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
},
|
||||
/turf/closed/wall,
|
||||
/area/maintenance/aft)
|
||||
/obj/item/cigbutt,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vCt" = (
|
||||
/obj/machinery/camera{
|
||||
c_tag = "HOP Line";
|
||||
@@ -146517,29 +146514,26 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/science/misc_lab)
|
||||
"vDh" = (
|
||||
/obj/structure/chair/stool,
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 9
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/atmospherics/components/binary/pump{
|
||||
/obj/structure/railing{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/trash_pile,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vDp" = (
|
||||
/obj/item/wrench,
|
||||
/obj/machinery/light/small{
|
||||
dir = 1;
|
||||
pixel_y = 16
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 1
|
||||
/obj/structure/chair/foldingchair{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold/cyan/visible{
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vDq" = (
|
||||
/obj/machinery/atmospherics/components/unary/thermomachine/heater{
|
||||
dir = 4
|
||||
@@ -146582,14 +146576,10 @@
|
||||
},
|
||||
/area/security/range)
|
||||
"vDx" = (
|
||||
/obj/machinery/atmospherics/components/unary/tank/air{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/item/trash/carbonnanotube_noodles,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vDD" = (
|
||||
/obj/machinery/button/door{
|
||||
id = "DormF";
|
||||
@@ -147171,17 +147161,14 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/fore/secondary)
|
||||
"vHh" = (
|
||||
/obj/machinery/door/airlock/atmos/abandoned{
|
||||
dir = 4;
|
||||
name = "Atmospherics Maintenance";
|
||||
req_access_txt = "12;24"
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/cyan/hidden{
|
||||
dir = 4;
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/railing,
|
||||
/obj/effect/spawner/lootdrop/maintenance,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vHi" = (
|
||||
/obj/structure/table,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -147196,14 +147183,11 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/security/brig/upper)
|
||||
"vHk" = (
|
||||
/obj/machinery/atmospherics/components/binary/valve/on{
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 10
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing,
|
||||
/obj/item/cigbutt,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vHm" = (
|
||||
/obj/machinery/porta_turret/ai{
|
||||
dir = 4
|
||||
@@ -147217,13 +147201,17 @@
|
||||
},
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
"vHq" = (
|
||||
/obj/machinery/meter,
|
||||
/obj/machinery/atmospherics/pipe/manifold/cyan/hidden{
|
||||
name = "air supply pipe"
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/stripes/line,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/rods/fifty,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vHA" = (
|
||||
/obj/effect/turf_decal/weather/grass/line{
|
||||
dir = 1
|
||||
@@ -147258,15 +147246,14 @@
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/medbay/central)
|
||||
"vHK" = (
|
||||
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
|
||||
dir = 8
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/portable_atmospherics/canister/air,
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 6
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/table,
|
||||
/obj/effect/spawner/lootdrop/maintenance,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vHL" = (
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 4
|
||||
@@ -147582,11 +147569,17 @@
|
||||
/turf/open/floor/plasteel/dark/corner,
|
||||
/area/engine/atmos)
|
||||
"vKi" = (
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/aft)
|
||||
/obj/structure/railing,
|
||||
/obj/structure/closet/crate{
|
||||
icon_state = "crateopen"
|
||||
},
|
||||
/obj/effect/spawner/lootdrop/maintenance,
|
||||
/turf/open/chasm/cloud,
|
||||
/area/layenia/cloudlayer)
|
||||
"vKn" = (
|
||||
/obj/structure/railing{
|
||||
dir = 1
|
||||
@@ -160649,6 +160642,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/effect/landmark/start/prisoner,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/security/prison)
|
||||
"xDB" = (
|
||||
@@ -162209,6 +162203,9 @@
|
||||
icon_state = "steel_panel";
|
||||
name = "steel pannel"
|
||||
},
|
||||
/obj/structure/railing/handrail{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/floor/plasteel/stairs/medium{
|
||||
dir = 4;
|
||||
icon_state = "stairs_darkfull_m";
|
||||
@@ -165215,9 +165212,6 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer3{
|
||||
name = "air supply pipe"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer1{
|
||||
name = "scrubbers pipe"
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 10
|
||||
},
|
||||
@@ -195376,7 +195370,7 @@ vdk
|
||||
eYf
|
||||
dMk
|
||||
vId
|
||||
vTh
|
||||
mmz
|
||||
iMm
|
||||
npB
|
||||
nvs
|
||||
@@ -195626,8 +195620,8 @@ xCg
|
||||
rwT
|
||||
vjA
|
||||
bqN
|
||||
mmz
|
||||
qQm
|
||||
nPL
|
||||
tnY
|
||||
uRJ
|
||||
azl
|
||||
cJP
|
||||
@@ -195884,7 +195878,7 @@ tqo
|
||||
mgf
|
||||
mfE
|
||||
mng
|
||||
uEK
|
||||
tnY
|
||||
nco
|
||||
azl
|
||||
voZ
|
||||
@@ -196398,7 +196392,7 @@ tqo
|
||||
wwe
|
||||
mhh
|
||||
mng
|
||||
uEK
|
||||
tnY
|
||||
nco
|
||||
azl
|
||||
hLd
|
||||
@@ -196657,7 +196651,7 @@ mhn
|
||||
lBZ
|
||||
uES
|
||||
vbt
|
||||
moI
|
||||
eAc
|
||||
xJP
|
||||
mPC
|
||||
vIq
|
||||
@@ -196913,8 +196907,8 @@ mhD
|
||||
mhD
|
||||
wEM
|
||||
tKC
|
||||
vbt
|
||||
eAc
|
||||
bje
|
||||
nrv
|
||||
hLd
|
||||
aSp
|
||||
nAY
|
||||
@@ -199540,7 +199534,7 @@ mAk
|
||||
nlk
|
||||
qKP
|
||||
lUW
|
||||
vKi
|
||||
lUW
|
||||
xKx
|
||||
gPq
|
||||
foH
|
||||
@@ -200053,7 +200047,7 @@ vfc
|
||||
voo
|
||||
hxU
|
||||
egH
|
||||
bje
|
||||
lUW
|
||||
vKt
|
||||
xKx
|
||||
gPq
|
||||
@@ -200308,9 +200302,9 @@ rCc
|
||||
xPL
|
||||
lUW
|
||||
qKP
|
||||
nlk
|
||||
vCo
|
||||
vHh
|
||||
xGb
|
||||
xGb
|
||||
xGb
|
||||
xGb
|
||||
xGb
|
||||
afQ
|
||||
@@ -200565,11 +200559,11 @@ hJu
|
||||
xPL
|
||||
iIf
|
||||
qKP
|
||||
nlk
|
||||
vDh
|
||||
vHk
|
||||
xGb
|
||||
gTW
|
||||
gPq
|
||||
gPq
|
||||
gPq
|
||||
gPq
|
||||
gPq
|
||||
foH
|
||||
xej
|
||||
@@ -200822,11 +200816,11 @@ hVJ
|
||||
xPL
|
||||
nlk
|
||||
vox
|
||||
nlk
|
||||
vDp
|
||||
xGb
|
||||
gPq
|
||||
vHq
|
||||
xKx
|
||||
gTW
|
||||
vDp
|
||||
vHh
|
||||
gPq
|
||||
foH
|
||||
xej
|
||||
@@ -201079,11 +201073,11 @@ ctK
|
||||
xPL
|
||||
vfg
|
||||
voG
|
||||
nlk
|
||||
vDx
|
||||
vHK
|
||||
xGb
|
||||
gTW
|
||||
gPq
|
||||
vHK
|
||||
vDx
|
||||
vHk
|
||||
gPq
|
||||
foH
|
||||
xej
|
||||
@@ -201337,12 +201331,12 @@ xPL
|
||||
xGb
|
||||
voH
|
||||
xGb
|
||||
xGb
|
||||
xGb
|
||||
xGb
|
||||
afQ
|
||||
gPq
|
||||
foH
|
||||
uEK
|
||||
wOp
|
||||
wOp
|
||||
bxc
|
||||
wOp
|
||||
xej
|
||||
gPq
|
||||
gTW
|
||||
@@ -201575,7 +201569,7 @@ fPS
|
||||
vHJ
|
||||
vHJ
|
||||
stW
|
||||
vMN
|
||||
qQm
|
||||
xQd
|
||||
jgD
|
||||
tur
|
||||
@@ -201595,9 +201589,9 @@ iLb
|
||||
lLx
|
||||
fse
|
||||
gPq
|
||||
gPq
|
||||
gTW
|
||||
gTW
|
||||
vCo
|
||||
wOp
|
||||
xej
|
||||
gPq
|
||||
foH
|
||||
xej
|
||||
@@ -201832,7 +201826,7 @@ oPP
|
||||
vHJ
|
||||
vHJ
|
||||
sul
|
||||
vMN
|
||||
qQm
|
||||
sKD
|
||||
vAH
|
||||
hrO
|
||||
@@ -201852,9 +201846,9 @@ ohl
|
||||
lLx
|
||||
xej
|
||||
gPq
|
||||
gPq
|
||||
gTW
|
||||
gTW
|
||||
vDh
|
||||
wOp
|
||||
vKi
|
||||
gPq
|
||||
foH
|
||||
xej
|
||||
@@ -202110,7 +202104,7 @@ lLx
|
||||
xej
|
||||
gPq
|
||||
gPq
|
||||
gPq
|
||||
wnp
|
||||
gPq
|
||||
gPq
|
||||
foH
|
||||
@@ -202367,7 +202361,7 @@ lLx
|
||||
wOp
|
||||
iEg
|
||||
iEg
|
||||
iEg
|
||||
wOp
|
||||
iEg
|
||||
iEg
|
||||
wOp
|
||||
|
||||
+2986
-91435
File diff suppressed because it is too large
Load Diff
@@ -49,6 +49,7 @@
|
||||
#define ASSISTANT (1<<13)
|
||||
#define BARBER (1<<14)
|
||||
#define BARISTA (1<<15)
|
||||
#define ROLEPLAY (1<<16)
|
||||
|
||||
#define JOB_AVAILABLE 0
|
||||
#define JOB_UNAVAILABLE_GENERIC 1
|
||||
|
||||
@@ -413,6 +413,7 @@ GLOBAL_LIST_INIT(lighter_reskins, list(ZIPPO_SKIN_PLAIN = "plain", ZIPPO_SKIN_DA
|
||||
#define DUMMY_HUMAN_SLOT_PREFERENCES "dummy_preference_preview"
|
||||
#define DUMMY_HUMAN_SLOT_ADMIN "admintools"
|
||||
#define DUMMY_HUMAN_SLOT_MANIFEST "dummy_manifest_generation"
|
||||
#define DUMMY_HUMAN_SLOT_ROLEPLAY "dummy_roleplay_preview"
|
||||
|
||||
#define PR_ANNOUNCEMENTS_PER_ROUND 5 //The number of unique PR announcements allowed per round
|
||||
//This makes sure that a single person can only spam 3 reopens and 3 closes before being ignored
|
||||
|
||||
@@ -331,7 +331,7 @@ SUBSYSTEM_DEF(job)
|
||||
|
||||
if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE))
|
||||
JobDebug("DO is not whitelisted, Player: [player], Job:[job.title]")
|
||||
continue
|
||||
continue
|
||||
|
||||
if(!job.player_old_enough(player.client))
|
||||
JobDebug("DO player not old enough, Player: [player], Job:[job.title]")
|
||||
@@ -392,7 +392,7 @@ SUBSYSTEM_DEF(job)
|
||||
message_admins(message)
|
||||
RejectPlayer(player)
|
||||
//Gives the player the stuff he should have with his rank
|
||||
/datum/controller/subsystem/job/proc/EquipRank(mob/M, rank, joined_late = FALSE)
|
||||
/datum/controller/subsystem/job/proc/EquipRank(mob/M, rank, joined_late = FALSE,loadout = TRUE)
|
||||
var/mob/dead/new_player/N
|
||||
var/mob/living/H
|
||||
if(!joined_late)
|
||||
@@ -431,7 +431,9 @@ SUBSYSTEM_DEF(job)
|
||||
|
||||
//Job loadout, equipping, and flavortext when spawning
|
||||
if(job)
|
||||
var/list/handle_storage = equip_loadout(N, H) //Loadout gear
|
||||
var/list/handle_storage
|
||||
if(loadout)
|
||||
handle_storage = equip_loadout(N, H) //Loadout gear
|
||||
var/new_mob = job.equip(H, null, null, joined_late) //Job gear
|
||||
|
||||
if(ismob(new_mob)) //The above doesnt return a value, but we check this anyways or else everything breaks!
|
||||
@@ -440,17 +442,17 @@ SUBSYSTEM_DEF(job)
|
||||
N.new_character = H
|
||||
else
|
||||
M = H
|
||||
|
||||
if(LAZYLEN(handle_storage)) //equip_loadout returned a list. This list is backpack contents we should store, as by now we should have a backpack and a single reference mob
|
||||
if(ishuman(H))
|
||||
var/mob/living/carbon/human/_H = H
|
||||
if(_H.back)
|
||||
for(var/atom/movable/A in handle_storage)
|
||||
if(!SEND_SIGNAL(_H.back, COMSIG_TRY_STORAGE_INSERT, A, null, TRUE, TRUE))
|
||||
A.forceMove(get_turf(H)) //Try and store into the backpack. If the backpack is full, drop it to the ground
|
||||
else //No backpack
|
||||
for(var/atom/movable/A in handle_storage)
|
||||
A.forceMove(get_turf(H))
|
||||
if(loadout)
|
||||
if(LAZYLEN(handle_storage)) //equip_loadout returned a list. This list is backpack contents we should store, as by now we should have a backpack and a single reference mob
|
||||
if(ishuman(H))
|
||||
var/mob/living/carbon/human/_H = H
|
||||
if(_H.back)
|
||||
for(var/atom/movable/A in handle_storage)
|
||||
if(!SEND_SIGNAL(_H.back, COMSIG_TRY_STORAGE_INSERT, A, null, TRUE, TRUE))
|
||||
A.forceMove(get_turf(H)) //Try and store into the backpack. If the backpack is full, drop it to the ground
|
||||
else //No backpack
|
||||
for(var/atom/movable/A in handle_storage)
|
||||
A.forceMove(get_turf(H))
|
||||
|
||||
//Flavortext
|
||||
var/display_rank = rank
|
||||
|
||||
@@ -1354,10 +1354,13 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
continue
|
||||
//Hyperstation Edit - Whitelisted roles
|
||||
if((rank in GLOB.silly_positions) && (!sillyroles))
|
||||
HTML += "<font color=red>[rank]</font></td><td><a href='?_src_=prefs;jobbancheck=[rank]'> WHITELIST</a></td></tr>"
|
||||
HTML += "<font color=red>[rank]</font></td><td><font color=orange> \[WHITELIST]</font></td></tr>"
|
||||
continue
|
||||
if((rank in GLOB.important_positions) && (!importantroles)) //TODO: make whitelists a bit more accurate than "silly" and "important"
|
||||
HTML += "<font color=red>[rank]</font></td><td><a href='?_src_=prefs;jobbancheck=[rank]'> WHITELIST</a></td></tr>"
|
||||
if((rank in GLOB.important_positions) && (!importantroles))
|
||||
HTML += "<font color=red>[rank]</font></td><td><font color=orange> \[WHITELIST]</font></td></tr>"
|
||||
continue
|
||||
if((rank in GLOB.roleplay_positions) && (!roleplayroles))
|
||||
HTML += "<font color=red>[rank]</font></td><td><font color=orange> \[WHITELIST]</font></td></tr>"
|
||||
continue
|
||||
//Hyperstation Edit end
|
||||
var/required_playtime_remaining = job.required_playtime_remaining(user.client)
|
||||
@@ -2976,6 +2979,9 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
if("save")
|
||||
save_preferences()
|
||||
save_character()
|
||||
if(istype(user,/mob/dead/new_player)) //if the player is a new player at the menu.
|
||||
var/mob/dead/new_player/np = user
|
||||
np.refresh_player_panel() //update their player icons
|
||||
|
||||
if("load")
|
||||
load_preferences()
|
||||
|
||||
@@ -66,6 +66,9 @@
|
||||
//whitelisting
|
||||
var/whitelist_type = ""
|
||||
|
||||
//load characters loadout on spawn
|
||||
var loadout = TRUE
|
||||
|
||||
//Only override this proc
|
||||
//H is usually a human unless an /equip override transformed it
|
||||
/datum/job/proc/after_spawn(mob/living/H, mob/M, latejoin = FALSE)
|
||||
|
||||
@@ -31,22 +31,41 @@
|
||||
/mob/dead/new_player/prepare_huds()
|
||||
return
|
||||
|
||||
/mob/dead/new_player/proc/new_player_panel()
|
||||
var/output = "<center><p>Welcome, <b>[client ? client.prefs.real_name : "Unknown User"]</b></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];show_preferences=1'>Setup Character</a></p>"
|
||||
/mob/dead/new_player/proc/refresh_player_panel()
|
||||
new_player_panel()
|
||||
|
||||
/mob/dead/new_player/proc/new_player_panel()
|
||||
src << browse(null, "window=playersetup") //closes the player setup window if its already open.
|
||||
var/output = ""
|
||||
if(SSticker.current_state <= GAME_STATE_PREGAME)
|
||||
switch(ready)
|
||||
if(PLAYER_NOT_READY)
|
||||
output += "<p>\[ [LINKIFY_READY("Ready", PLAYER_READY_TO_PLAY)] | <b>Not Ready</b> | [LINKIFY_READY("Observe", PLAYER_READY_TO_OBSERVE)] \]</p>"
|
||||
output += "<p><a style='background:#912c24;' href='byond://?src=[REF(src)];ready=[PLAYER_READY_TO_PLAY]'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "notready")]Not Ready</a></p>"
|
||||
if(PLAYER_READY_TO_PLAY)
|
||||
output += "<p>\[ <b>Ready</b> | [LINKIFY_READY("Not Ready", PLAYER_NOT_READY)] | [LINKIFY_READY("Observe", PLAYER_READY_TO_OBSERVE)] \]</p>"
|
||||
output += "<p><a style='background:#4CAF50;' href='byond://?src=[REF(src)];ready=[PLAYER_NOT_READY]'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "ready")]Ready</a></p>"
|
||||
if(PLAYER_READY_TO_OBSERVE)
|
||||
output += "<p>\[ [LINKIFY_READY("Ready", PLAYER_READY_TO_PLAY)] | [LINKIFY_READY("Not Ready", PLAYER_NOT_READY)] | <b> Observe </b> \]</p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];show_preferences=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "settings")]Setup Character</a></p>"
|
||||
else
|
||||
output += "<p><a href='byond://?src=[REF(src)];manifest=1'>View the Crew Manifest</a></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];late_join=1'>Join Game!</a></p>"
|
||||
output += "<p>[LINKIFY_READY("Observe", PLAYER_READY_TO_OBSERVE)]</p>"
|
||||
//make menu preview
|
||||
var/mob/living/carbon/human/dummy/mannequin = generate_or_wait_for_human_dummy(DUMMY_HUMAN_SLOT_ROLEPLAY)
|
||||
var/icon/preview_icon = icon('icons/effects/effects.dmi', "nothing")
|
||||
client.prefs.copy_to(mannequin)
|
||||
COMPILE_OVERLAYS(mannequin)
|
||||
var/icon/stamp = getFlatIcon(mannequin)
|
||||
mannequin.setDir(SOUTH)
|
||||
stamp = getFlatIcon(mannequin)
|
||||
CHECK_TICK
|
||||
preview_icon.Blend(stamp, ICON_OVERLAY, 0, 0)
|
||||
CHECK_TICK
|
||||
preview_icon.Scale(preview_icon.Width() * 2, preview_icon.Height() * 2)
|
||||
CHECK_TICK
|
||||
unset_busy_human_dummy(DUMMY_HUMAN_SLOT_ROLEPLAY)
|
||||
output += "<p><a href='byond://?src=[REF(src)];late_join=1'>[icon2html(preview_icon, world, "preview")]Join Game >></a></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];roleplay_join=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "roleplay")]Roleplay Roles</a></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];show_preferences=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "settings")]Setup Character</a></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];manifest=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "manifest")]View the Crew Manifest</a></p>"
|
||||
output += "<p><a href='byond://?src=[REF(src)];ready=[PLAYER_READY_TO_OBSERVE]'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "ghost")]Observe</a></p>"
|
||||
|
||||
if(!IsGuestKey(src.key))
|
||||
if (SSdbcore.Connect())
|
||||
@@ -61,18 +80,23 @@
|
||||
newpoll = 1
|
||||
|
||||
if(newpoll)
|
||||
output += "<p><b><a href='byond://?src=[rs];showpoll=1'>Show Player Polls</A> (NEW!)</b></p>"
|
||||
output += "<p><b><a href='byond://?src=[rs];showpoll=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "manifest")]Show Player Polls</A> (NEW!)</b></p>"
|
||||
else
|
||||
output += "<p><a href='byond://?src=[rs];showpoll=1'>Show Player Polls</A></p>"
|
||||
output += "<p><a href='byond://?src=[rs];showpoll=1'>[icon2html('hyperstation/icons/menu/menu_large.dmi', world, "manifest")]Show Player Polls</A></p>"
|
||||
qdel(query_get_new_polls)
|
||||
if(QDELETED(src))
|
||||
return
|
||||
|
||||
output += "</center>"
|
||||
|
||||
//src << browse(output,"window=playersetup;size=210x240;can_close=0")
|
||||
var/datum/browser/popup = new(src, "playersetup", "<div align='center'>New Player Options</div>", 250, 265)
|
||||
var/datum/browser/popup
|
||||
if(SSticker.current_state <= GAME_STATE_PREGAME)
|
||||
popup = new(src, "playersetup", "<div align='center'>New Player Options</div>", 268, 302)
|
||||
else
|
||||
popup = new(src, "playersetup", "<div align='center'>New Player Options</div>", 268, 542)
|
||||
popup.set_window_options("can_close=0")
|
||||
|
||||
popup.add_stylesheet("playersetup", 'html/browser/mainmenu.css')
|
||||
popup.set_content(output)
|
||||
popup.open(0)
|
||||
|
||||
@@ -140,10 +164,38 @@
|
||||
return
|
||||
LateChoices()
|
||||
|
||||
if(href_list["roleplay_join"])
|
||||
if(!SSticker || !SSticker.IsRoundInProgress())
|
||||
to_chat(usr, "<span class='danger'>The round is either not ready, or has already finished...</span>")
|
||||
return
|
||||
|
||||
if(href_list["late_join"] == "override")
|
||||
LateChoices(TRUE)
|
||||
return
|
||||
|
||||
if(client.prefs.real_name in client.pastcharacters) //if character has been spawned before
|
||||
to_chat(usr, "<span class='notice'>You have played that character before this round, please select a new one!</span>")
|
||||
return
|
||||
|
||||
if(SSticker.queued_players.len || (relevant_cap && living_player_count() >= relevant_cap && !(ckey(key) in GLOB.admin_datums)))
|
||||
to_chat(usr, "<span class='danger'>[CONFIG_GET(string/hard_popcap_message)]</span>")
|
||||
|
||||
var/queue_position = SSticker.queued_players.Find(usr)
|
||||
if(queue_position == 1)
|
||||
to_chat(usr, "<span class='notice'>You are next in line to join the game. You will be notified when a slot opens up.</span>")
|
||||
else if(queue_position)
|
||||
to_chat(usr, "<span class='notice'>There are [queue_position-1] players in front of you in the queue to join the game.</span>")
|
||||
else
|
||||
SSticker.queued_players += usr
|
||||
to_chat(usr, "<span class='notice'>You have been added to the queue to join the game. Your position in queue is [SSticker.queued_players.len].</span>")
|
||||
return
|
||||
LateChoices(TRUE)
|
||||
|
||||
if(href_list["manifest"])
|
||||
ViewManifest()
|
||||
|
||||
if(href_list["SelectedJob"])
|
||||
usr << browse(null, "window=roleplay") //closes the window
|
||||
if(!SSticker || !SSticker.IsRoundInProgress())
|
||||
var/msg = "[key_name(usr)] attempted to join the round using a href that shouldn't be available at this moment!"
|
||||
log_admin(msg)
|
||||
@@ -164,6 +216,63 @@
|
||||
AttemptLateSpawn(href_list["SelectedJob"])
|
||||
return
|
||||
|
||||
if(href_list["SelectedRoleplayJob"])
|
||||
if(!SSticker || !SSticker.IsRoundInProgress())
|
||||
var/msg = "[key_name(usr)] attempted to join the round using a href that shouldn't be available at this moment!"
|
||||
log_admin(msg)
|
||||
message_admins(msg)
|
||||
to_chat(usr, "<span class='danger'>The round is either not ready, or has already finished...</span>")
|
||||
return
|
||||
|
||||
|
||||
if(!GLOB.enter_allowed)
|
||||
to_chat(usr, "<span class='notice'>There is an administrative lock on entering the game!</span>")
|
||||
return
|
||||
|
||||
if(SSticker.queued_players.len && !(ckey(key) in GLOB.admin_datums))
|
||||
if((living_player_count() >= relevant_cap) || (src != SSticker.queued_players[1]))
|
||||
to_chat(usr, "<span class='warning'>Server is full.</span>")
|
||||
return
|
||||
//make preview
|
||||
var/mob/living/carbon/human/dummy/mannequin = generate_or_wait_for_human_dummy(DUMMY_HUMAN_SLOT_ROLEPLAY)
|
||||
var/datum/job/roleplay/job = SSjob.GetJob(href_list["SelectedRoleplayJob"])
|
||||
var/icon/preview_icon = icon('icons/effects/effects.dmi', "nothing")
|
||||
job.equip(mannequin, TRUE)
|
||||
client.prefs.copy_to(mannequin)
|
||||
COMPILE_OVERLAYS(mannequin)
|
||||
var/icon/stamp = getFlatIcon(mannequin)
|
||||
mannequin.setDir(SOUTH)
|
||||
stamp = getFlatIcon(mannequin)
|
||||
CHECK_TICK
|
||||
preview_icon.Blend(stamp, ICON_OVERLAY, 0, 0)
|
||||
CHECK_TICK
|
||||
preview_icon.Scale(preview_icon.Width() * 2, preview_icon.Height() * 2)
|
||||
CHECK_TICK
|
||||
unset_busy_human_dummy(DUMMY_HUMAN_SLOT_ROLEPLAY)
|
||||
|
||||
|
||||
//make menu
|
||||
var/dat = {"<B>[href_list["SelectedRoleplayJob"]]</B><BR><HR>"}
|
||||
dat += "<center>[icon2html(preview_icon, world, "preview")]</center><BR><BR>"
|
||||
if (length(job.info_text) > 0)
|
||||
dat += "[job.info_text]<BR><BR>"
|
||||
|
||||
if (length(job.quest_info) > 0)
|
||||
dat += {"<B>Role Job</B><BR><HR>"}
|
||||
dat += "[job.quest_info]<BR><BR>"
|
||||
|
||||
if (length(job.failure_info) > 0)
|
||||
dat += {"<B>Role Failure</B><BR><HR>"}
|
||||
dat += "[job.failure_info]<BR><BR>"
|
||||
if(client.prefs.roleplayroles)
|
||||
dat += "<center><p><a href='byond://?src=[REF(src)];SelectedJob=[job.title]'>Play!</a></p></center>"
|
||||
else
|
||||
dat += "<center><p><span class='linkOff'>Whitelist Required</span></p></center>"
|
||||
var/datum/browser/popup = new(usr, "roleplay", "Roleplay Panel")
|
||||
popup.set_content(dat)
|
||||
popup.set_title_image(usr.browse_rsc_icon(icon, icon_state), 500,600)
|
||||
popup.open()
|
||||
|
||||
if(href_list["JoinAsGhostRole"])
|
||||
if(!GLOB.enter_allowed)
|
||||
to_chat(usr, "<span class='notice'> There is an administrative lock on entering the game!</span>")
|
||||
@@ -361,6 +470,7 @@
|
||||
return JOB_AVAILABLE
|
||||
|
||||
/mob/dead/new_player/proc/AttemptLateSpawn(rank)
|
||||
var/datum/job/job = SSjob.GetJob(rank)
|
||||
var/error = IsJobUnavailable(rank)
|
||||
if(error != JOB_AVAILABLE)
|
||||
alert(src, get_job_unavailable_error_message(error, rank))
|
||||
@@ -388,12 +498,11 @@
|
||||
SSjob.AssignRole(src, rank, 1)
|
||||
|
||||
var/mob/living/character = create_character(TRUE) //creates the human and transfers vars and mind
|
||||
var/equip = SSjob.EquipRank(character, rank, TRUE)
|
||||
var/equip = SSjob.EquipRank(character, rank, TRUE,job.loadout)
|
||||
|
||||
if(isliving(equip)) //Borgs get borged in the equip, so we need to make sure we handle the new mob.
|
||||
character = equip
|
||||
|
||||
var/datum/job/job = SSjob.GetJob(rank)
|
||||
|
||||
if(job && !job.override_latejoin_spawn(character))
|
||||
SSjob.SendToLateJoin(character)
|
||||
if(!arrivals_docked)
|
||||
@@ -454,7 +563,7 @@
|
||||
employmentCabinet.addFile(employee)
|
||||
|
||||
|
||||
/mob/dead/new_player/proc/LateChoices()
|
||||
/mob/dead/new_player/proc/LateChoices(roleplayonly)
|
||||
|
||||
var/level = "green"
|
||||
switch(GLOB.security_level)
|
||||
@@ -479,8 +588,13 @@
|
||||
|
||||
var/available_job_count = 0
|
||||
for(var/datum/job/job in SSjob.occupations)
|
||||
if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
|
||||
available_job_count++
|
||||
if(!roleplayonly)
|
||||
if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
|
||||
available_job_count++
|
||||
else
|
||||
if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
|
||||
if(job.department_flag == ROLEPLAY)
|
||||
available_job_count++
|
||||
for(var/spawner in GLOB.mob_spawners)
|
||||
if(!LAZYLEN(spawner))
|
||||
continue
|
||||
@@ -494,26 +608,33 @@
|
||||
dat += "<div class='notice red'>There are currently no open positions!</div>"
|
||||
|
||||
else
|
||||
dat += "<div class='clearBoth'>Choose from the following open positions:</div><br>"
|
||||
var/list/categorizedJobs = list(
|
||||
"Command" = list(jobs = list(), titles = GLOB.command_positions, color = "#aac1ee"),
|
||||
"Engineering" = list(jobs = list(), titles = GLOB.engineering_positions, color = "#ffd699"),
|
||||
"Supply" = list(jobs = list(), titles = GLOB.supply_positions, color = "#ead4ae"),
|
||||
"Miscellaneous" = list(jobs = list(), titles = list(), color = "#ffffff", colBreak = TRUE),
|
||||
"Ghost Role" = list(jobs = list(), titles = GLOB.mob_spawners, color = "#ffffff"),
|
||||
"Synthetic" = list(jobs = list(), titles = GLOB.nonhuman_positions, color = "#ccffcc"),
|
||||
"Service" = list(jobs = list(), titles = GLOB.civilian_positions, color = "#cccccc"),
|
||||
"Medical" = list(jobs = list(), titles = GLOB.medical_positions, color = "#99ffe6", colBreak = TRUE),
|
||||
"Science" = list(jobs = list(), titles = GLOB.science_positions, color = "#e6b3e6"),
|
||||
"Security" = list(jobs = list(), titles = GLOB.security_positions, color = "#ff9999"),
|
||||
)
|
||||
for(var/spawner in GLOB.mob_spawners)
|
||||
if(!LAZYLEN(spawner))
|
||||
continue
|
||||
var/obj/effect/mob_spawn/S = pick(GLOB.mob_spawners[spawner])
|
||||
if(!istype(S) || !S.can_latejoin())
|
||||
continue
|
||||
categorizedJobs["Ghost Role"]["jobs"] += spawner
|
||||
var/list/categorizedJobs
|
||||
if(!roleplayonly)
|
||||
dat += "<div class='clearBoth'>Choose from the following open positions:</div><br>"
|
||||
categorizedJobs = list(
|
||||
"Command" = list(jobs = list(), titles = GLOB.command_positions, color = "#aac1ee"),
|
||||
"Roleplay" = list(jobs = list(), titles = GLOB.roleplay_positions, color = "#aac1ee"),
|
||||
"Engineering" = list(jobs = list(), titles = GLOB.engineering_positions, color = "#ffd699"),
|
||||
"Supply" = list(jobs = list(), titles = GLOB.supply_positions, color = "#ead4ae"),
|
||||
"Miscellaneous" = list(jobs = list(), titles = list(), color = "#ffffff", colBreak = TRUE),
|
||||
"Ghost Role" = list(jobs = list(), titles = GLOB.mob_spawners, color = "#ffffff"),
|
||||
"Synthetic" = list(jobs = list(), titles = GLOB.nonhuman_positions, color = "#ccffcc"),
|
||||
"Service" = list(jobs = list(), titles = GLOB.civilian_positions, color = "#cccccc"),
|
||||
"Medical" = list(jobs = list(), titles = GLOB.medical_positions, color = "#99ffe6", colBreak = TRUE),
|
||||
"Science" = list(jobs = list(), titles = GLOB.science_positions, color = "#e6b3e6"),
|
||||
"Security" = list(jobs = list(), titles = GLOB.security_positions, color = "#ff9999"),
|
||||
)
|
||||
else
|
||||
dat += "<div class='clearBoth'>Choose from the following open positions:</div><br>"
|
||||
categorizedJobs = list("Roleplay" = list(jobs = list(), titles = GLOB.roleplay_positions, color = "#aac1ee"))
|
||||
if(!roleplayonly)
|
||||
for(var/spawner in GLOB.mob_spawners)
|
||||
if(!LAZYLEN(spawner))
|
||||
continue
|
||||
var/obj/effect/mob_spawn/S = pick(GLOB.mob_spawners[spawner])
|
||||
if(!istype(S) || !S.can_latejoin())
|
||||
continue
|
||||
categorizedJobs["Ghost Role"]["jobs"] += spawner
|
||||
|
||||
for(var/datum/job/job in SSjob.occupations)
|
||||
if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
|
||||
@@ -522,6 +643,8 @@
|
||||
var/list/jobs = categorizedJobs[jobcat]["jobs"]
|
||||
if(job.title in categorizedJobs[jobcat]["titles"])
|
||||
categorized = TRUE
|
||||
if(jobcat == "Roleplay" && !roleplayonly)
|
||||
continue //dont put roleplay jobs here
|
||||
if(jobcat == "Command")
|
||||
|
||||
if(job.title == "Captain") // Put captain at top of command jobs
|
||||
@@ -534,7 +657,8 @@
|
||||
else
|
||||
jobs += job
|
||||
if(!categorized)
|
||||
categorizedJobs["Miscellaneous"]["jobs"] += job
|
||||
if(!roleplayonly)
|
||||
categorizedJobs["Miscellaneous"]["jobs"] += job
|
||||
|
||||
|
||||
dat += "<table><tr><td valign='top'>"
|
||||
@@ -551,12 +675,15 @@
|
||||
if(job.title in GLOB.command_positions)
|
||||
position_class = "commandPosition"
|
||||
var/jobline = ""
|
||||
if(job in SSjob.prioritized_jobs)
|
||||
jobline += "<a class='[position_class]' style='display:block;width:170px' href='byond://?src=[REF(src)];SelectedJob=[job.title]'><font color='lime'><b>[job.title] ([job.current_positions])</b></font></a>"
|
||||
if(!roleplayonly)
|
||||
if(job in SSjob.prioritized_jobs)
|
||||
jobline += "<a class='[position_class]' style='display:block;width:170px' href='byond://?src=[REF(src)];SelectedJob=[job.title]'><font color='lime'><b>[job.title] ([job.current_positions])</b></font></a>"
|
||||
else
|
||||
jobline += "<a class='[position_class]' style='display:block;width:170px' href='byond://?src=[REF(src)];SelectedJob=[job.title]'>[job.title] ([job.current_positions])</a>"
|
||||
if(client && client.prefs && client.prefs.alt_titles_preferences[job.title])
|
||||
jobline += "<br><span style='color:#BBBBBB; font-style: italic;'>(as [client.prefs.alt_titles_preferences[job.title]])</span>"
|
||||
else
|
||||
jobline += "<a class='[position_class]' style='display:block;width:170px' href='byond://?src=[REF(src)];SelectedJob=[job.title]'>[job.title] ([job.current_positions])</a>"
|
||||
if(client && client.prefs && client.prefs.alt_titles_preferences[job.title])
|
||||
jobline += "<br><span style='color:#BBBBBB; font-style: italic;'>(as [client.prefs.alt_titles_preferences[job.title]])</span>"
|
||||
jobline += "<a class='[position_class]' style='display:block;width:170px' href='byond://?src=[REF(src)];SelectedRoleplayJob=[job.title]'><font color='lime'><b>[job.title] ([job.current_positions])</b></font></a>"
|
||||
dat += jobline
|
||||
categorizedJobs[jobcat]["jobs"] -= job
|
||||
|
||||
@@ -638,3 +765,4 @@
|
||||
src << browse(null, "window=preferences") //closes job selection
|
||||
src << browse(null, "window=mob_occupation")
|
||||
src << browse(null, "window=latechoices") //closes late job selection
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
/////////////////////////////
|
||||
/datum/sprite_accessory/facial_hair
|
||||
icon = 'icons/mob/human_face.dmi'
|
||||
gender = MALE // barf (unless you're a dorf, dorfs dig chix w/ beards :P)
|
||||
gender = NEUTER // barf (unless you're a dorf, dorfs dig chix w/ beards :P)
|
||||
|
||||
// please make sure they're sorted alphabetically and categorized
|
||||
|
||||
@@ -86,4 +86,3 @@
|
||||
|
||||
/datum/sprite_accessory/facial_hair/elvis
|
||||
name = "Sideburns (Elvis)"
|
||||
icon_state = "facial_elvis"
|
||||
@@ -0,0 +1,33 @@
|
||||
a, button, a:link, a:visited, a:active, .linkOn, .linkOff
|
||||
{
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
align-items:center;
|
||||
width: 95%;
|
||||
border: 2px solid #161616;
|
||||
}
|
||||
|
||||
.icon
|
||||
{
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.p {
|
||||
margin-bottom: -10px; /* between paragraphs */
|
||||
padding: -10px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
body
|
||||
{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background-color: #272727;
|
||||
font-size: 12px;
|
||||
color: #ffffff;
|
||||
line-height: 0%;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
a, button, a:link, a:visited, a:active, .linkOn, .linkOff
|
||||
{
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
align-items:center;
|
||||
width: 95%;
|
||||
border: 1px solid #161616;
|
||||
}
|
||||
|
||||
.icon
|
||||
{
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.p {
|
||||
margin-bottom: -10px; /* between paragraphs */
|
||||
padding: -10px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
body
|
||||
{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background-color: #272727;
|
||||
font-size: 12px;
|
||||
color: #ffffff;
|
||||
line-height: 0%;
|
||||
}
|
||||
@@ -1,7 +1,19 @@
|
||||
/*
|
||||
Roleplay Jobs, Currently borked.
|
||||
GLOBAL_LIST_INIT(roleplay_positions, list(
|
||||
"Central Command Inspector",
|
||||
"Prisoner"))
|
||||
|
||||
/datum/job/rpcentral
|
||||
/datum/job/roleplay/
|
||||
var/info_text = "Debug Text on What the Job does."
|
||||
var/quest_info = "To be the very best, like noone ever was."
|
||||
var/failure_info = "To suck."
|
||||
department_flag = ROLEPLAY
|
||||
loadout = FALSE
|
||||
|
||||
//Central Command Inspector
|
||||
////////////////////////////////////////////
|
||||
GLOBAL_LIST_EMPTY(rpcentralspawn) //required for late game spawning
|
||||
|
||||
/datum/job/roleplay/rpcentral
|
||||
title = "Central Command Inspector"
|
||||
faction = "Station"
|
||||
total_positions = 1
|
||||
@@ -9,5 +21,63 @@ Roleplay Jobs, Currently borked.
|
||||
minimal_player_age = 1
|
||||
supervisors = "central command"
|
||||
selection_color = "#ffeef0"
|
||||
custom_spawn_text = "You are from central command doing a routine inspection of the station, please fill out the provided information and submit it to central command by the end of the shift."
|
||||
*/
|
||||
info_text = "A offical from Central Command, performing a routine inspection of the station."
|
||||
quest_info = "Complete a routine check of the station, And make a write up for your bosses. The information collected should be submitted to Central Command before the end of the shift. Notify the crew ahead of time for initating."
|
||||
failure_info = "Failure to fill in the form correctly will face severe penalties from Command."
|
||||
outfit = /datum/outfit/centcom_official
|
||||
override_roundstart_spawn = /obj/effect/landmark/start/rpcentral
|
||||
|
||||
/datum/job/roleplay/rpcentral/override_latejoin_spawn()
|
||||
return TRUE
|
||||
|
||||
/datum/job/roleplay/rpcentral/after_spawn(mob/H, mob/M, latejoin)
|
||||
H.Move(pick(GLOB.rpcentralspawn))
|
||||
H.forceMove(pick(GLOB.rpcentralspawn))
|
||||
|
||||
/obj/effect/landmark/start/rpcentral
|
||||
name = "Central Command Inspector"
|
||||
icon = 'icons/effects/landmarks_static.dmi'
|
||||
icon_state = "snukeop_leader_spawn"
|
||||
|
||||
/obj/effect/landmark/start/rpcentral/Initialize(mapload)
|
||||
..()
|
||||
GLOB.rpcentralspawn += loc
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
//Prisoner
|
||||
////////////////////////////////////////////
|
||||
GLOBAL_LIST_EMPTY(prisionspawn)
|
||||
|
||||
/datum/job/roleplay/prisoner
|
||||
title = "Prisoner"
|
||||
faction = "Station"
|
||||
total_positions = 3
|
||||
spawn_positions = 1
|
||||
minimal_player_age = 1
|
||||
supervisors = "security"
|
||||
selection_color = "#ffeef0"
|
||||
info_text = "For one reason or another, you are a prisoner. Kinaris has chosen to temporarily hold you within Layenia Station's holding area, \
|
||||
until the end of the shift. You do not permanently reside here, but you may end up in this place from shift to shift. It is highly recommended to \
|
||||
make a unique character slot for this role. Kinaris would not neuter or otherwise remove identifying features that make you who you are; such as \
|
||||
altering your name, features, or physical appearance. As a prisoner, you still uphold a decent amount of rights."
|
||||
quest_info = "Do NOT attempt to break out, antagonize, or otherwise treat your role as anything to grief with. Should you find a scenario where you want to, AHELP."
|
||||
failure_info = ""
|
||||
outfit = /datum/outfit/prisoner
|
||||
|
||||
/datum/job/roleplay/prisoner/override_latejoin_spawn()
|
||||
return TRUE
|
||||
|
||||
/datum/job/roleplay/prisoner/after_spawn(mob/H, mob/M, latejoin)
|
||||
AnnounceArrival(H, title)
|
||||
H.Move(pick(GLOB.prisionspawn))
|
||||
H.forceMove(pick(GLOB.prisionspawn))
|
||||
|
||||
/obj/effect/landmark/start/prisoner
|
||||
name = "Central Command Inspector"
|
||||
icon = 'icons/effects/landmarks_static.dmi'
|
||||
icon_state = "snukeop_leader_spawn"
|
||||
|
||||
/obj/effect/landmark/start/prisoner/Initialize(mapload)
|
||||
..()
|
||||
GLOB.prisionspawn += loc
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
@@ -437,7 +437,7 @@ from modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm:
|
||||
name = "RadDog (Hyper)"
|
||||
icon_state = "chemlight"
|
||||
icon = 'hyperstation/icons/mob/char_markings.dmi'
|
||||
|
||||
|
||||
//racc do a code maybe it won't explode
|
||||
/datum/sprite_accessory/mam_body_markings/raccalt
|
||||
name = "RaccAlt (Hyper)"
|
||||
@@ -543,7 +543,7 @@ from modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm:
|
||||
/datum/sprite_accessory/screen/visor/blue
|
||||
name = "Blue Visor (Hyper)"
|
||||
icon_state = "visor_blue"
|
||||
|
||||
|
||||
/datum/sprite_accessory/screen/visor/green
|
||||
name = "Green Visor (Hyper)"
|
||||
icon_state = "visor_green"
|
||||
@@ -559,7 +559,7 @@ from modular_citadel/code/modules/mob/dead/new_player/sprite_accessories.dm:
|
||||
/datum/sprite_accessory/screen/visor/yellow
|
||||
name = "Yellow Visor (Hyper)"
|
||||
icon_state = "visor_yellow"
|
||||
|
||||
|
||||
|
||||
/*
|
||||
HAIRSTYLES
|
||||
@@ -601,3 +601,18 @@ from code/modules/mob/dead/new_player/sprite_accessories/hair_head.dm:
|
||||
/datum/sprite_accessory/hair/emoh
|
||||
name = "Emo (Hyper)"
|
||||
icon_state = "hair_emoh"
|
||||
|
||||
/*
|
||||
BEARDS
|
||||
==========================================================
|
||||
*/
|
||||
|
||||
/*
|
||||
/datum/sprite_accessory/facial_hair
|
||||
icon = 'icons/mob/human_face.dmi'
|
||||
gender = MALE // barf (unless you're a dorf, dorfs dig chix w/ beards :P)
|
||||
*/
|
||||
|
||||
/datum/sprite_accessory/facial_hair/mane
|
||||
name = "Neckfluff (Hyper)"
|
||||
icon_state = "facial_neckfluff"
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.4 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 174 KiB After Width: | Height: | Size: 175 KiB |
@@ -3,7 +3,7 @@
|
||||
id = "mammal"
|
||||
default_color = "4B4B4B"
|
||||
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR)
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR,FACEHAIR)
|
||||
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID
|
||||
mutant_bodyparts = list("mam_tail", "mam_ears", "mam_body_markings", "mam_snouts", "taur", "legs", "deco_wings")
|
||||
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_snouts" = "Husky", "mam_tail" = "Husky", "mam_ears" = "Husky", "mam_body_markings" = "Husky", "taur" = "None", "legs" = "Normal Legs", "deco_wings" = "None")
|
||||
@@ -54,7 +54,7 @@
|
||||
say_mod = "chirps"
|
||||
default_color = "BCAC9B"
|
||||
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR)
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR,FACEHAIR)
|
||||
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID
|
||||
mutant_bodyparts = list("mam_snouts", "wings", "taur", "mam_tail", "mam_body_markings", "taur", "deco_wings")
|
||||
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_snouts" = "Beak", "mam_body_markings" = "Hawk", "wings" = "None", "taur" = "None", "mam_tail" = "Hawk", "deco_wings" = "None")
|
||||
@@ -100,7 +100,7 @@
|
||||
id = "aquatic"
|
||||
default_color = "BCAC9B"
|
||||
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR)
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,WINGCOLOR,FACEHAIR)
|
||||
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID
|
||||
mutant_bodyparts = list("mam_tail", "mam_ears","mam_body_markings", "taur", "mam_snouts", "deco_wings", "legs")
|
||||
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_tail" = "Shark", "mam_ears" = "None", "mam_body_markings" = "Shark", "mam_snouts" = "Round", "taur" = "None", "legs" = "Normal Legs", "deco_wings" = "None")
|
||||
@@ -147,7 +147,7 @@
|
||||
id = "insect"
|
||||
default_color = "BCAC9B"
|
||||
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR)
|
||||
species_traits = list(MUTCOLORS,EYECOLOR,LIPS,HAIR,FACEHAIR)
|
||||
inherent_biotypes = MOB_ORGANIC|MOB_HUMANOID|MOB_BUG
|
||||
mutant_bodyparts = list("mam_ears", "mam_body_markings", "mam_tail", "taur", "moth_wings","moth_markings", "mam_snouts", "moth_fluff", "legs")
|
||||
default_features = list("mcolor" = "FFF","mcolor2" = "FFF","mcolor3" = "FFF", "mam_tail" = "None", "mam_ears" = "None", "moth_wings" = "Plain","moth_markings" = "None", "mam_snouts" = "Bug", "mam_body_markings" = "Moth", "taur" = "None", "moth_fluff" = "Plain", "legs" = "Normal Legs")
|
||||
@@ -250,7 +250,7 @@
|
||||
icon_limbs = DEFAULT_BODYPART_ICON_CITADEL
|
||||
say_mod = "beeps"
|
||||
default_color = "00FF00"
|
||||
species_traits = list(MUTCOLORS,NOTRANSSTING,EYECOLOR,LIPS,HAIR)
|
||||
species_traits = list(MUTCOLORS,NOTRANSSTING,EYECOLOR,LIPS,HAIR,FACEHAIR)
|
||||
inherent_biotypes = MOB_ROBOTIC|MOB_HUMANOID
|
||||
mutant_bodyparts = list("ipc_antenna", "mam_tail", "mam_snouts", "legs", "mam_body_markings", "taur")
|
||||
default_features = list("ipc_antenna" = "Synthetic Lizard - Antennae","mam_tail" = "Synthetic Lizard", "mam_snouts" = "Synthetic Lizard - Snout", "legs" = "Digitigrade Legs", "mam_body_markings" = "Synthetic Lizard - Plates", "taur" = "None")
|
||||
|
||||
@@ -3199,6 +3199,7 @@
|
||||
#include "hyperstation\code\modules\food_and_drinks\recipes\drinks_recipes.dm"
|
||||
#include "hyperstation\code\modules\hydroponics\grown\kalyna.dm"
|
||||
#include "hyperstation\code\modules\integrated_electronics\input.dm"
|
||||
#include "hyperstation\code\modules\jobs\jobs.dm"
|
||||
#include "hyperstation\code\modules\jobs\job_types\_job.dm"
|
||||
#include "hyperstation\code\modules\jobs\job_types\civilian.dm"
|
||||
#include "hyperstation\code\modules\jobs\job_types\job_alt_titles.dm"
|
||||
@@ -3209,6 +3210,7 @@
|
||||
#include "hyperstation\code\modules\mining\equipment\survival_pod.dm"
|
||||
#include "hyperstation\code\modules\mob\mob_helpers.dm"
|
||||
#include "hyperstation\code\modules\mob\dead\new_player\cosmetic_parts.dm"
|
||||
#include "hyperstation\code\modules\mob\dead\new_player\roleplay.dm"
|
||||
#include "hyperstation\code\modules\mob\dead\new_player\sprite_accessories.dm"
|
||||
#include "hyperstation\code\modules\mob\living\status_indicators.dm"
|
||||
#include "hyperstation\code\modules\mob\living\carbon\carbon.dm"
|
||||
|
||||
Reference in New Issue
Block a user