Merge branch 'master' of https://github.com/Citadel-Station-13/Citadel-Station-13 into Ghommie-cit632
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
/area/lavaland/surface/outdoors)
|
||||
"e" = (
|
||||
/obj/item/clothing/shoes/workboots/mining,
|
||||
/obj/item/clothing/under/rank/miner/lavaland,
|
||||
/obj/item/clothing/under/rank/cargo/miner/lavaland,
|
||||
/obj/effect/decal/remains/human,
|
||||
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
|
||||
/area/lavaland/surface/outdoors)
|
||||
|
||||
@@ -188,10 +188,10 @@
|
||||
/area/ruin/powered/seedvault)
|
||||
"G" = (
|
||||
/obj/structure/closet/crate/hydroponics,
|
||||
/obj/item/clothing/under/rank/hydroponics,
|
||||
/obj/item/clothing/under/rank/hydroponics,
|
||||
/obj/item/clothing/under/rank/hydroponics,
|
||||
/obj/item/clothing/under/rank/hydroponics,
|
||||
/obj/item/clothing/under/rank/civilian/hydroponics,
|
||||
/obj/item/clothing/under/rank/civilian/hydroponics,
|
||||
/obj/item/clothing/under/rank/civilian/hydroponics,
|
||||
/obj/item/clothing/under/rank/civilian/hydroponics,
|
||||
/turf/open/floor/plasteel/freezer,
|
||||
/area/ruin/powered/seedvault)
|
||||
"H" = (
|
||||
|
||||
@@ -324,7 +324,7 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/structure/rack,
|
||||
/obj/item/clothing/under/soviet,
|
||||
/obj/item/clothing/under/costume/soviet,
|
||||
/obj/item/clothing/head/ushanka,
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/ruin/space/djstation)
|
||||
|
||||
@@ -219,7 +219,7 @@
|
||||
/obj/structure/closet{
|
||||
name = "Official Clothing"
|
||||
},
|
||||
/obj/item/clothing/under/rank/centcom_commander,
|
||||
/obj/item/clothing/under/rank/centcom/commander,
|
||||
/obj/item/clothing/head/centhat,
|
||||
/obj/item/clothing/gloves/combat,
|
||||
/obj/item/clothing/suit/armor/vest,
|
||||
|
||||
@@ -2098,7 +2098,7 @@
|
||||
/area/awaymission/BMPship/Aft)
|
||||
"gj" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/overalls,
|
||||
/obj/item/clothing/under/misc/overalls,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/awaymission/BMPship/Aft)
|
||||
"gk" = (
|
||||
@@ -2269,7 +2269,7 @@
|
||||
/area/awaymission/BMPship/Aft)
|
||||
"gP" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/lawyer/bluesuit,
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/bluesuit,
|
||||
/obj/item/clothing/suit/apron,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/awaymission/BMPship/Aft)
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
/obj/structure/chair{
|
||||
dir = 4
|
||||
},
|
||||
/obj/item/clothing/under/polychromic/shirt,
|
||||
/obj/item/clothing/under/misc/poly_shirt,
|
||||
/obj/item/clothing/neck/tie/black,
|
||||
/obj/item/clothing/shoes/laceup,
|
||||
/obj/item/storage/wallet/random,
|
||||
@@ -89,7 +89,7 @@
|
||||
/obj/structure/chair{
|
||||
dir = 8
|
||||
},
|
||||
/obj/item/clothing/under/polychromic/skirt,
|
||||
/obj/item/clothing/under/dress/skirt/polychromic,
|
||||
/obj/item/clothing/shoes/laceup,
|
||||
/obj/item/clothing/gloves/color/white,
|
||||
/obj/item/clothing/glasses/regular,
|
||||
|
||||
@@ -573,7 +573,7 @@
|
||||
"bU" = (
|
||||
/obj/effect/decal/cleanable/blood,
|
||||
/obj/structure/chair,
|
||||
/obj/item/clothing/under/rank/centcom_officer,
|
||||
/obj/item/clothing/under/rank/centcom/officer,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/effect/decal/remains/human,
|
||||
/turf/open/floor/plating/airless,
|
||||
|
||||
+7244
-4021
File diff suppressed because it is too large
Load Diff
@@ -2754,12 +2754,12 @@
|
||||
"hT" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/storage/belt/soulstone,
|
||||
/obj/item/clothing/under/schoolgirl,
|
||||
/obj/item/clothing/under/costume/schoolgirl,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/awaymission/academy/academyaft)
|
||||
"hU" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/skirt/black,
|
||||
/obj/item/clothing/under/dress/skirt,
|
||||
/obj/item/clothing/glasses/regular,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/awaymission/academy/academyaft)
|
||||
@@ -2772,7 +2772,7 @@
|
||||
"hW" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/lipstick/random,
|
||||
/obj/item/clothing/under/schoolgirl,
|
||||
/obj/item/clothing/under/costume/schoolgirl,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/awaymission/academy/academyaft)
|
||||
"hX" = (
|
||||
|
||||
@@ -2524,7 +2524,7 @@
|
||||
/area/awaymission/snowdin/post)
|
||||
"fF" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/item/clothing/suit/hooded/wintercoat,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
/obj/effect/turf_decal/bot,
|
||||
|
||||
@@ -2252,7 +2252,7 @@
|
||||
/area/awaymission/centcomAway/hangar)
|
||||
"mQ" = (
|
||||
/obj/structure/safe/floor,
|
||||
/obj/item/clothing/under/rank/centcom_officer,
|
||||
/obj/item/clothing/under/rank/centcom/officer,
|
||||
/obj/item/clothing/suit/det_suit,
|
||||
/obj/item/gun/ballistic/revolver/mateba,
|
||||
/turf/open/indestructible,
|
||||
|
||||
@@ -580,7 +580,7 @@
|
||||
/area/awaymission/caves/BMP_asteroid/level_four)
|
||||
"bH" = (
|
||||
/obj/effect/decal/remains/human,
|
||||
/obj/item/clothing/under/patriotsuit,
|
||||
/obj/item/clothing/under/misc/patriotsuit,
|
||||
/turf/open/floor/plating/asteroid/basalt/lava{
|
||||
initial_gas_mix = "n2=23;o2=14"
|
||||
},
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
/obj/structure/bed/nest,
|
||||
/obj/effect/decal/cleanable/blood/gibs,
|
||||
/obj/item/clothing/mask/facehugger/impregnated,
|
||||
/obj/item/clothing/under/rank/security,
|
||||
/obj/item/clothing/under/rank/security/officer,
|
||||
/obj/item/clothing/suit/armor/vest,
|
||||
/obj/item/melee/baton/loaded,
|
||||
/obj/item/clothing/head/helmet,
|
||||
@@ -5718,7 +5718,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/navy,
|
||||
/obj/item/clothing/under/suit/navy,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -6008,7 +6008,7 @@
|
||||
name = "Kitchen Crate"
|
||||
},
|
||||
/obj/item/storage/box/mousetraps,
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/turf/open/floor/plasteel/showroomfloor{
|
||||
heat_capacity = 1e+006;
|
||||
temperature = 273.15
|
||||
@@ -6655,7 +6655,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -6823,7 +6823,7 @@
|
||||
/obj/structure/table,
|
||||
/obj/structure/bedsheetbin,
|
||||
/obj/item/clothing/neck/tie/black,
|
||||
/obj/item/clothing/under/lawyer/blacksuit,
|
||||
/obj/item/clothing/under/suit/black,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 4
|
||||
},
|
||||
@@ -7068,7 +7068,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/burgundy,
|
||||
/obj/item/clothing/under/suit/burgundy,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
|
||||
@@ -3214,7 +3214,7 @@
|
||||
id_job = "Geneticist";
|
||||
oxy_damage = 55;
|
||||
suit = /obj/item/clothing/suit/toggle/labcoat/genetics;
|
||||
uniform = /obj/item/clothing/under/rank/geneticist;
|
||||
uniform = /obj/item/clothing/under/rank/medical/geneticist;
|
||||
name = "Geneticist"
|
||||
},
|
||||
/obj/effect/decal/cleanable/blood,
|
||||
@@ -4322,7 +4322,7 @@
|
||||
id_job = "Geneticist";
|
||||
oxy_damage = 55;
|
||||
suit = /obj/item/clothing/suit/toggle/labcoat/genetics;
|
||||
uniform = /obj/item/clothing/under/rank/geneticist;
|
||||
uniform = /obj/item/clothing/under/rank/medical/geneticist;
|
||||
name = "Geneticist"
|
||||
},
|
||||
/obj/effect/decal/cleanable/blood,
|
||||
@@ -5173,7 +5173,7 @@
|
||||
id_job = "Geneticist";
|
||||
oxy_damage = 55;
|
||||
suit = /obj/item/clothing/suit/toggle/labcoat/genetics;
|
||||
uniform = /obj/item/clothing/under/rank/geneticist;
|
||||
uniform = /obj/item/clothing/under/rank/medical/geneticist;
|
||||
name = "Geneticist"
|
||||
},
|
||||
/obj/effect/decal/cleanable/blood,
|
||||
@@ -6047,7 +6047,7 @@
|
||||
id_job = "Geneticist";
|
||||
oxy_damage = 55;
|
||||
suit = /obj/item/clothing/suit/toggle/labcoat/genetics;
|
||||
uniform = /obj/item/clothing/under/rank/geneticist;
|
||||
uniform = /obj/item/clothing/under/rank/medical/geneticist;
|
||||
name = "Geneticist"
|
||||
},
|
||||
/turf/open/floor/mineral/titanium/blue,
|
||||
|
||||
@@ -312,7 +312,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/pj/blue,
|
||||
/obj/item/clothing/under/misc/pj/blue,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -362,7 +362,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/female,
|
||||
/obj/item/clothing/under/suit/black/skirt,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
@@ -2135,7 +2135,7 @@
|
||||
},
|
||||
/area/awaymission/undergroundoutpost45/caves)
|
||||
"ev" = (
|
||||
/obj/item/clothing/under/pj/red,
|
||||
/obj/item/clothing/under/misc/pj/red,
|
||||
/obj/structure/closet/secure_closet{
|
||||
desc = "It's a secure locker for personnel. The first card swiped gains control.";
|
||||
icon_state = "cabinet";
|
||||
@@ -3130,7 +3130,7 @@
|
||||
name = "Kitchen Crate"
|
||||
},
|
||||
/obj/item/storage/box/mousetraps,
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/turf/open/floor/plasteel/showroomfloor{
|
||||
heat_capacity = 1e+006
|
||||
@@ -5263,7 +5263,7 @@
|
||||
},
|
||||
/area/awaymission/undergroundoutpost45/gateway)
|
||||
"km" = (
|
||||
/obj/item/clothing/under/suit_jacket/navy,
|
||||
/obj/item/clothing/under/suit/navy,
|
||||
/obj/structure/closet/secure_closet{
|
||||
desc = "It's a secure locker for personnel. The first card swiped gains control.";
|
||||
icon_state = "cabinet";
|
||||
@@ -9706,7 +9706,7 @@
|
||||
name = "personal closet";
|
||||
req_access_txt = "201"
|
||||
},
|
||||
/obj/item/clothing/under/pj/red,
|
||||
/obj/item/clothing/under/misc/pj/red,
|
||||
/turf/open/floor/carpet{
|
||||
heat_capacity = 1e+006
|
||||
},
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "map_files\OmegaStation\OmegaStation.dmm"
|
||||
#include "map_files\PubbyStation\PubbyStation.dmm"
|
||||
#include "map_files\BoxStation\BoxStation.dmm"
|
||||
#include "map_files\LambdaStation\lambda.dmm"
|
||||
|
||||
#ifdef TRAVISBUILDING
|
||||
#include "templates.dm"
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
#define FORCE_MAP "_maps/lambdastation.json"
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"map_name": "Lambda Station",
|
||||
"map_path": "map_files/LambdaStation",
|
||||
"map_file": "lambda.dmm",
|
||||
"shuttles": {
|
||||
"cargo": "cargo_box",
|
||||
"ferry": "ferry_fancy",
|
||||
"whiteship": "whiteship_meta",
|
||||
"emergency": "emergency_meta"
|
||||
}
|
||||
}
|
||||
+1564
-1581
File diff suppressed because it is too large
Load Diff
@@ -4154,7 +4154,7 @@
|
||||
},
|
||||
/obj/item/wirerod,
|
||||
/obj/item/wrench,
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/obj/item/clothing/accessory/waistcoat,
|
||||
/obj/structure/sign/poster/contraband/random{
|
||||
pixel_x = -32
|
||||
@@ -39822,7 +39822,7 @@
|
||||
/obj/structure/closet/secure_closet/hos,
|
||||
/obj/item/clothing/head/HoS/beret,
|
||||
/obj/item/clothing/suit/armor/hos/trenchcoat,
|
||||
/obj/item/clothing/under/rank/head_of_security/grey,
|
||||
/obj/item/clothing/under/rank/security/head_of_security/grey,
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 9
|
||||
},
|
||||
@@ -50312,7 +50312,7 @@
|
||||
/obj/item/clothing/suit/det_suit{
|
||||
icon_state = "curator"
|
||||
},
|
||||
/obj/item/clothing/under/rank/det{
|
||||
/obj/item/clothing/under/rank/security/detective{
|
||||
icon_state = "curator"
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -62632,7 +62632,7 @@
|
||||
/area/security/warden)
|
||||
"cbF" = (
|
||||
/obj/structure/closet/secure_closet/warden,
|
||||
/obj/item/clothing/under/rank/warden/grey,
|
||||
/obj/item/clothing/under/rank/security/warden/grey,
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
dir = 4
|
||||
},
|
||||
@@ -74042,7 +74042,7 @@
|
||||
/area/maintenance/starboard)
|
||||
"cuG" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/rank/security,
|
||||
/obj/item/clothing/under/rank/security/officer,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/light/small,
|
||||
@@ -78636,7 +78636,7 @@
|
||||
pixel_x = 26;
|
||||
pixel_y = 26
|
||||
},
|
||||
/obj/item/clothing/under/kilt,
|
||||
/obj/item/clothing/under/costume/kilt,
|
||||
/obj/item/clothing/head/beret,
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
@@ -78674,7 +78674,7 @@
|
||||
/obj/item/clothing/head/fedora{
|
||||
icon_state = "detective"
|
||||
},
|
||||
/obj/item/clothing/under/geisha,
|
||||
/obj/item/clothing/under/costume/geisha,
|
||||
/obj/item/clothing/head/fedora{
|
||||
icon_state = "curator"
|
||||
},
|
||||
@@ -78682,7 +78682,7 @@
|
||||
desc = "This looks awfully familiar...";
|
||||
icon_state = "curator"
|
||||
},
|
||||
/obj/item/clothing/under/rank/curator/treasure_hunter,
|
||||
/obj/item/clothing/under/rank/civilian/curator/treasure_hunter,
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
},
|
||||
@@ -81143,7 +81143,7 @@
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/obj/item/folder/blue,
|
||||
/obj/item/clothing/under/rank/centcom_commander{
|
||||
/obj/item/clothing/under/rank/centcom/commander{
|
||||
desc = "A replica of a jumpsuit worn by the highest ranking commanders under Nanotrasen's central command.";
|
||||
name = "Replica CentCom officer's jumpsuit"
|
||||
},
|
||||
@@ -88556,7 +88556,7 @@
|
||||
/area/crew_quarters/fitness/recreation)
|
||||
"cTg" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/sl_suit{
|
||||
/obj/item/clothing/under/suit/sl{
|
||||
name = "referee suit"
|
||||
},
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -89705,7 +89705,7 @@
|
||||
/obj/structure/closet/secure_closet/personal/cabinet,
|
||||
/obj/item/clothing/suit/jacket/letterman_nanotrasen,
|
||||
/obj/item/clothing/suit/toggle/lawyer,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/obj/item/clothing/head/kitty,
|
||||
/obj/machinery/airalarm{
|
||||
dir = 1;
|
||||
@@ -89733,7 +89733,7 @@
|
||||
/obj/item/clothing/head/fedora{
|
||||
icon_state = "detective"
|
||||
},
|
||||
/obj/item/clothing/under/lawyer/female,
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/female,
|
||||
/obj/machinery/airalarm{
|
||||
dir = 1;
|
||||
pixel_y = -22
|
||||
@@ -89757,7 +89757,7 @@
|
||||
pixel_y = -32
|
||||
},
|
||||
/obj/item/clothing/head/fedora,
|
||||
/obj/item/clothing/under/redeveninggown,
|
||||
/obj/item/clothing/under/dress/redeveninggown,
|
||||
/obj/item/clothing/head/rabbitears,
|
||||
/turf/open/floor/plasteel/grimy,
|
||||
/area/crew_quarters/dorms)
|
||||
@@ -90569,7 +90569,6 @@
|
||||
pixel_y = 3
|
||||
},
|
||||
/obj/item/storage/box/syringes,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/machinery/status_display/evac{
|
||||
pixel_x = -32
|
||||
},
|
||||
@@ -90581,6 +90580,7 @@
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 4
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/medical/storage)
|
||||
"cWv" = (
|
||||
@@ -92803,7 +92803,7 @@
|
||||
/area/crew_quarters/fitness/recreation)
|
||||
"dae" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/suit_jacket/really_black,
|
||||
/obj/item/clothing/under/suit/black_really,
|
||||
/obj/item/cane,
|
||||
/obj/item/clothing/head/bowler{
|
||||
pixel_y = 5
|
||||
@@ -98184,7 +98184,7 @@
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/suit/toggle/owlwings,
|
||||
/obj/item/clothing/under/owl,
|
||||
/obj/item/clothing/under/costume/owl,
|
||||
/obj/item/clothing/mask/gas/owl_mask,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/starboard/aft)
|
||||
@@ -99195,7 +99195,7 @@
|
||||
/obj/structure/table/reinforced,
|
||||
/obj/machinery/light/small,
|
||||
/obj/structure/bedsheetbin,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/item/gun/syringe/dart,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
@@ -106576,11 +106576,11 @@
|
||||
/obj/item/clothing/mask/muzzle,
|
||||
/obj/item/clothing/glasses/sunglasses/blindfold,
|
||||
/obj/item/clothing/ears/earmuffs,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/item/clothing/glasses/eyepatch,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 8
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/surgery)
|
||||
"dyE" = (
|
||||
@@ -110502,7 +110502,7 @@
|
||||
/area/medical/medbay/central)
|
||||
"dFk" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/obj/item/clothing/head/kitty,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
@@ -111362,7 +111362,7 @@
|
||||
/area/maintenance/department/medical/morgue)
|
||||
"dGw" = (
|
||||
/obj/structure/closet/secure_closet/CMO,
|
||||
/obj/item/clothing/under/rank/nursesuit,
|
||||
/obj/item/clothing/under/rank/medical/doctor/nurse,
|
||||
/obj/item/clothing/head/nursehat,
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 5
|
||||
@@ -113664,7 +113664,7 @@
|
||||
/area/crew_quarters/theatre/abandoned)
|
||||
"dKr" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/under/geisha,
|
||||
/obj/item/clothing/under/costume/geisha,
|
||||
/obj/item/clothing/shoes/sandal,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 1
|
||||
@@ -121170,7 +121170,7 @@
|
||||
/area/library/abandoned)
|
||||
"dYm" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/under/rank/curator,
|
||||
/obj/item/clothing/under/rank/civilian/curator,
|
||||
/obj/effect/spawner/lootdrop/maintenance{
|
||||
lootcount = 2;
|
||||
name = "2maintenance loot spawner"
|
||||
@@ -125929,12 +125929,12 @@
|
||||
dir = 8
|
||||
},
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/chapel/office)
|
||||
"gbV" = (
|
||||
@@ -126052,7 +126052,7 @@
|
||||
/area/science/circuit)
|
||||
"gVS" = (
|
||||
/obj/item/clothing/head/kitty,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/obj/item/clothing/mask/muzzle,
|
||||
/turf/open/floor/plating,
|
||||
/area/crew_quarters/abandoned_gambling_den)
|
||||
@@ -126360,6 +126360,20 @@
|
||||
},
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/science/mixing)
|
||||
"jwo" = (
|
||||
/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
|
||||
},
|
||||
/mob/living/simple_animal/pet/bumbles,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"jBE" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -160698,7 +160712,7 @@ bjt
|
||||
bli
|
||||
bnk
|
||||
boB
|
||||
bnj
|
||||
jwo
|
||||
bnj
|
||||
bnh
|
||||
bvB
|
||||
|
||||
@@ -7053,7 +7053,7 @@
|
||||
/obj/effect/turf_decal/bot,
|
||||
/obj/structure/rack,
|
||||
/obj/item/clothing/gloves/color/brown,
|
||||
/obj/item/clothing/under/overalls,
|
||||
/obj/item/clothing/under/misc/overalls,
|
||||
/obj/item/clothing/mask/gas{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
@@ -9271,7 +9271,7 @@
|
||||
/obj/structure/closet{
|
||||
name = "science locker"
|
||||
},
|
||||
/obj/item/clothing/under/rank/scientist{
|
||||
/obj/item/clothing/under/rank/rnd/scientist{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
@@ -14495,12 +14495,12 @@
|
||||
/obj/structure/closet{
|
||||
name = "skirt closet"
|
||||
},
|
||||
/obj/item/clothing/under/skirt/red{
|
||||
/obj/item/clothing/under/dress/skirt/red{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/clothing/under/skirt/blue,
|
||||
/obj/item/clothing/under/skirt/black{
|
||||
/obj/item/clothing/under/dress/skirt/blue,
|
||||
/obj/item/clothing/under/dress/skirt{
|
||||
pixel_x = -4;
|
||||
pixel_y = -4
|
||||
},
|
||||
@@ -22793,9 +22793,6 @@
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/storage/box/beakers,
|
||||
/obj/item/gun/syringe{
|
||||
pixel_y = 5
|
||||
},
|
||||
/obj/item/reagent_containers/spray/cleaner,
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -22804,6 +22801,7 @@
|
||||
/obj/machinery/light_switch{
|
||||
pixel_y = 24
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/medical/storage)
|
||||
"aKZ" = (
|
||||
@@ -23309,7 +23307,7 @@
|
||||
/area/science/mixing)
|
||||
"aLT" = (
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/rank/bartender/purple{
|
||||
/obj/item/clothing/under/rank/civilian/bartender/purple{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
@@ -27298,11 +27296,11 @@
|
||||
name = "medical locker"
|
||||
},
|
||||
/obj/structure/grille/broken,
|
||||
/obj/item/clothing/under/skirt/blue{
|
||||
/obj/item/clothing/under/dress/skirt/blue{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/clothing/under/rank/medical,
|
||||
/obj/item/clothing/under/rank/medical/doctor,
|
||||
/obj/item/clothing/gloves/color/latex,
|
||||
/obj/item/clothing/mask/surgical,
|
||||
/turf/open/floor/plating,
|
||||
@@ -27635,7 +27633,7 @@
|
||||
pixel_x = -26
|
||||
},
|
||||
/obj/item/reagent_containers/food/snacks/pie/cream,
|
||||
/obj/item/clothing/under/lobster,
|
||||
/obj/item/clothing/under/costume/lobster,
|
||||
/obj/item/clothing/head/lobsterhat,
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -35210,7 +35208,7 @@
|
||||
/obj/structure/closet{
|
||||
name = "kitchen closet"
|
||||
},
|
||||
/obj/item/clothing/under/rank/chef{
|
||||
/obj/item/clothing/under/rank/civilian/chef{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
@@ -41674,7 +41672,7 @@
|
||||
/obj/structure/closet/secure_closet/personal,
|
||||
/obj/item/storage/backpack,
|
||||
/obj/item/storage/backpack/satchel,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/item/clothing/suit/hooded/wintercoat,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
@@ -42355,7 +42353,7 @@
|
||||
/obj/structure/closet{
|
||||
name = "supply locker"
|
||||
},
|
||||
/obj/item/clothing/under/rank/cargotech,
|
||||
/obj/item/clothing/under/rank/cargo/tech,
|
||||
/obj/item/clothing/shoes/sneakers/brown,
|
||||
/obj/effect/spawner/lootdrop/maintenance,
|
||||
/turf/open/floor/plating,
|
||||
@@ -42577,11 +42575,11 @@
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/structure/table,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
/obj/item/clothing/under/suit_jacket/really_black{
|
||||
/obj/item/clothing/under/suit/black_really{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/really_black,
|
||||
/obj/item/clothing/under/suit/black_really,
|
||||
/obj/item/clothing/neck/tie/black{
|
||||
pixel_x = 6
|
||||
},
|
||||
@@ -42749,7 +42747,7 @@
|
||||
/obj/structure/closet/secure_closet/personal,
|
||||
/obj/item/storage/backpack,
|
||||
/obj/item/storage/backpack/satchel,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/item/clothing/suit/hooded/wintercoat,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
@@ -43879,18 +43877,6 @@
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/central)
|
||||
"bqG" = (
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"bqH" = (
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 4
|
||||
@@ -49260,8 +49246,8 @@
|
||||
"byZ" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/structure/closet/wardrobe/black,
|
||||
/obj/item/clothing/under/trendy_fit,
|
||||
/obj/item/clothing/under/trendy_fit,
|
||||
/obj/item/clothing/under/custom/trendy_fit,
|
||||
/obj/item/clothing/under/custom/trendy_fit,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/crew_quarters/locker)
|
||||
"bza" = (
|
||||
@@ -49929,12 +49915,12 @@
|
||||
/obj/structure/closet{
|
||||
name = "suit closet"
|
||||
},
|
||||
/obj/item/clothing/under/lawyer/female{
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/female{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/clothing/under/lawyer/bluesuit,
|
||||
/obj/item/clothing/under/lawyer/red{
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/bluesuit,
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/red{
|
||||
pixel_x = -4;
|
||||
pixel_y = -4
|
||||
},
|
||||
@@ -55137,7 +55123,7 @@
|
||||
/area/security/processing)
|
||||
"bIl" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/rank/security{
|
||||
/obj/item/clothing/under/rank/security/officer{
|
||||
pixel_x = -4
|
||||
},
|
||||
/obj/item/toy/figure/dsquad{
|
||||
@@ -63067,7 +63053,7 @@
|
||||
name = "security locker"
|
||||
},
|
||||
/obj/item/clothing/gloves/color/black,
|
||||
/obj/item/clothing/under/rank/security/skirt,
|
||||
/obj/item/clothing/under/rank/security/officer/skirt,
|
||||
/obj/item/clothing/shoes/jackboots,
|
||||
/obj/structure/grille/broken,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
@@ -80246,7 +80232,7 @@
|
||||
/obj/effect/turf_decal/tile/neutral,
|
||||
/obj/structure/table/wood,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
/obj/item/clothing/under/geisha{
|
||||
/obj/item/clothing/under/costume/geisha{
|
||||
pixel_y = 5
|
||||
},
|
||||
/obj/item/toy/katana,
|
||||
@@ -81105,7 +81091,7 @@
|
||||
name = "engineering locker"
|
||||
},
|
||||
/obj/item/clothing/suit/hazardvest,
|
||||
/obj/item/clothing/under/rank/engineer,
|
||||
/obj/item/clothing/under/rank/engineering/engineer,
|
||||
/obj/item/clothing/shoes/workboots,
|
||||
/obj/effect/decal/cleanable/cobweb/cobweb2,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
@@ -82787,11 +82773,11 @@
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/item/clothing/gloves/color/white,
|
||||
/obj/item/clothing/under/maid{
|
||||
/obj/item/clothing/under/costume/maid{
|
||||
pixel_x = 4;
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/clothing/under/janimaid,
|
||||
/obj/item/clothing/under/rank/civilian/janitor/maid,
|
||||
/obj/item/clothing/accessory/maidapron{
|
||||
pixel_x = -4;
|
||||
pixel_y = -4
|
||||
@@ -87680,7 +87666,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/turf/open/floor/plating{
|
||||
icon_state = "panelscorched"
|
||||
},
|
||||
@@ -88205,7 +88191,7 @@
|
||||
/area/hallway/primary/fore)
|
||||
"uqy" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/item/clothing/under/janimaid,
|
||||
/obj/item/clothing/under/rank/civilian/janitor/maid,
|
||||
/turf/open/floor/plating{
|
||||
icon_state = "platingdmg1"
|
||||
},
|
||||
@@ -88232,6 +88218,19 @@
|
||||
"whw" = (
|
||||
/turf/closed/wall/rust,
|
||||
/area/medical/surgery)
|
||||
"whZ" = (
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 1
|
||||
},
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 1
|
||||
},
|
||||
/mob/living/simple_animal/pet/bumbles,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"wmX" = (
|
||||
/turf/closed/wall/rust,
|
||||
/area/quartermaster/qm)
|
||||
@@ -122394,7 +122393,7 @@ aZd
|
||||
bqh
|
||||
bnJ
|
||||
bpl
|
||||
bqG
|
||||
whZ
|
||||
bsL
|
||||
buw
|
||||
bwH
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -4556,7 +4556,7 @@
|
||||
/area/crew_quarters/fitness/recreation)
|
||||
"aiR" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/sl_suit{
|
||||
/obj/item/clothing/under/suit/sl{
|
||||
desc = "Whoever wears this makes the rules.";
|
||||
name = "referee suit"
|
||||
},
|
||||
@@ -6918,8 +6918,8 @@
|
||||
/area/maintenance/port)
|
||||
"ana" = (
|
||||
/obj/structure/rack,
|
||||
/obj/item/clothing/under/rank/mailman,
|
||||
/obj/item/clothing/under/rank/vice{
|
||||
/obj/item/clothing/under/misc/mailman,
|
||||
/obj/item/clothing/under/misc/vice_officer{
|
||||
pixel_x = 4;
|
||||
pixel_y = -3
|
||||
},
|
||||
@@ -7555,7 +7555,7 @@
|
||||
c_tag = "Brig - Infirmary";
|
||||
dir = 1
|
||||
},
|
||||
/obj/item/clothing/under/rank/medical/purple{
|
||||
/obj/item/clothing/under/rank/medical/doctor/purple{
|
||||
pixel_y = -4
|
||||
},
|
||||
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
|
||||
@@ -8886,7 +8886,7 @@
|
||||
/obj/structure/chair,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/effect/decal/remains/human,
|
||||
/obj/item/clothing/under/soviet,
|
||||
/obj/item/clothing/under/costume/soviet,
|
||||
/obj/effect/decal/cleanable/blood/old,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/port/fore)
|
||||
@@ -9965,7 +9965,7 @@
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
},
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/turf/open/floor/wood,
|
||||
/area/crew_quarters/dorms)
|
||||
"asV" = (
|
||||
@@ -10042,7 +10042,7 @@
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/burgundy,
|
||||
/obj/item/clothing/under/suit/burgundy,
|
||||
/turf/open/floor/carpet,
|
||||
/area/crew_quarters/dorms)
|
||||
"atc" = (
|
||||
@@ -11693,7 +11693,7 @@
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/tan,
|
||||
/obj/item/clothing/under/suit/tan,
|
||||
/turf/open/floor/carpet,
|
||||
/area/crew_quarters/dorms)
|
||||
"awE" = (
|
||||
@@ -13402,11 +13402,11 @@
|
||||
/area/crew_quarters/dorms)
|
||||
"aAe" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/suit_jacket/female{
|
||||
/obj/item/clothing/under/suit/black/skirt{
|
||||
pixel_x = 3;
|
||||
pixel_y = 1
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/really_black{
|
||||
/obj/item/clothing/under/suit/black_really{
|
||||
pixel_x = -2
|
||||
},
|
||||
/obj/machinery/light/small{
|
||||
@@ -13418,9 +13418,9 @@
|
||||
},
|
||||
/obj/item/clothing/accessory/waistcoat,
|
||||
/obj/item/clothing/suit/toggle/lawyer/black,
|
||||
/obj/item/clothing/under/suit_jacket/red,
|
||||
/obj/item/clothing/under/suit/red,
|
||||
/obj/item/clothing/neck/tie/black,
|
||||
/obj/item/clothing/under/lawyer/blacksuit,
|
||||
/obj/item/clothing/under/suit/black,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 4
|
||||
},
|
||||
@@ -14755,7 +14755,7 @@
|
||||
/obj/machinery/airalarm{
|
||||
pixel_y = 23
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/navy,
|
||||
/obj/item/clothing/under/suit/navy,
|
||||
/turf/open/floor/carpet,
|
||||
/area/crew_quarters/dorms)
|
||||
"aCM" = (
|
||||
@@ -16789,7 +16789,7 @@
|
||||
/area/crew_quarters/dorms)
|
||||
"aGP" = (
|
||||
/obj/structure/closet/secure_closet/personal/cabinet,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/turf/open/floor/wood,
|
||||
/area/crew_quarters/dorms)
|
||||
"aGQ" = (
|
||||
@@ -23603,7 +23603,7 @@
|
||||
/area/maintenance/starboard/fore)
|
||||
"aUX" = (
|
||||
/obj/structure/closet/secure_closet/personal,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
|
||||
/obj/item/clothing/suit/hooded/wintercoat,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
@@ -26182,7 +26182,7 @@
|
||||
/area/ai_monitored/turret_protected/ai)
|
||||
"aZU" = (
|
||||
/obj/structure/closet/secure_closet/personal,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/item/clothing/suit/hooded/wintercoat,
|
||||
/obj/item/clothing/shoes/winterboots,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
@@ -26345,7 +26345,7 @@
|
||||
/area/maintenance/port/fore)
|
||||
"bah" = (
|
||||
/obj/structure/closet/secure_closet/personal,
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/structure/sign/map/right{
|
||||
desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown).";
|
||||
icon_state = "map-right-MS";
|
||||
@@ -27278,7 +27278,7 @@
|
||||
/obj/machinery/light/small{
|
||||
dir = 1
|
||||
},
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
/obj/item/clothing/under/misc/assistantformal,
|
||||
/obj/structure/sign/map/left{
|
||||
desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown).";
|
||||
icon_state = "map-left-MS";
|
||||
@@ -29748,21 +29748,21 @@
|
||||
name = "formal uniform crate";
|
||||
req_access_txt = "3"
|
||||
},
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/under/rank/security/officer/formal,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/suit/armor/navyblue,
|
||||
/obj/item/clothing/under/rank/warden/navyblue,
|
||||
/obj/item/clothing/under/rank/security/warden/formal,
|
||||
/obj/item/clothing/suit/armor/vest/warden/navyblue,
|
||||
/obj/item/clothing/under/rank/head_of_security/navyblue,
|
||||
/obj/item/clothing/under/rank/security/head_of_security/formal,
|
||||
/obj/item/clothing/suit/armor/hos/navyblue,
|
||||
/obj/item/clothing/head/beret/sec/navyofficer,
|
||||
/obj/item/clothing/head/beret/sec/navyofficer,
|
||||
@@ -46039,7 +46039,7 @@
|
||||
},
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/shoes/laceup,
|
||||
/obj/item/clothing/under/suit_jacket/really_black,
|
||||
/obj/item/clothing/under/suit/black_really,
|
||||
/obj/item/clothing/glasses/sunglasses,
|
||||
/obj/machinery/camera{
|
||||
c_tag = "Corporate Showroom"
|
||||
@@ -47330,7 +47330,7 @@
|
||||
/obj/machinery/newscaster{
|
||||
pixel_x = -30
|
||||
},
|
||||
/obj/item/clothing/under/suit_jacket/red,
|
||||
/obj/item/clothing/under/suit/red,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
/obj/item/book/codex_gigas,
|
||||
/turf/open/floor/engine/cult,
|
||||
@@ -54133,7 +54133,6 @@
|
||||
/obj/item/clothing/glasses/hud/health,
|
||||
/obj/item/clothing/glasses/hud/health,
|
||||
/obj/item/clothing/glasses/hud/health,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/structure/window/reinforced{
|
||||
dir = 1
|
||||
},
|
||||
@@ -54146,6 +54145,7 @@
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 8
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/storage)
|
||||
"cds" = (
|
||||
@@ -59207,13 +59207,13 @@
|
||||
},
|
||||
/obj/item/clothing/suit/straight_jacket,
|
||||
/obj/item/clothing/mask/muzzle,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/item/clothing/glasses/eyepatch,
|
||||
/obj/item/clothing/glasses/sunglasses/blindfold,
|
||||
/obj/item/clothing/ears/earmuffs,
|
||||
/obj/item/storage/belt/medical{
|
||||
pixel_y = 2
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel/white/side,
|
||||
/area/medical/surgery)
|
||||
"cnu" = (
|
||||
@@ -61843,7 +61843,7 @@
|
||||
"csa" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/restraints/handcuffs/cable/white,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/starboard/aft)
|
||||
"csb" = (
|
||||
@@ -72433,12 +72433,12 @@
|
||||
pixel_x = -26
|
||||
},
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/turf/open/floor/plasteel/grimy,
|
||||
/area/chapel/office)
|
||||
"cLW" = (
|
||||
@@ -82724,6 +82724,14 @@
|
||||
/obj/structure/grille,
|
||||
/turf/open/floor/plating/airless,
|
||||
/area/space/nearstation)
|
||||
"soe" = (
|
||||
/obj/effect/turf_decal/tile/green,
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 4
|
||||
},
|
||||
/mob/living/simple_animal/pet/bumbles,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"soh" = (
|
||||
/obj/structure/cable/yellow{
|
||||
icon_state = "4-8"
|
||||
@@ -117831,7 +117839,7 @@ bSV
|
||||
bUk
|
||||
bVv
|
||||
bWQ
|
||||
bWQ
|
||||
soe
|
||||
bWQ
|
||||
caL
|
||||
ccv
|
||||
|
||||
+4195
-5142
File diff suppressed because it is too large
Load Diff
@@ -12660,7 +12660,7 @@
|
||||
/area/maintenance/port/fore)
|
||||
"avQ" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/rank/security,
|
||||
/obj/item/clothing/under/rank/security/officer,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/structure/cable/white,
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
|
||||
@@ -13692,7 +13692,7 @@
|
||||
/obj/structure/closet/secure_closet/personal/cabinet,
|
||||
/obj/item/clothing/suit/jacket/letterman_nanotrasen,
|
||||
/obj/item/clothing/suit/toggle/lawyer,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/obj/machinery/light/small{
|
||||
dir = 1
|
||||
},
|
||||
@@ -13716,7 +13716,7 @@
|
||||
/obj/item/clothing/head/fedora{
|
||||
icon_state = "detective"
|
||||
},
|
||||
/obj/item/clothing/under/geisha,
|
||||
/obj/item/clothing/under/costume/geisha,
|
||||
/obj/machinery/light/small{
|
||||
dir = 1
|
||||
},
|
||||
@@ -17365,7 +17365,7 @@
|
||||
/obj/item/clothing/head/fedora{
|
||||
icon_state = "detective"
|
||||
},
|
||||
/obj/item/clothing/under/lawyer/female,
|
||||
/obj/item/clothing/under/rank/civilian/lawyer/female,
|
||||
/obj/machinery/light/small,
|
||||
/turf/open/floor/wood,
|
||||
/area/crew_quarters/dorms)
|
||||
@@ -17387,7 +17387,7 @@
|
||||
},
|
||||
/obj/item/clothing/suit/toggle/lawyer/black,
|
||||
/obj/item/clothing/head/fedora,
|
||||
/obj/item/clothing/under/blacktango,
|
||||
/obj/item/clothing/under/dress/blacktango,
|
||||
/obj/machinery/light/small,
|
||||
/turf/open/floor/plasteel/grimy,
|
||||
/area/crew_quarters/dorms)
|
||||
@@ -27696,12 +27696,12 @@
|
||||
pixel_y = 3
|
||||
},
|
||||
/obj/item/storage/box/syringes,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/item/reagent_containers/hypospray/CMO,
|
||||
/obj/item/storage/belt/medical,
|
||||
/obj/item/storage/belt/medical,
|
||||
/obj/item/clothing/neck/stethoscope,
|
||||
/obj/item/clothing/neck/stethoscope,
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/medical/medbay/zone3)
|
||||
"aXR" = (
|
||||
|
||||
@@ -18191,7 +18191,7 @@
|
||||
/obj/structure/chair/wood/normal{
|
||||
dir = 8
|
||||
},
|
||||
/obj/item/clothing/under/janimaid,
|
||||
/obj/item/clothing/under/rank/civilian/janitor/maid,
|
||||
/turf/open/floor/wood{
|
||||
icon_state = "wood-broken"
|
||||
},
|
||||
@@ -20830,7 +20830,7 @@
|
||||
/area/janitor)
|
||||
"aXP" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/clothing/under/maid,
|
||||
/obj/item/clothing/under/costume/maid,
|
||||
/obj/item/key/janitor,
|
||||
/obj/item/grenade/clusterbuster/cleaner,
|
||||
/obj/item/grenade/chem_grenade/cleaner,
|
||||
@@ -22504,14 +22504,6 @@
|
||||
/obj/effect/turf_decal/tile/green,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"bbe" = (
|
||||
/obj/structure/chair/stool,
|
||||
/obj/effect/turf_decal/tile/green,
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"bbg" = (
|
||||
/obj/effect/landmark/start/cook,
|
||||
/obj/machinery/atmospherics/components/unary/vent_pump/on,
|
||||
@@ -22599,9 +22591,9 @@
|
||||
"bbt" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/clothing/under/sundress,
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/blacktango,
|
||||
/obj/item/clothing/under/dress/sundress,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/obj/item/clothing/under/dress/blacktango,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/crew_quarters/bar)
|
||||
"bbu" = (
|
||||
@@ -22661,7 +22653,7 @@
|
||||
pixel_x = 6;
|
||||
pixel_y = -5
|
||||
},
|
||||
/obj/item/clothing/under/rank/mailman,
|
||||
/obj/item/clothing/under/misc/mailman,
|
||||
/obj/item/clothing/head/mailman,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/quartermaster/office)
|
||||
@@ -35727,7 +35719,7 @@
|
||||
icon_state = "2-4"
|
||||
},
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/rank/nursesuit,
|
||||
/obj/item/clothing/under/rank/medical/doctor/nurse,
|
||||
/obj/item/clothing/head/nursehat,
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
/obj/machinery/airalarm{
|
||||
@@ -39520,7 +39512,6 @@
|
||||
"bMK" = (
|
||||
/obj/item/soap/nanotrasen,
|
||||
/obj/item/clothing/neck/stethoscope,
|
||||
/obj/item/gun/syringe,
|
||||
/obj/structure/table/glass,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 1
|
||||
@@ -39529,6 +39520,7 @@
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 8
|
||||
},
|
||||
/obj/item/gun/syringe/dart,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/medical/medbay/central)
|
||||
"bMM" = (
|
||||
@@ -51429,10 +51421,10 @@
|
||||
/turf/open/floor/carpet,
|
||||
/area/chapel/main/monastery)
|
||||
"cwz" = (
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/item/clothing/under/misc/burial,
|
||||
/obj/structure/table/wood,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/chapel/main/monastery)
|
||||
@@ -55848,7 +55840,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hallway/secondary/exit/departure_lounge)
|
||||
"klV" = (
|
||||
/obj/item/clothing/under/rank/clown/sexy,
|
||||
/obj/item/clothing/under/rank/civilian/clown/sexy,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/maintenance/department/crew_quarters/dorms)
|
||||
"kmd" = (
|
||||
@@ -59851,6 +59843,15 @@
|
||||
},
|
||||
/turf/open/floor/plating,
|
||||
/area/science/xenobiology)
|
||||
"ttS" = (
|
||||
/obj/structure/chair/stool,
|
||||
/obj/effect/turf_decal/tile/green,
|
||||
/obj/effect/turf_decal/tile/green{
|
||||
dir = 8
|
||||
},
|
||||
/mob/living/simple_animal/pet/bumbles,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/hydroponics)
|
||||
"tue" = (
|
||||
/obj/structure/cable{
|
||||
icon_state = "2-4"
|
||||
@@ -90071,7 +90072,7 @@ aRN
|
||||
aXZ
|
||||
aYQ
|
||||
aXS
|
||||
bbe
|
||||
ttS
|
||||
bcd
|
||||
bdo
|
||||
ben
|
||||
|
||||
@@ -1711,14 +1711,14 @@
|
||||
/obj/structure/table,
|
||||
/obj/item/paper,
|
||||
/obj/item/pen,
|
||||
/obj/item/clothing/under/schoolgirl,
|
||||
/obj/item/clothing/under/costume/schoolgirl,
|
||||
/turf/open/floor/holofloor,
|
||||
/area/holodeck/rec_center/school)
|
||||
"eD" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/paper,
|
||||
/obj/item/pen,
|
||||
/obj/item/clothing/under/schoolgirl/green,
|
||||
/obj/item/clothing/under/costume/schoolgirl/green,
|
||||
/turf/open/floor/holofloor,
|
||||
/area/holodeck/rec_center/school)
|
||||
"eE" = (
|
||||
@@ -1832,14 +1832,14 @@
|
||||
/obj/structure/table,
|
||||
/obj/item/paper,
|
||||
/obj/item/pen,
|
||||
/obj/item/clothing/under/schoolgirl/orange,
|
||||
/obj/item/clothing/under/costume/schoolgirl/orange,
|
||||
/turf/open/floor/holofloor,
|
||||
/area/holodeck/rec_center/school)
|
||||
"eU" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/paper,
|
||||
/obj/item/pen,
|
||||
/obj/item/clothing/under/schoolgirl/red,
|
||||
/obj/item/clothing/under/costume/schoolgirl/red,
|
||||
/turf/open/floor/holofloor,
|
||||
/area/holodeck/rec_center/school)
|
||||
"eV" = (
|
||||
@@ -1934,7 +1934,7 @@
|
||||
/obj/structure/table,
|
||||
/obj/item/paper,
|
||||
/obj/item/pen,
|
||||
/obj/item/clothing/under/schoolgirl,
|
||||
/obj/item/clothing/under/costume/schoolgirl,
|
||||
/obj/item/toy/katana,
|
||||
/turf/open/floor/holofloor,
|
||||
/area/holodeck/rec_center/school)
|
||||
@@ -6839,8 +6839,8 @@
|
||||
/area/centcom/ferry)
|
||||
"pN" = (
|
||||
/obj/structure/closet/secure_closet/personal/cabinet,
|
||||
/obj/item/clothing/under/rank/curator/treasure_hunter,
|
||||
/obj/item/clothing/under/skirt/black,
|
||||
/obj/item/clothing/under/rank/civilian/curator/treasure_hunter,
|
||||
/obj/item/clothing/under/dress/skirt,
|
||||
/obj/item/clothing/under/shorts/black,
|
||||
/obj/item/clothing/under/pants/track,
|
||||
/obj/item/clothing/accessory/armband/deputy,
|
||||
@@ -17017,11 +17017,11 @@
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/centcom/holding)
|
||||
"OU" = (
|
||||
/obj/item/clothing/under/jabroni,
|
||||
/obj/item/clothing/under/geisha,
|
||||
/obj/item/clothing/under/kilt,
|
||||
/obj/item/clothing/under/costume/jabroni,
|
||||
/obj/item/clothing/under/costume/geisha,
|
||||
/obj/item/clothing/under/costume/kilt,
|
||||
/obj/structure/closet,
|
||||
/obj/item/clothing/under/roman,
|
||||
/obj/item/clothing/under/costume/roman,
|
||||
/turf/open/indestructible/hotelwood,
|
||||
/area/centcom/holding)
|
||||
"OV" = (
|
||||
|
||||
@@ -520,7 +520,7 @@
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/structure/table,
|
||||
/obj/item/storage/bag/tray,
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/shuttle/escape)
|
||||
"bg" = (
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
},
|
||||
/obj/item/clothing/head/collectable/pirate,
|
||||
/obj/item/clothing/suit/pirate,
|
||||
/obj/item/clothing/under/pirate,
|
||||
/obj/item/clothing/under/costume/pirate,
|
||||
/obj/item/clothing/shoes/jackboots,
|
||||
/obj/item/clothing/head/bandana,
|
||||
/turf/open/floor/plasteel/dark/side{
|
||||
@@ -387,7 +387,7 @@
|
||||
},
|
||||
/obj/item/clothing/head/collectable/pirate,
|
||||
/obj/item/clothing/suit/pirate,
|
||||
/obj/item/clothing/under/pirate,
|
||||
/obj/item/clothing/under/costume/pirate,
|
||||
/obj/item/clothing/shoes/jackboots,
|
||||
/obj/item/clothing/head/bandana,
|
||||
/obj/effect/turf_decal/tile/red{
|
||||
|
||||
@@ -909,11 +909,11 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/item/storage/wallet/random,
|
||||
/obj/item/clothing/under/rank/centcom_officer{
|
||||
/obj/item/clothing/under/rank/centcom/officer{
|
||||
desc = "A badge on the arm indicates that it's meant to be worn by CentCom recovery teams. This one seems dusty and clearly hasn't been cleaned in some time.";
|
||||
name = "\improper dusty old CentCom jumpsuit"
|
||||
},
|
||||
/obj/item/clothing/under/rank/centcom_commander{
|
||||
/obj/item/clothing/under/rank/centcom/commander{
|
||||
desc = "A badge on the arm indicates that it's meant to be worn by CentCom recovery teams. This one seems dusty and clearly hasn't been cleaned in some time.";
|
||||
name = "\improper dusty old CentCom jumpsuit"
|
||||
},
|
||||
|
||||
@@ -36,39 +36,37 @@
|
||||
#define CAN_CLIMAX_WITH (1<<7)
|
||||
#define GENITAL_CAN_AROUSE (1<<8)
|
||||
|
||||
#define COCK_SIZE_MIN 1
|
||||
#define COCK_SIZE_MAX 20
|
||||
|
||||
#define DEF_VAGINA_SHAPE "Human"
|
||||
|
||||
#define COCK_SIZE_DEF 6
|
||||
|
||||
#define COCK_DIAMETER_RATIO_MAX 0.42
|
||||
#define COCK_DIAMETER_RATIO_DEF 0.25
|
||||
#define COCK_DIAMETER_RATIO_MIN 0.15
|
||||
|
||||
#define KNOT_GIRTH_RATIO_MAX 3
|
||||
#define KNOT_GIRTH_RATIO_DEF 2.1
|
||||
#define KNOT_GIRTH_RATIO_MIN 1.25
|
||||
#define DEF_COCK_SHAPE "Human"
|
||||
|
||||
#define BALLS_VOLUME_BASE 25
|
||||
#define BALLS_VOLUME_MULT 1
|
||||
|
||||
#define DEF_BALLS_SHAPE "Single"
|
||||
|
||||
#define BALLS_SIZE_MIN 1
|
||||
#define BALLS_SIZE_DEF 2
|
||||
#define BALLS_SIZE_MAX 3
|
||||
|
||||
#define BALLS_SACK_SIZE_MIN 1
|
||||
#define BALLS_SACK_SIZE_DEF 8
|
||||
#define BALLS_SACK_SIZE_MAX 40
|
||||
|
||||
#define CUM_RATE 2 // holy shit what a really shitty define name - relates to units per arbitrary measure of time?
|
||||
#define CUM_RATE_MULT 1
|
||||
#define CUM_EFFICIENCY 1 //amount of nutrition required per life()
|
||||
|
||||
#define EGG_GIRTH_MIN 1//inches
|
||||
#define EGG_GIRTH_DEF 6
|
||||
#define EGG_GIRTH_MAX 16
|
||||
|
||||
#define BREASTS_VOLUME_BASE 50 //base volume for the reagents in the breasts, multiplied by the size then multiplier. 50u for A cups, 850u for HH cups.
|
||||
#define BREASTS_VOLUME_MULT 1 //global multiplier for breast volume.
|
||||
|
||||
#define BREASTS_SIZE_DEF "c" //lowercase cause those sprite accessory don't use uppercased letters.
|
||||
|
||||
#define DEF_BREASTS_SHAPE "Pair"
|
||||
|
||||
#define MILK_RATE 5
|
||||
#define MILK_RATE_MULT 1
|
||||
#define MILK_EFFICIENCY 1
|
||||
@@ -83,8 +81,6 @@
|
||||
//Citadel istypes
|
||||
#define isgenital(A) (istype(A, /obj/item/organ/genital))
|
||||
|
||||
#define isborer(A) (istype(A, /mob/living/simple_animal/borer))
|
||||
|
||||
#define CITADEL_MENTOR_OOC_COLOUR "#224724"
|
||||
|
||||
//xenobio console upgrade stuff
|
||||
@@ -92,14 +88,6 @@
|
||||
#define XENOBIO_UPGRADE_SLIMEBASIC 2
|
||||
#define XENOBIO_UPGRADE_SLIMEADV 4
|
||||
|
||||
//stamina stuff
|
||||
#define STAMINA_SOFTCRIT 100 //softcrit for stamina damage. prevents standing up, prevents performing actions that cost stamina, etc, but doesn't force a rest or stop movement
|
||||
#define STAMINA_CRIT 140 //crit for stamina damage. forces a rest, and stops movement until stamina goes back to stamina softcrit
|
||||
#define STAMINA_SOFTCRIT_TRADITIONAL 0 //same as STAMINA_SOFTCRIT except for the more traditional health calculations
|
||||
#define STAMINA_CRIT_TRADITIONAL -40 //ditto, but for STAMINA_CRIT
|
||||
|
||||
#define CRAWLUNDER_DELAY 30 //Delay for crawling under a standing mob
|
||||
|
||||
//Citadel toggles because bitflag memes
|
||||
#define MEDIHOUND_SLEEPER (1<<0)
|
||||
#define EATING_NOISES (1<<1)
|
||||
@@ -117,8 +105,6 @@
|
||||
#define TOGGLES_CITADEL (EATING_NOISES|DIGESTION_NOISES|BREAST_ENLARGEMENT|PENIS_ENLARGEMENT)
|
||||
|
||||
//component stuff
|
||||
#define COMSIG_COMBAT_TOGGLED "combatmode_toggled" //called by combat mode toggle on all equipped items. args: (mob/user, combatmode)
|
||||
|
||||
#define COMSIG_VORE_TOGGLED "voremode_toggled" // totally not copypasta
|
||||
|
||||
//belly sound pref things
|
||||
|
||||
@@ -29,7 +29,54 @@
|
||||
#define EFFECT_DROWSY "drowsy"
|
||||
#define EFFECT_JITTER "jitter"
|
||||
|
||||
// /mob/living/combat_flags
|
||||
#define CAN_TOGGLE_COMBAT_MODE(mob) FORCE_BOOLEAN((mob.stat == CONSCIOUS) && !(mob.combat_flags & COMBAT_FLAG_HARD_STAMCRIT))
|
||||
|
||||
/// Default combat flags for those affected by ((stamina combat))
|
||||
#define COMBAT_FLAGS_DEFAULT NONE
|
||||
/// Default combat flags for everyone else (so literally everyone but humans)
|
||||
#define COMBAT_FLAGS_STAMSYSTEM_EXEMPT (COMBAT_FLAG_SPRINT_ACTIVE | COMBAT_FLAG_COMBAT_ACTIVE | COMBAT_FLAG_SPRINT_TOGGLED | COMBAT_FLAG_COMBAT_TOGGLED)
|
||||
/// Default combat flags for those only affected by sprint (so just silicons)
|
||||
#define COMBAT_FLAGS_STAMEXEMPT_YESSPRINT (COMBAT_FLAG_COMBAT_ACTIVE | COMBAT_FLAG_COMBAT_TOGGLED)
|
||||
|
||||
/// The user wants combat mode on
|
||||
#define COMBAT_FLAG_COMBAT_TOGGLED (1<<0)
|
||||
/// The user wants sprint mode on
|
||||
#define COMBAT_FLAG_SPRINT_TOGGLED (1<<1)
|
||||
/// Combat mode is currently active
|
||||
#define COMBAT_FLAG_COMBAT_ACTIVE (1<<2)
|
||||
/// Sprint is currently active
|
||||
#define COMBAT_FLAG_SPRINT_ACTIVE (1<<3)
|
||||
/// Currently attempting to crawl under someone
|
||||
#define COMBAT_FLAG_ATTEMPTING_CRAWL (1<<4)
|
||||
/// Currently stamcritted
|
||||
#define COMBAT_FLAG_HARD_STAMCRIT (1<<5)
|
||||
/// Currently attempting to resist up from the ground
|
||||
#define COMBAT_FLAG_RESISTING_REST (1<<6)
|
||||
/// Intentionally resting
|
||||
#define COMBAT_FLAG_INTENTIONALLY_RESTING (1<<7)
|
||||
/// Currently stamcritted but not as violently
|
||||
#define COMBAT_FLAG_SOFT_STAMCRIT (1<<8)
|
||||
|
||||
// Helpers for getting someone's stamcrit state. Cast to living.
|
||||
#define NOT_STAMCRIT 0
|
||||
#define SOFT_STAMCRIT 1
|
||||
#define HARD_STAMCRIT 2
|
||||
|
||||
// Stamcrit check helpers
|
||||
#define IS_STAMCRIT(mob) (CHECK_STAMCRIT(mob) != NOT_STAMCRIT)
|
||||
#define CHECK_STAMCRIT(mob) ((mob.combat_flags & COMBAT_FLAG_HARD_STAMCRIT)? HARD_STAMCRIT : ((mob.combat_flags & COMBAT_FLAG_SOFT_STAMCRIT)? SOFT_STAMCRIT : NOT_STAMCRIT))
|
||||
|
||||
//stamina stuff
|
||||
#define STAMINA_SOFTCRIT 100 //softcrit for stamina damage. prevents standing up, prevents performing actions that cost stamina, etc, but doesn't force a rest or stop movement
|
||||
#define STAMINA_CRIT 140 //crit for stamina damage. forces a rest, and stops movement until stamina goes back to stamina softcrit
|
||||
#define STAMINA_SOFTCRIT_TRADITIONAL 0 //same as STAMINA_SOFTCRIT except for the more traditional health calculations
|
||||
#define STAMINA_CRIT_TRADITIONAL -40 //ditto, but for STAMINA_CRIT
|
||||
|
||||
#define CRAWLUNDER_DELAY 30 //Delay for crawling under a standing mob
|
||||
|
||||
//Bitflags defining which status effects could be or are inflicted on a mob
|
||||
// This is a bit out of date/inaccurate in light of all the new status effects and is probably pending rework.
|
||||
#define CANSTUN (1<<0)
|
||||
#define CANKNOCKDOWN (1<<1)
|
||||
#define CANUNCONSCIOUS (1<<2)
|
||||
@@ -203,3 +250,5 @@ GLOBAL_LIST_INIT(shove_disarming_types, typecacheof(list(
|
||||
#define BULLET_ACT_BLOCK "BLOCK" //It's a blocked hit, whatever that means in the context of the thing it's hitting.
|
||||
#define BULLET_ACT_FORCE_PIERCE "PIERCE" //It pierces through the object regardless of the bullet being piercing by default.
|
||||
#define BULLET_ACT_TURF "TURF" //It hit us but it should hit something on the same turf too. Usually used for turfs.
|
||||
|
||||
|
||||
|
||||
@@ -186,6 +186,8 @@
|
||||
#define COMSIG_LIVING_REVIVE "living_revive" //from base of mob/living/revive() (full_heal, admin_revive)
|
||||
#define COMSIG_MOB_CLIENT_LOGIN "comsig_mob_client_login" //sent when a mob/login() finishes: (client)
|
||||
#define COMSIG_LIVING_GUN_PROCESS_FIRE "living_gun_process_fire" //from base of /obj/item/gun/proc/process_fire(): (atom/target, params, zone_override)
|
||||
#define COMSIG_LIVING_COMBAT_ENABLED "combatmode_enabled" //from base of mob/living/enable_combat_mode() (was_forced)
|
||||
#define COMSIG_LIVING_COMBAT_DISABLED "combatmode_disabled" //from base of mob/living/disable_combat_mode() (was_forced)
|
||||
|
||||
//ALL OF THESE DO NOT TAKE INTO ACCOUNT WHETHER AMOUNT IS 0 OR LOWER AND ARE SENT REGARDLESS!
|
||||
#define COMSIG_LIVING_STATUS_STUN "living_stun" //from base of mob/living/Stun() (amount, update, ignore)
|
||||
@@ -195,6 +197,7 @@
|
||||
#define COMSIG_LIVING_STATUS_UNCONSCIOUS "living_unconscious" //from base of mob/living/Unconscious() (amount, update, ignore)
|
||||
#define COMSIG_LIVING_STATUS_SLEEP "living_sleeping" //from base of mob/living/Sleeping() (amount, update, ignore)
|
||||
#define COMSIG_LIVING_STATUS_DAZE "living_daze" //from base of mob/living/Daze() (amount, update, ignore)
|
||||
#define COMSIG_LIVING_STATUS_STAGGER "living_stagger" //from base of mob/living/Stagger() (amount, update, ignore)
|
||||
#define COMPONENT_NO_STUN 1 //For all of them
|
||||
|
||||
// /mob/living/carbon signals
|
||||
|
||||
@@ -201,4 +201,7 @@
|
||||
#define RULE_OF_THREE(a, b, x) ((a*x)/b)
|
||||
// )
|
||||
|
||||
#define MANHATTAN_DISTANCE(a, b) (abs(a.x - b.x) + abs(a.y - b.y))
|
||||
#define MANHATTAN_DISTANCE(a, b) (abs(a.x - b.x) + abs(a.y - b.y))
|
||||
|
||||
/// Make sure something is a boolean TRUE/FALSE 1/0 value, since things like bitfield & bitflag doesn't always give 1s and 0s.
|
||||
#define FORCE_BOOLEAN(x) ((x)? TRUE : FALSE)
|
||||
|
||||
@@ -53,6 +53,9 @@
|
||||
|
||||
#define STATUS_EFFECT_SLEEPING /datum/status_effect/incapacitating/sleeping //the affected is asleep
|
||||
|
||||
/// Blocks sprint
|
||||
#define STATUS_EFFECT_STAGGERED /datum/status_effect/staggered
|
||||
|
||||
#define STATUS_EFFECT_TASED_WEAK /datum/status_effect/electrode //not as crippling, just slows down
|
||||
|
||||
#define STATUS_EFFECT_TASED /datum/status_effect/electrode/no_combat_mode //the affected has been tased, preventing fine muscle control
|
||||
|
||||
@@ -131,6 +131,8 @@
|
||||
#define TRAIT_UNINTELLIGIBLE_SPEECH "unintelligible-speech"
|
||||
#define TRAIT_SOOTHED_THROAT "soothed-throat"
|
||||
#define TRAIT_LAW_ENFORCEMENT_METABOLISM "law-enforcement-metabolism"
|
||||
#define TRAIT_QUICK_CARRY "quick-carry"
|
||||
#define TRAIT_QUICKER_CARRY "quicker-carry"
|
||||
#define TRAIT_STRONG_GRABBER "strong_grabber"
|
||||
#define TRAIT_CALCIUM_HEALER "calcium_healer"
|
||||
#define TRAIT_MAGIC_CHOKE "magic_choke"
|
||||
@@ -160,6 +162,15 @@
|
||||
|
||||
#define TRAIT_SWIMMING "swimming" //only applied by /datum/element/swimming, for checking
|
||||
|
||||
/**
|
||||
* COMBAT MODE/SPRINT MODE TRAITS
|
||||
*/
|
||||
|
||||
/// Prevents combat mode from being active.
|
||||
#define TRAIT_COMBAT_MODE_LOCKED "combatmode_locked"
|
||||
/// Prevents sprinting from being active.
|
||||
#define TRAIT_SPRINT_LOCKED "sprint_locked"
|
||||
|
||||
//non-mob traits
|
||||
#define TRAIT_PARALYSIS "paralysis" //Used for limb-based paralysis, where replacing the limb will fix it
|
||||
|
||||
@@ -224,6 +235,7 @@
|
||||
#define GHOSTROLE_TRAIT "ghostrole"
|
||||
#define APHRO_TRAIT "aphro"
|
||||
#define BLOODSUCKER_TRAIT "bloodsucker"
|
||||
#define CLOTHING_TRAIT "clothing" //used for quirky carrygloves
|
||||
|
||||
// unique trait sources, still defines
|
||||
#define STATUE_MUTE "statue"
|
||||
|
||||
@@ -60,7 +60,6 @@ GLOBAL_LIST_EMPTY(genitals_list)
|
||||
GLOBAL_LIST_EMPTY(cock_shapes_list)
|
||||
GLOBAL_LIST_EMPTY(gentlemans_organ_names)
|
||||
GLOBAL_LIST_EMPTY(balls_shapes_list)
|
||||
GLOBAL_LIST_EMPTY(breasts_size_list)
|
||||
GLOBAL_LIST_EMPTY(breasts_shapes_list)
|
||||
GLOBAL_LIST_EMPTY(vagina_shapes_list)
|
||||
GLOBAL_LIST_INIT(cum_into_containers_list, list(/obj/item/reagent_containers/food/snacks/pie)) //Yer fuggin snowflake name list jfc
|
||||
@@ -139,18 +138,6 @@ GLOBAL_VAR_INIT(miscreants_allowed, FALSE)
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/mob/living/carbon/proc/has_ovipositor()
|
||||
var/obj/item/organ/genital/G = getorganslot(ORGAN_SLOT_PENIS)
|
||||
if(G && istype(G, /obj/item/organ/genital/ovipositor))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/mob/living/carbon/human/proc/has_eggsack()
|
||||
var/obj/item/organ/genital/G = getorganslot(ORGAN_SLOT_TESTICLES)
|
||||
if(G && istype(G, /obj/item/organ/genital/eggsack))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/mob/living/carbon/proc/is_groin_exposed(list/L)
|
||||
if(!L)
|
||||
L = get_equipped_items()
|
||||
|
||||
@@ -54,7 +54,6 @@
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/vagina, GLOB.vagina_shapes_list)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/breasts, GLOB.breasts_shapes_list)
|
||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list)
|
||||
GLOB.breasts_size_list = list ("a", "b", "c", "d", "e") //We need the list to choose from initialized, but it's no longer a sprite_accessory thing.
|
||||
GLOB.gentlemans_organ_names = list("phallus", "willy", "dick", "prick", "member", "tool", "gentleman's organ",
|
||||
"cock", "wang", "knob", "dong", "joystick", "pecker", "johnson", "weenie", "tadger", "schlong", "thirsty ferret",
|
||||
"baloney pony", "schlanger", "Mutton dagger", "old blind bob","Hanging Johnny", "fishing rod", "Tally whacker", "polly rocket",
|
||||
|
||||
+6
-19
@@ -181,35 +181,21 @@
|
||||
"genitals_use_skintone" = FALSE,
|
||||
"has_cock" = FALSE,
|
||||
"cock_shape" = pick(GLOB.cock_shapes_list),
|
||||
"cock_length" = 6,
|
||||
"cock_length" = COCK_SIZE_DEF,
|
||||
"cock_diameter_ratio" = COCK_DIAMETER_RATIO_DEF,
|
||||
"cock_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"has_sheath" = FALSE,
|
||||
"sheath_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"has_balls" = FALSE,
|
||||
"balls_internal" = FALSE,
|
||||
"balls_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"balls_amount" = 2,
|
||||
"balls_sack_size" = BALLS_SACK_SIZE_DEF,
|
||||
"balls_size" = BALLS_SIZE_DEF,
|
||||
"balls_shape" = "Single",
|
||||
"balls_shape" = DEF_BALLS_SHAPE,
|
||||
"balls_cum_rate" = CUM_RATE,
|
||||
"balls_cum_mult" = CUM_RATE_MULT,
|
||||
"balls_efficiency" = CUM_EFFICIENCY,
|
||||
"has_ovi" = FALSE,
|
||||
"ovi_shape" = "knotted",
|
||||
"ovi_length" = 6,
|
||||
"ovi_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"has_eggsack" = FALSE,
|
||||
"eggsack_internal" = TRUE,
|
||||
"eggsack_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"eggsack_size" = BALLS_SACK_SIZE_DEF,
|
||||
"eggsack_egg_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"eggsack_egg_size" = EGG_GIRTH_DEF,
|
||||
"has_breasts" = FALSE,
|
||||
"breasts_color" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"),
|
||||
"breasts_size" = pick(GLOB.breasts_size_list),
|
||||
"breasts_shape" = "Pair",
|
||||
"breasts_size" = pick(CONFIG_GET(keyed_list/breasts_cups_prefs)),
|
||||
"breasts_shape" = DEF_BREASTS_SHAPE,
|
||||
"breasts_producing" = FALSE,
|
||||
"has_vag" = FALSE,
|
||||
"vag_shape" = pick(GLOB.vagina_shapes_list),
|
||||
@@ -224,7 +210,8 @@
|
||||
"ipc_screen" = snowflake_ipc_antenna_list ? pick(snowflake_ipc_antenna_list) : "None",
|
||||
"ipc_antenna" = "None",
|
||||
"flavor_text" = "",
|
||||
"meat_type" = "Mammalian"
|
||||
"meat_type" = "Mammalian",
|
||||
"body_model" = MALE
|
||||
))
|
||||
|
||||
/proc/random_hair_style(gender)
|
||||
|
||||
@@ -238,5 +238,16 @@ GLOBAL_LIST_INIT(bitfields, list(
|
||||
"MOBILITY_PULL" = MOBILITY_PULL,
|
||||
"MOBILITY_HOLD" = MOBILITY_HOLD,
|
||||
"MOBILITY_RESIST" = MOBILITY_RESIST
|
||||
),
|
||||
"combat_flags" = list(
|
||||
"COMBAT_FLAG_COMBAT_TOGGLED" = COMBAT_FLAG_COMBAT_TOGGLED,
|
||||
"COMBAT_FLAG_SPRINT_TOGGLED" = COMBAT_FLAG_SPRINT_TOGGLED,
|
||||
"COMBAT_FLAG_COMBAT_ACTIVE" = COMBAT_FLAG_COMBAT_ACTIVE,
|
||||
"COMBAT_FLAG_SPRINT_ACTIVE" = COMBAT_FLAG_SPRINT_ACTIVE,
|
||||
"COMBAT_FLAG_ATTEMPTING_CRAWL" = COMBAT_FLAG_ATTEMPTING_CRAWL,
|
||||
"COMBAT_FLAG_HARD_STAMCRIT" = COMBAT_FLAG_HARD_STAMCRIT,
|
||||
"COMBAT_FLAG_SOFT_STAMCRIT" = COMBAT_FLAG_SOFT_STAMCRIT,
|
||||
"COMBAT_FLAG_INTENTIONALLY_RESTING" = COMBAT_FLAG_INTENTIONALLY_RESTING,
|
||||
"COMBAT_FLAG_RESISTING_REST" = COMBAT_FLAG_RESISTING_REST
|
||||
)
|
||||
))
|
||||
|
||||
@@ -36,7 +36,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list(
|
||||
/obj/item/clothing/head/welding = 1,
|
||||
/obj/item/clothing/mask/gas = 15,
|
||||
/obj/item/clothing/suit/hazardvest = 1,
|
||||
/obj/item/clothing/under/rank/vice = 1,
|
||||
/obj/item/clothing/under/misc/vice_officer = 1,
|
||||
/obj/item/clothing/suit/hooded/flashsuit = 2,
|
||||
/obj/item/clothing/accessory/medal/greytide = 1,
|
||||
/obj/item/assembly/prox_sensor = 4,
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
//CITADEL CHANGES - sprint button
|
||||
using = new /obj/screen/sprintbutton
|
||||
using.icon = tg_ui_icon_to_cit_ui(ui_style)
|
||||
using.icon_state = (owner.sprinting ? "act_sprint_on" : "act_sprint")
|
||||
using.icon_state = ((owner.combat_flags & COMBAT_FLAG_SPRINT_ACTIVE) ? "act_sprint_on" : "act_sprint")
|
||||
using.screen_loc = ui_movi
|
||||
using.hud = src
|
||||
static_inventory += using
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
if(item_flags & NO_ATTACK_CHAIN_SOFT_STAMCRIT)
|
||||
if(isliving(user))
|
||||
var/mob/living/L = user
|
||||
if(L.getStaminaLoss() >= STAMINA_SOFTCRIT)
|
||||
if(IS_STAMCRIT(L))
|
||||
to_chat(L, "<span class='warning'>You are too exhausted to swing [src]!</span>")
|
||||
return
|
||||
if(tool_behaviour && target.tool_act(user, src, tool_behaviour))
|
||||
@@ -58,7 +58,7 @@
|
||||
if(item_flags & NOBLUDGEON)
|
||||
return
|
||||
|
||||
if(user.getStaminaLoss() >= STAMINA_SOFTCRIT) // CIT CHANGE - makes it impossible to attack in stamina softcrit
|
||||
if(IS_STAMCRIT(user)) // CIT CHANGE - makes it impossible to attack in stamina softcrit
|
||||
to_chat(user, "<span class='warning'>You're too exhausted.</span>") // CIT CHANGE - ditto
|
||||
return // CIT CHANGE - ditto
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
return
|
||||
if(item_flags & NOBLUDGEON)
|
||||
return
|
||||
if(user.getStaminaLoss() >= STAMINA_SOFTCRIT) // CIT CHANGE - makes it impossible to attack in stamina softcrit
|
||||
if(IS_STAMCRIT(user)) // CIT CHANGE - makes it impossible to attack in stamina softcrit
|
||||
to_chat(user, "<span class='warning'>You're too exhausted.</span>") // CIT CHANGE - ditto
|
||||
return // CIT CHANGE - ditto
|
||||
user.adjustStaminaLossBuffered(getweight()*1.2)//CIT CHANGE - makes attacking things cause stamina loss
|
||||
@@ -109,10 +109,8 @@
|
||||
/mob/living/attacked_by(obj/item/I, mob/living/user)
|
||||
//CIT CHANGES START HERE - combatmode and resting checks
|
||||
var/totitemdamage = I.force
|
||||
if(iscarbon(user))
|
||||
var/mob/living/carbon/tempcarb = user
|
||||
if(!tempcarb.combatmode)
|
||||
totitemdamage *= 0.5
|
||||
if(!(user.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE))
|
||||
totitemdamage *= 0.5
|
||||
if(!CHECK_MOBILITY(user, MOBILITY_STAND))
|
||||
totitemdamage *= 0.5
|
||||
//CIT CHANGES END HERE
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
var/override = 0
|
||||
|
||||
for(var/datum/mutation/human/HM in dna.mutations)
|
||||
override += HM.on_attack_hand(src, A, proximity)
|
||||
override += HM.on_attack_hand(A, proximity)
|
||||
|
||||
if(override)
|
||||
return
|
||||
@@ -95,7 +95,7 @@
|
||||
return
|
||||
|
||||
for(var/datum/mutation/human/HM in dna.mutations)
|
||||
HM.on_ranged_attack(src, A, mouseparams)
|
||||
HM.on_ranged_attack(A, mouseparams)
|
||||
|
||||
if(isturf(A) && get_dist(src,A) <= 1)
|
||||
src.Move_Pulled(A)
|
||||
|
||||
@@ -423,3 +423,16 @@
|
||||
config_entry_value = 3
|
||||
|
||||
/datum/config_entry/flag/suicide_allowed
|
||||
|
||||
/datum/config_entry/keyed_list/breasts_cups_prefs
|
||||
key_mode = KEY_MODE_TEXT
|
||||
value_mode = VALUE_MODE_FLAG
|
||||
config_entry_value = list("a", "b", "c", "d", "e") //keep these lowercase
|
||||
|
||||
/datum/config_entry/number/penis_min_inches_prefs
|
||||
config_entry_value = 1
|
||||
min_val = 0
|
||||
|
||||
/datum/config_entry/number/penis_max_inches_prefs
|
||||
config_entry_value = 20
|
||||
min_val = 0
|
||||
|
||||
@@ -257,8 +257,7 @@ SUBSYSTEM_DEF(air)
|
||||
T.add_atom_colour("#00ff00", TEMPORARY_COLOUR_PRIORITY)
|
||||
#endif
|
||||
T.excited = TRUE
|
||||
active_turfs |= T
|
||||
SSair_turfs.currentrun |= T
|
||||
active_turfs[T] = SSair_turfs.currentrun[T] = TRUE
|
||||
if(blockchanges && T.excited_group)
|
||||
T.excited_group.garbage_collect()
|
||||
add_to_react_queue(T)
|
||||
@@ -274,10 +273,9 @@ SUBSYSTEM_DEF(air)
|
||||
|
||||
/datum/controller/subsystem/air/proc/add_to_react_queue(turf/open/T)
|
||||
if(istype(T) && T.air)
|
||||
turf_react_queue |= T
|
||||
turf_react_queue[T] = TRUE
|
||||
if(currentpart == SSAIR_REACTQUEUE)
|
||||
currentrun |= T
|
||||
return
|
||||
currentrun[T] = TRUE
|
||||
|
||||
/datum/controller/subsystem/air/proc/remove_from_react_queue(turf/open/T)
|
||||
turf_react_queue -= T
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
PROCESSING_SUBSYSTEM_DEF(status_effects)
|
||||
wait = 1
|
||||
flags = SS_TICKER
|
||||
@@ -69,12 +69,12 @@ SUBSYSTEM_DEF(traumas)
|
||||
|
||||
"spiders" = typecacheof(list(/obj/structure/spider)),
|
||||
|
||||
"security" = typecacheof(list(/obj/item/clothing/under/rank/security, /obj/item/clothing/under/rank/warden,
|
||||
/obj/item/clothing/under/rank/head_of_security, /obj/item/clothing/under/rank/det,
|
||||
"security" = typecacheof(list(/obj/item/clothing/under/rank/security/officer, /obj/item/clothing/under/rank/security/warden,
|
||||
/obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/security/detective,
|
||||
/obj/item/melee/baton, /obj/item/gun/energy/taser, /obj/item/restraints/handcuffs,
|
||||
/obj/machinery/door/airlock/security, /obj/effect/hallucination/simple/securitron)),
|
||||
|
||||
"clowns" = typecacheof(list(/obj/item/clothing/under/rank/clown, /obj/item/clothing/shoes/clown_shoes,
|
||||
"clowns" = typecacheof(list(/obj/item/clothing/under/rank/civilian/clown, /obj/item/clothing/shoes/clown_shoes,
|
||||
/obj/item/clothing/mask/gas/clown_hat, /obj/item/instrument/bikehorn,
|
||||
/obj/item/pda/clown, /obj/item/grown/bananapeel)),
|
||||
|
||||
@@ -87,15 +87,15 @@ SUBSYSTEM_DEF(traumas)
|
||||
"skeletons" = typecacheof(list(/obj/item/organ/tongue/bone, /obj/item/clothing/suit/armor/bone, /obj/item/stack/sheet/bone,
|
||||
/obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton,
|
||||
/obj/effect/decal/remains/human)),
|
||||
"conspiracies" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/head_of_security,
|
||||
/obj/item/clothing/under/rank/chief_engineer, /obj/item/clothing/under/rank/chief_medical_officer,
|
||||
/obj/item/clothing/under/rank/head_of_personnel, /obj/item/clothing/under/rank/research_director,
|
||||
/obj/item/clothing/under/rank/head_of_security/grey, /obj/item/clothing/under/rank/head_of_security/alt,
|
||||
/obj/item/clothing/under/rank/research_director/alt, /obj/item/clothing/under/rank/research_director/turtleneck,
|
||||
/obj/item/clothing/under/captainparade, /obj/item/clothing/under/hosparademale, /obj/item/clothing/under/hosparadefem,
|
||||
"conspiracies" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/security/head_of_security,
|
||||
/obj/item/clothing/under/rank/engineering/chief_engineer, /obj/item/clothing/under/rank/medical/chief_medical_officer,
|
||||
/obj/item/clothing/under/rank/civilian/head_of_personnel, /obj/item/clothing/under/rank/rnd/research_director,
|
||||
/obj/item/clothing/under/rank/security/head_of_security/grey, /obj/item/clothing/under/rank/security/head_of_security/alt,
|
||||
/obj/item/clothing/under/rank/rnd/research_director/alt, /obj/item/clothing/under/rank/rnd/research_director/turtleneck,
|
||||
/obj/item/clothing/under/rank/captain/parade, /obj/item/clothing/under/rank/security/head_of_security/parade, /obj/item/clothing/under/rank/security/head_of_security/parade/female,
|
||||
/obj/item/clothing/head/helmet/abductor, /obj/item/clothing/suit/armor/abductor/vest, /obj/item/abductor/baton,
|
||||
/obj/item/storage/belt/military/abductor, /obj/item/gun/energy/alien, /obj/item/abductor/silencer,
|
||||
/obj/item/abductor/gizmo, /obj/item/clothing/under/rank/centcom_officer,
|
||||
/obj/item/abductor/gizmo, /obj/item/clothing/under/rank/centcom/officer,
|
||||
/obj/item/clothing/suit/space/hardsuit/ert, /obj/item/clothing/suit/space/hardsuit/ert/sec,
|
||||
/obj/item/clothing/suit/space/hardsuit/ert/engi, /obj/item/clothing/suit/space/hardsuit/ert/med,
|
||||
/obj/item/clothing/suit/space/hardsuit/deathsquad, /obj/item/clothing/head/helmet/space/hardsuit/deathsquad,
|
||||
@@ -103,8 +103,8 @@ SUBSYSTEM_DEF(traumas)
|
||||
"robots" = typecacheof(list(/obj/machinery/computer/upload, /obj/item/aiModule/, /obj/machinery/recharge_station,
|
||||
/obj/item/aicard, /obj/item/deactivated_swarmer, /obj/effect/mob_spawn/swarmer)),
|
||||
|
||||
"doctors" = typecacheof(list(/obj/item/clothing/under/rank/medical, /obj/item/clothing/under/rank/chemist,
|
||||
/obj/item/clothing/under/rank/nursesuit, /obj/item/clothing/under/rank/chief_medical_officer,
|
||||
"doctors" = typecacheof(list(/obj/item/clothing/under/rank/medical/doctor, /obj/item/clothing/under/rank/medical/chemist,
|
||||
/obj/item/clothing/under/rank/medical/doctor/nurse, /obj/item/clothing/under/rank/medical/chief_medical_officer,
|
||||
/obj/item/reagent_containers/syringe, /obj/item/reagent_containers/pill/, /obj/item/reagent_containers/hypospray,
|
||||
/obj/item/storage/firstaid, /obj/item/storage/pill_bottle, /obj/item/healthanalyzer,
|
||||
/obj/structure/sign/departments/medbay, /obj/machinery/door/airlock/medical, /obj/machinery/sleeper,
|
||||
@@ -112,10 +112,10 @@ SUBSYSTEM_DEF(traumas)
|
||||
/obj/item/retractor, /obj/item/hemostat, /obj/item/cautery, /obj/item/surgicaldrill, /obj/item/scalpel, /obj/item/circular_saw,
|
||||
/obj/item/clothing/suit/bio_suit/plaguedoctorsuit, /obj/item/clothing/head/plaguedoctorhat, /obj/item/clothing/mask/gas/plaguedoctor)),
|
||||
|
||||
"authority" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/head_of_personnel,
|
||||
/obj/item/clothing/under/rank/head_of_security, /obj/item/clothing/under/rank/research_director,
|
||||
/obj/item/clothing/under/rank/chief_medical_officer, /obj/item/clothing/under/rank/chief_engineer,
|
||||
/obj/item/clothing/under/rank/centcom_officer, /obj/item/clothing/under/rank/centcom_commander,
|
||||
"authority" = typecacheof(list(/obj/item/clothing/under/rank/captain, /obj/item/clothing/under/rank/civilian/head_of_personnel,
|
||||
/obj/item/clothing/under/rank/security/head_of_security, /obj/item/clothing/under/rank/rnd/research_director,
|
||||
/obj/item/clothing/under/rank/medical/chief_medical_officer, /obj/item/clothing/under/rank/engineering/chief_engineer,
|
||||
/obj/item/clothing/under/rank/centcom/officer, /obj/item/clothing/under/rank/centcom/commander,
|
||||
/obj/item/melee/classic_baton/telescopic, /obj/item/card/id/silver, /obj/item/card/id/gold,
|
||||
/obj/item/card/id/captains_spare, /obj/item/card/id/centcom, /obj/machinery/door/airlock/command)),
|
||||
|
||||
@@ -131,7 +131,7 @@ SUBSYSTEM_DEF(traumas)
|
||||
/obj/item/clothing/suit/wizrobe, /obj/item/clothing/head/wizard, /obj/item/spellbook, /obj/item/staff,
|
||||
/obj/item/clothing/suit/space/hardsuit/shielded/wizard, /obj/item/clothing/suit/space/hardsuit/wizard,
|
||||
/obj/item/gun/magic/staff, /obj/item/gun/magic/wand,
|
||||
/obj/item/nullrod, /obj/item/clothing/under/rank/chaplain)),
|
||||
/obj/item/nullrod, /obj/item/clothing/under/rank/civilian/chaplain)),
|
||||
|
||||
"aliens" = typecacheof(list(/obj/item/clothing/mask/facehugger, /obj/item/organ/body_egg/alien_embryo,
|
||||
/obj/structure/alien, /obj/item/toy/toy_xeno,
|
||||
@@ -145,21 +145,21 @@ SUBSYSTEM_DEF(traumas)
|
||||
|
||||
"birds" = typecacheof(list(/obj/item/clothing/mask/gas/plaguedoctor, /obj/item/reagent_containers/food/snacks/cracker,
|
||||
/obj/item/clothing/suit/chickensuit, /obj/item/clothing/head/chicken,
|
||||
/obj/item/clothing/suit/toggle/owlwings, /obj/item/clothing/under/owl, /obj/item/clothing/mask/gas/owl_mask,
|
||||
/obj/item/clothing/under/griffin, /obj/item/clothing/shoes/griffin, /obj/item/clothing/head/griffin,
|
||||
/obj/item/clothing/suit/toggle/owlwings, /obj/item/clothing/under/costume/owl, /obj/item/clothing/mask/gas/owl_mask,
|
||||
/obj/item/clothing/under/costume/griffin, /obj/item/clothing/shoes/griffin, /obj/item/clothing/head/griffin,
|
||||
/obj/item/clothing/head/helmet/space/freedom, /obj/item/clothing/suit/space/freedom)),
|
||||
|
||||
"anime" = typecacheof(list(/obj/item/clothing/under/schoolgirl, /obj/item/katana, /obj/item/reagent_containers/food/snacks/sashimi, /obj/item/reagent_containers/food/snacks/chawanmushi,
|
||||
"anime" = typecacheof(list(/obj/item/clothing/under/costume/schoolgirl, /obj/item/katana, /obj/item/reagent_containers/food/snacks/sashimi, /obj/item/reagent_containers/food/snacks/chawanmushi,
|
||||
/obj/item/reagent_containers/food/drinks/bottle/sake, /obj/item/throwing_star, /obj/item/clothing/head/kitty/genuine, /obj/item/clothing/suit/space/space_ninja,
|
||||
/obj/item/clothing/mask/gas/space_ninja, /obj/item/clothing/shoes/space_ninja, /obj/item/clothing/gloves/space_ninja, /obj/item/twohanded/vibro_weapon,
|
||||
/obj/item/nullrod/scythe/vibro, /obj/item/energy_katana, /obj/item/toy/katana, /obj/item/nullrod/claymore/katana, /obj/structure/window/paperframe, /obj/structure/mineral_door/paperframe)),
|
||||
|
||||
"mimes" = typecacheof(list(/obj/item/pda/mime, /obj/item/clothing/under/rank/mime, /obj/item/clothing/mask/gas/mime,
|
||||
"mimes" = typecacheof(list(/obj/item/pda/mime, /obj/item/clothing/under/rank/civilian/mime, /obj/item/clothing/mask/gas/mime,
|
||||
/obj/item/clothing/head/frenchberet, /obj/item/clothing/suit/suspenders, /obj/item/reagent_containers/food/drinks/bottle/bottleofnothing,
|
||||
/obj/item/storage/backpack/mime, /obj/item/reagent_containers/food/snacks/grown/banana/mime,
|
||||
/obj/item/grown/bananapeel/mimanapeel, /obj/item/cartridge/virus/mime, /obj/item/clothing/shoes/sneakers/mime,
|
||||
/obj/item/bedsheet/mime, /obj/item/reagent_containers/food/snacks/burger/mime, /obj/item/clothing/head/beret, /obj/item/clothing/mask/gas/sexymime,
|
||||
/obj/item/clothing/under/sexymime, /obj/item/toy/figure/mime, /obj/item/toy/crayon/mime, /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced, /obj/mecha/combat/reticence)),
|
||||
/obj/item/clothing/under/rank/civilian/mime/sexy, /obj/item/toy/figure/mime, /obj/item/toy/crayon/mime, /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/silenced, /obj/mecha/combat/reticence)),
|
||||
|
||||
"cats" = typecacheof(list(/obj/item/organ/ears/cat, /obj/item/organ/tail/cat, /obj/item/laser_pointer, /obj/item/toy/cattoy, /obj/item/clothing/head/kitty,
|
||||
/obj/item/clothing/head/collectable/kitty, /obj/item/melee/chainofcommand/tailwhip/kitty, /obj/item/stack/sheet/animalhide/cat)),
|
||||
|
||||
@@ -47,9 +47,9 @@
|
||||
|
||||
/datum/brain_trauma/special/imaginary_friend/proc/get_ghost()
|
||||
set waitfor = FALSE
|
||||
var/list/mob/dead/observer/candidates = pollCandidatesForMob("Do you want to play as [owner]'s imaginary friend?", ROLE_PAI, null, null, 75, friend, POLL_IGNORE_IMAGINARYFRIEND)
|
||||
var/list/candidates = pollCandidatesForMob("Do you want to play as [owner]'s imaginary friend?", ROLE_PAI, null, null, 75, friend, POLL_IGNORE_IMAGINARYFRIEND)
|
||||
if(LAZYLEN(candidates))
|
||||
var/mob/dead/observer/C = pick(candidates)
|
||||
var/mob/C = pick(candidates)
|
||||
C.transfer_ckey(friend, FALSE)
|
||||
friend_initialized = TRUE
|
||||
else
|
||||
|
||||
@@ -27,9 +27,9 @@
|
||||
|
||||
/datum/brain_trauma/severe/split_personality/proc/get_ghost()
|
||||
set waitfor = FALSE
|
||||
var/list/mob/dead/observer/candidates = pollCandidatesForMob("Do you want to play as [owner]'s split personality?", ROLE_PAI, null, null, 75, stranger_backseat, POLL_IGNORE_SPLITPERSONALITY)
|
||||
var/list/mob/candidates = pollCandidatesForMob("Do you want to play as [owner]'s split personality?", ROLE_PAI, null, null, 75, stranger_backseat, POLL_IGNORE_SPLITPERSONALITY)
|
||||
if(LAZYLEN(candidates))
|
||||
var/mob/dead/observer/C = pick(candidates)
|
||||
var/mob/C = pick(candidates)
|
||||
C.transfer_ckey(stranger_backseat, FALSE)
|
||||
log_game("[key_name(stranger_backseat)] became [key_name(owner)]'s split personality.")
|
||||
message_admins("[ADMIN_LOOKUPFLW(stranger_backseat)] became [ADMIN_LOOKUPFLW(owner)]'s split personality.")
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
/datum/crafting_recipe/mummy/body
|
||||
name = "Mummification Bandages (Body)"
|
||||
result = /obj/item/clothing/under/mummy
|
||||
result = /obj/item/clothing/under/costume/mummy
|
||||
reqs = list(/obj/item/stack/sheet/cloth = 5)
|
||||
|
||||
/datum/crafting_recipe/lizardhat
|
||||
|
||||
@@ -278,7 +278,7 @@
|
||||
result = /obj/item/banner/command/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/captainparade = 1)
|
||||
/obj/item/clothing/under/rank/captain/parade = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/engineering_banner
|
||||
@@ -286,7 +286,7 @@
|
||||
result = /obj/item/banner/engineering/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/rank/engineer = 1)
|
||||
/obj/item/clothing/under/rank/engineering/engineer = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/cargo_banner
|
||||
@@ -294,7 +294,7 @@
|
||||
result = /obj/item/banner/cargo/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/rank/cargotech = 1)
|
||||
/obj/item/clothing/under/rank/cargo/tech = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/science_banner
|
||||
@@ -302,7 +302,7 @@
|
||||
result = /obj/item/banner/science/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/rank/scientist = 1)
|
||||
/obj/item/clothing/under/rank/rnd/scientist = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/medical_banner
|
||||
@@ -310,7 +310,7 @@
|
||||
result = /obj/item/banner/medical/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/rank/medical = 1)
|
||||
/obj/item/clothing/under/rank/medical/doctor = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/security_banner
|
||||
@@ -318,7 +318,7 @@
|
||||
result = /obj/item/banner/security/mundane
|
||||
time = 40
|
||||
reqs = list(/obj/item/stack/rods = 2,
|
||||
/obj/item/clothing/under/rank/security = 1)
|
||||
/obj/item/clothing/under/rank/security/officer = 1)
|
||||
category = CAT_MISC
|
||||
|
||||
/datum/crafting_recipe/bloodsucker/vassalrack
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
/datum/component/wearertargeting/phantomthief
|
||||
dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS
|
||||
signals = list(COMSIG_COMBAT_TOGGLED)
|
||||
signals = list(COMSIG_LIVING_COMBAT_ENABLED)
|
||||
proctype = .proc/handlefilterstuff
|
||||
var/filter_x
|
||||
var/filter_y
|
||||
|
||||
@@ -76,9 +76,9 @@
|
||||
/datum/disease/transformation/proc/replace_banned_player(var/mob/living/new_mob) // This can run well after the mob has been transferred, so need a handle on the new mob to kill it if needed.
|
||||
set waitfor = FALSE
|
||||
|
||||
var/list/mob/dead/observer/candidates = pollCandidatesForMob("Do you want to play as [affected_mob.name]?", bantype, null, bantype, 50, affected_mob)
|
||||
var/list/mob/candidates = pollCandidatesForMob("Do you want to play as [affected_mob.name]?", bantype, null, bantype, 50, affected_mob)
|
||||
if(LAZYLEN(candidates))
|
||||
var/mob/dead/observer/C = pick(candidates)
|
||||
var/mob/C = pick(candidates)
|
||||
to_chat(affected_mob, "Your mob has been taken over by a ghost! Appeal your job ban if you want to avoid this in the future!")
|
||||
message_admins("[key_name_admin(C)] has taken control of ([key_name_admin(affected_mob)]) to replace a jobbaned player.")
|
||||
affected_mob.ghostize(0)
|
||||
|
||||
+4
-4
@@ -412,13 +412,13 @@
|
||||
|
||||
switch(deconstruct_block(getblock(dna.uni_identity, DNA_GENDER_BLOCK), 4))
|
||||
if(G_MALE)
|
||||
gender = MALE
|
||||
set_gender(MALE, TRUE)
|
||||
if(G_FEMALE)
|
||||
gender = FEMALE
|
||||
set_gender(FEMALE, TRUE)
|
||||
if(G_PLURAL)
|
||||
gender = PLURAL
|
||||
set_gender(PLURAL, TRUE)
|
||||
else
|
||||
gender = NEUTER
|
||||
set_gender(NEUTER, TRUE)
|
||||
|
||||
/mob/living/carbon/human/updateappearance(icon_update=1, mutcolor_update=0, mutations_overlay_update=0)
|
||||
..()
|
||||
|
||||
+1
-2
@@ -95,8 +95,7 @@
|
||||
SStgui.on_transfer(current, new_character)
|
||||
if(iscarbon(current))
|
||||
var/mob/living/carbon/C = current
|
||||
if(C.combatmode)
|
||||
C.toggle_combat_mode(TRUE, TRUE)
|
||||
C.disable_intentional_combat_mode(TRUE)
|
||||
if(!language_holder)
|
||||
var/datum/language_holder/mob_holder = new_character.get_language_holder(shadow = FALSE)
|
||||
language_holder = mob_holder.copy(src)
|
||||
|
||||
@@ -51,45 +51,46 @@
|
||||
if(copymut && istype(copymut, /datum/mutation/human))
|
||||
copy_mutation(copymut)
|
||||
|
||||
/datum/mutation/human/proc/on_acquiring(mob/living/carbon/human/owner)
|
||||
if(!owner || !istype(owner) || owner.stat == DEAD || (src in owner.dna.mutations))
|
||||
/datum/mutation/human/proc/on_acquiring(mob/living/carbon/human/H)
|
||||
if(!H || !istype(H) || H.stat == DEAD || (src in H.dna.mutations))
|
||||
return TRUE
|
||||
if(species_allowed.len && !species_allowed.Find(owner.dna.species.id))
|
||||
if(species_allowed.len && !species_allowed.Find(H.dna.species.id))
|
||||
return TRUE
|
||||
if(health_req && owner.health < health_req)
|
||||
if(health_req && H.health < health_req)
|
||||
return TRUE
|
||||
if(limb_req && !owner.get_bodypart(limb_req))
|
||||
if(limb_req && !H.get_bodypart(limb_req))
|
||||
return TRUE
|
||||
dna = owner.dna
|
||||
owner = H
|
||||
dna = H.dna
|
||||
dna.mutations += src
|
||||
if(text_gain_indication)
|
||||
to_chat(owner, text_gain_indication)
|
||||
to_chat(H, text_gain_indication)
|
||||
if(visual_indicators.len)
|
||||
var/list/mut_overlay = list(get_visual_indicator(owner))
|
||||
if(owner.overlays_standing[layer_used])
|
||||
mut_overlay = owner.overlays_standing[layer_used]
|
||||
mut_overlay |= get_visual_indicator(owner)
|
||||
owner.remove_overlay(layer_used)
|
||||
owner.overlays_standing[layer_used] = mut_overlay
|
||||
owner.apply_overlay(layer_used)
|
||||
var/list/mut_overlay = list(get_visual_indicator())
|
||||
if(H.overlays_standing[layer_used])
|
||||
mut_overlay = H.overlays_standing[layer_used]
|
||||
mut_overlay |= get_visual_indicator()
|
||||
H.remove_overlay(layer_used)
|
||||
H.overlays_standing[layer_used] = mut_overlay
|
||||
H.apply_overlay(layer_used)
|
||||
|
||||
grant_spell(owner)
|
||||
grant_spell()
|
||||
if(!modified)
|
||||
addtimer(CALLBACK(src, .proc/modify, 5)) //gonna want children calling ..() to run first
|
||||
|
||||
/datum/mutation/human/proc/get_visual_indicator(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/proc/get_visual_indicator()
|
||||
return
|
||||
|
||||
/datum/mutation/human/proc/on_attack_hand(mob/living/carbon/human/owner, atom/target, proximity)
|
||||
/datum/mutation/human/proc/on_attack_hand(atom/target, proximity)
|
||||
return
|
||||
|
||||
/datum/mutation/human/proc/on_ranged_attack(mob/living/carbon/human/owner, atom/target)
|
||||
/datum/mutation/human/proc/on_ranged_attack(atom/target, mouseparams)
|
||||
return
|
||||
|
||||
/datum/mutation/human/proc/on_move(mob/living/carbon/human/owner, new_loc)
|
||||
/datum/mutation/human/proc/on_move(atom/new_loc)
|
||||
return
|
||||
|
||||
/datum/mutation/human/proc/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/proc/on_life()
|
||||
return
|
||||
|
||||
/datum/mutation/human/proc/on_losing(mob/living/carbon/human/owner)
|
||||
@@ -172,7 +173,7 @@
|
||||
else
|
||||
qdel(src)
|
||||
|
||||
/datum/mutation/human/proc/grant_spell(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/proc/grant_spell()
|
||||
if(!ispath(power) || !owner)
|
||||
return FALSE
|
||||
|
||||
@@ -180,4 +181,4 @@
|
||||
power.action_background_icon_state = "bg_tech_blue_on"
|
||||
power.panel = "Genetic"
|
||||
owner.AddSpell(power)
|
||||
return TRUE
|
||||
return TRUE
|
||||
@@ -111,7 +111,7 @@
|
||||
energy_coeff = 1
|
||||
synchronizer_coeff = 1
|
||||
|
||||
/datum/mutation/human/void/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/void/on_life()
|
||||
if(!isturf(owner.loc))
|
||||
return
|
||||
if(prob((0.5+((100-dna.stability)/20))) * GET_MUTATION_SYNCHRONIZER(src)) //very rare, but enough to annoy you hopefully. +0.5 probability for every 10 points lost in stability
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
if(!(type in visual_indicators))
|
||||
visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "antenna", -FRONT_MUTATIONS_LAYER+1))//-MUTATIONS_LAYER+1
|
||||
|
||||
/datum/mutation/human/antenna/get_visual_indicator(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/antenna/get_visual_indicator()
|
||||
return visual_indicators[type][1]
|
||||
|
||||
/datum/mutation/human/mindreader
|
||||
@@ -104,5 +104,5 @@
|
||||
if(!(type in visual_indicators))
|
||||
visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "antenna", -FRONT_MUTATIONS_LAYER+1))
|
||||
|
||||
/datum/mutation/human/mindreader/get_visual_indicator(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/mindreader/get_visual_indicator()
|
||||
return visual_indicators[type][1]
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
synchronizer_coeff = 1
|
||||
power_coeff = 1
|
||||
|
||||
/datum/mutation/human/epilepsy/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/epilepsy/on_life()
|
||||
if(prob(1 * GET_MUTATION_SYNCHRONIZER(src)) && owner.stat == CONSCIOUS)
|
||||
owner.visible_message("<span class='danger'>[owner] starts having a seizure!</span>", "<span class='userdanger'>You have a seizure!</span>")
|
||||
owner.Unconscious(200 * GET_MUTATION_POWER(src))
|
||||
@@ -57,7 +57,7 @@
|
||||
synchronizer_coeff = 1
|
||||
power_coeff = 1
|
||||
|
||||
/datum/mutation/human/cough/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/cough/on_life()
|
||||
if(prob(5 * GET_MUTATION_SYNCHRONIZER(src)) && owner.stat == CONSCIOUS)
|
||||
owner.drop_all_held_items()
|
||||
owner.emote("cough")
|
||||
@@ -118,7 +118,7 @@
|
||||
text_gain_indication = "<span class='danger'>You twitch.</span>"
|
||||
synchronizer_coeff = 1
|
||||
|
||||
/datum/mutation/human/tourettes/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/tourettes/on_life()
|
||||
if(prob(10 * GET_MUTATION_SYNCHRONIZER(src)) && owner.stat == CONSCIOUS && !owner.IsStun())
|
||||
owner.Stun(200)
|
||||
switch(rand(1, 3))
|
||||
@@ -212,7 +212,7 @@
|
||||
synchronizer_coeff = 1
|
||||
power_coeff = 1
|
||||
|
||||
/datum/mutation/human/fire/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/fire/on_life()
|
||||
if(prob((1+(100-dna.stability)/10)) * GET_MUTATION_SYNCHRONIZER(src))
|
||||
owner.adjust_fire_stacks(2 * GET_MUTATION_POWER(src))
|
||||
owner.IgniteMob()
|
||||
@@ -268,7 +268,7 @@
|
||||
text_gain_indication = "<span class='danger'>You feel screams echo through your mind...</span>"
|
||||
text_lose_indication = "<span class'notice'>The screaming in your mind fades.</span>"
|
||||
|
||||
/datum/mutation/human/paranoia/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/paranoia/on_life()
|
||||
if(prob(5) && owner.stat == CONSCIOUS)
|
||||
owner.emote("scream")
|
||||
owner.jitteriness = min(max(0, owner.jitteriness + 5), 30)
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
return
|
||||
owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY
|
||||
|
||||
/datum/mutation/human/chameleon/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/chameleon/on_life()
|
||||
owner.alpha = max(0, owner.alpha - 25)
|
||||
|
||||
/datum/mutation/human/chameleon/on_move(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/chameleon/on_move(atom/new_loc)
|
||||
owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY
|
||||
|
||||
/datum/mutation/human/chameleon/on_attack_hand(mob/living/carbon/human/owner, atom/target, proximity)
|
||||
/datum/mutation/human/chameleon/on_attack_hand(atom/target, proximity)
|
||||
if(proximity) //stops tk from breaking chameleon
|
||||
owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY
|
||||
return
|
||||
|
||||
@@ -11,10 +11,6 @@
|
||||
if(findtext(A, "[mutation1]") && findtext(A, "[mutation2]"))
|
||||
return GLOB.mutation_recipes[A]
|
||||
|
||||
/datum/generecipe/x_ray
|
||||
required = "/datum/mutation/human/thermal; /datum/mutation/human/radioactive"
|
||||
result = /datum/mutation/human/thermal/x_ray
|
||||
|
||||
/datum/generecipe/shock
|
||||
required = "/datum/mutation/human/insulated; /datum/mutation/human/radioactive"
|
||||
result = SHOCKTOUCH
|
||||
@@ -29,4 +25,4 @@
|
||||
|
||||
/datum/generecipe/tonguechem
|
||||
required = "/datum/mutation/human/tongue_spike; /datum/mutation/human/stimmed"
|
||||
result = TONGUESPIKECHEM
|
||||
result = TONGUESPIKECHEM
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "hulk", /datum/mood_event/hulk)
|
||||
RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech)
|
||||
|
||||
/datum/mutation/human/hulk/on_attack_hand(mob/living/carbon/human/owner,atom/target, proximity)
|
||||
/datum/mutation/human/hulk/on_attack_hand(atom/target, proximity)
|
||||
if(proximity) //no telekinetic hulk attack
|
||||
return target.attack_hulk(owner)
|
||||
|
||||
/datum/mutation/human/hulk/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/hulk/on_life()
|
||||
if(owner.health < 0)
|
||||
on_losing(owner)
|
||||
to_chat(owner, "<span class='danger'>You suddenly feel very weak.</span>")
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
instability = 5
|
||||
difficulty = 8
|
||||
|
||||
/datum/mutation/human/radioactive/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/radioactive/on_life()
|
||||
radiation_pulse(owner, 20)
|
||||
|
||||
/datum/mutation/human/radioactive/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
if(!(type in visual_indicators))
|
||||
visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "fire", -MUTATIONS_LAYER))
|
||||
|
||||
/datum/mutation/human/space_adaptation/get_visual_indicator(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/space_adaptation/get_visual_indicator()
|
||||
return visual_indicators[type][1]
|
||||
|
||||
/datum/mutation/human/space_adaptation/on_acquiring(mob/living/carbon/human/owner)
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
quality = MINOR_NEGATIVE
|
||||
text_gain_indication = "<span class='danger'>You feel nervous.</span>"
|
||||
|
||||
/datum/mutation/human/nervousness/on_life(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/nervousness/on_life()
|
||||
if(prob(10))
|
||||
owner.stuttering = max(10, owner.stuttering)
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@
|
||||
if(!(type in visual_indicators))
|
||||
visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "telekinesishead", -MUTATIONS_LAYER))
|
||||
|
||||
/datum/mutation/human/telekinesis/get_visual_indicator(mob/living/carbon/human/owner)
|
||||
/datum/mutation/human/telekinesis/get_visual_indicator()
|
||||
return visual_indicators[type][1]
|
||||
|
||||
/datum/mutation/human/telekinesis/on_ranged_attack(mob/living/carbon/human/owner, atom/target)
|
||||
target.attack_tk(owner)
|
||||
/datum/mutation/human/telekinesis/on_ranged_attack(atom/target, mouseparams)
|
||||
target.attack_tk(owner)
|
||||
|
||||
@@ -248,14 +248,4 @@
|
||||
cost = 5
|
||||
placement_weight = 3
|
||||
always_place = TRUE
|
||||
allow_duplicates = TRUE
|
||||
|
||||
// Mining Base
|
||||
/datum/map_template/ruin/lavaland/mining_base //THIS IS THE MINING BASE. DO NOT FUCK WITH THIS UNLESS YOU ARE 100% CERTAIN YOU KNOW WHAT YOU'RE DOING, OR THE MINING BASE WILL DISAPPEAR
|
||||
name = "Mining Base"
|
||||
id = "miningbase"
|
||||
description = "The mining base that Nanotrasen uses for their mining operations."
|
||||
suffix = "miningbase.dmm"
|
||||
cost = 0
|
||||
always_place = TRUE
|
||||
unpickable = TRUE
|
||||
allow_duplicates = TRUE
|
||||
|
||||
@@ -54,3 +54,10 @@
|
||||
id = "engine_budget"
|
||||
suffix = "Box/Engine/budget.dmm"
|
||||
name = "Box P.A.C.M.A.N"
|
||||
|
||||
// Lavaland
|
||||
// Mining Base
|
||||
/datum/map_template/ruin/station/lavaland/mining_base
|
||||
id = "mining_public_01"
|
||||
suffix = "Lavaland/Mining_Station/Mining_Station_Public_01.dmm"
|
||||
name = "Public Mining Base"
|
||||
|
||||
@@ -20,11 +20,11 @@
|
||||
owner.adjustFireLoss(-15)
|
||||
|
||||
/datum/status_effect/shadow_mend/on_remove()
|
||||
. = ..()
|
||||
owner.visible_message("<span class='warning'>The violet light around [owner] glows black!</span>", "<span class='warning'>The tendrils around you cinch tightly and reap their toll...</span>")
|
||||
playsound(owner, 'sound/magic/teleport_diss.ogg', 50, 1)
|
||||
owner.apply_status_effect(STATUS_EFFECT_VOID_PRICE)
|
||||
|
||||
|
||||
/datum/status_effect/void_price
|
||||
id = "void_price"
|
||||
duration = 300
|
||||
@@ -48,20 +48,24 @@
|
||||
status_type = STATUS_EFFECT_REPLACE
|
||||
alert_type = /obj/screen/alert/status_effect/vanguard
|
||||
var/datum/progressbar/progbar
|
||||
var/stamhealed = 0 //How much stamina did we regenerate?
|
||||
|
||||
/obj/screen/alert/status_effect/vanguard
|
||||
name = "Vanguard"
|
||||
desc = "You're absorbing stuns! Your stamina is greatly increased, but not infinite. 25% of all stuns taken will affect you after this effect ends."
|
||||
desc = "You're absorbing stuns aswell as quickly regenerating stamina, but be careful: 50% of stamina restored and 25% of stuns absorbed will affect you after this effect ends."
|
||||
icon_state = "vanguard"
|
||||
alerttooltipstyle = "clockcult"
|
||||
|
||||
/obj/screen/alert/status_effect/vanguard/MouseEntered(location,control,params)
|
||||
var/mob/living/L = usr
|
||||
var/datum/status_effect/vanguard_shield/E = attached_effect
|
||||
if(istype(L)) //this is probably more safety than actually needed
|
||||
var/vanguard = L.stun_absorption["vanguard"]
|
||||
desc = initial(desc)
|
||||
desc += "<br><b>[FLOOR(vanguard["stuns_absorbed"] * 0.1, 1)]</b> seconds of stuns held back.\
|
||||
[GLOB.ratvar_awakens ? "":"<br><b>[FLOOR(min(vanguard["stuns_absorbed"] * 0.025, 20), 1)]</b> seconds of stun will affect you."]"
|
||||
<br><b>[E.stamhealed]</b> stamina regenerated.\
|
||||
[GLOB.ratvar_awakens ? "":"<br><b>[FLOOR(min(vanguard["stuns_absorbed"] * 0.025, 20), 1)]</b> seconds of stun will affect you.\
|
||||
<br>You will incur <b>[E.stamhealed * 0.5]</b> staminaloss."]"
|
||||
..()
|
||||
|
||||
/datum/status_effect/vanguard_shield/Destroy()
|
||||
@@ -72,9 +76,8 @@
|
||||
/datum/status_effect/vanguard_shield/on_apply()
|
||||
owner.log_message("gained Vanguard stun immunity", LOG_ATTACK)
|
||||
owner.add_stun_absorption("vanguard", INFINITY, 1, "'s yellow aura momentarily intensifies!", "Your ward absorbs the stun!", " radiating with a soft yellow light!")
|
||||
owner.visible_message("<span class='warning'>[owner] begins to faintly glow!</span>", "<span class='brass'>You will absorb all stuns for the next twenty seconds.</span>")
|
||||
owner.visible_message("<span class='warning'>[owner] begins to faintly glow!</span>", "<span class='brass'>You will absorb all stuns aswell as quickly regenerate stamina for the next twenty seconds .</span>")
|
||||
owner.SetAllImmobility(0, FALSE)
|
||||
owner.setStaminaLoss(0, FALSE)
|
||||
progbar = new(owner, duration, owner)
|
||||
progbar.bar.color = list("#FAE48C", "#FAE48C", "#FAE48C", rgb(0,0,0))
|
||||
progbar.update(duration - world.time)
|
||||
@@ -82,8 +85,12 @@
|
||||
|
||||
/datum/status_effect/vanguard_shield/tick()
|
||||
progbar.update(duration - world.time)
|
||||
var/oldstamloss = owner.getStaminaLoss()
|
||||
owner.adjustStaminaLoss(-6) //up to 30 stam / second for now, lets see...
|
||||
stamhealed += oldstamloss - owner.getStaminaLoss()
|
||||
|
||||
/datum/status_effect/vanguard_shield/on_remove()
|
||||
. = ..()
|
||||
var/vanguard = owner.stun_absorption["vanguard"]
|
||||
var/stuns_blocked = 0
|
||||
if(vanguard)
|
||||
@@ -95,8 +102,9 @@
|
||||
for(var/i in owner.stun_absorption)
|
||||
if(owner.stun_absorption[i]["end_time"] > world.time && owner.stun_absorption[i]["priority"] > vanguard["priority"])
|
||||
otheractiveabsorptions = TRUE
|
||||
if(!GLOB.ratvar_awakens && stuns_blocked && !otheractiveabsorptions)
|
||||
if(!GLOB.ratvar_awakens && (stuns_blocked && !otheractiveabsorptions || stamhealed))
|
||||
owner.DefaultCombatKnockdown(stuns_blocked)
|
||||
owner.adjustStaminaLoss(stamhealed * 0.5)
|
||||
message_to_owner = "<span class='boldwarning'>The weight of the Vanguard's protection crashes down upon you!</span>"
|
||||
if(stuns_blocked >= 300)
|
||||
message_to_owner += "\n<span class='userdanger'>You faint from the exertion!</span>"
|
||||
@@ -105,8 +113,7 @@
|
||||
else
|
||||
stuns_blocked = 0 //so logging is correct in cases where there were stuns blocked but we didn't stun for other reasons
|
||||
owner.visible_message("<span class='warning'>[owner]'s glowing aura fades!</span>", message_to_owner)
|
||||
owner.log_message("lost Vanguard stun immunity[stuns_blocked ? "and was stunned for [stuns_blocked]":""]", LOG_ATTACK)
|
||||
|
||||
owner.log_message("lost Vanguard stun immunity[stuns_blocked ? "and was stunned for [stuns_blocked]":""] [stamhealed ? ", incurring [stamhealed * 0.25] staminaloss" : ""]", LOG_ATTACK)
|
||||
|
||||
/datum/status_effect/inathneqs_endowment
|
||||
id = "inathneqs_endowment"
|
||||
@@ -133,12 +140,12 @@
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/inathneqs_endowment/on_remove()
|
||||
. = ..()
|
||||
owner.log_message("lost Inath-neq's invulnerability", LOG_ATTACK)
|
||||
owner.visible_message("<span class='warning'>The light around [owner] flickers and dissipates!</span>", "<span class='boldwarning'>You feel Inath-neq's power fade from your body!</span>")
|
||||
owner.status_flags &= ~GODMODE
|
||||
playsound(owner, 'sound/magic/ethereal_exit.ogg', 50, 1)
|
||||
|
||||
|
||||
/datum/status_effect/cyborg_power_regen
|
||||
id = "power_regen"
|
||||
duration = 100
|
||||
@@ -210,11 +217,11 @@
|
||||
owner.adjustStaminaLoss(-(grace_heal * 25))
|
||||
|
||||
/datum/status_effect/his_grace/on_remove()
|
||||
. = ..()
|
||||
owner.log_message("lost His Grace's stun immunity", LOG_ATTACK)
|
||||
if(islist(owner.stun_absorption) && owner.stun_absorption["hisgrace"])
|
||||
owner.stun_absorption -= "hisgrace"
|
||||
|
||||
|
||||
/datum/status_effect/wish_granters_gift //Fully revives after ten seconds.
|
||||
id = "wish_granters_gift"
|
||||
duration = 50
|
||||
@@ -225,6 +232,7 @@
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/wish_granters_gift/on_remove()
|
||||
. = ..()
|
||||
owner.revive(full_heal = TRUE, admin_revive = TRUE)
|
||||
owner.visible_message("<span class='warning'>[owner] appears to wake from the dead, having healed all wounds!</span>", "<span class='notice'>You have regenerated.</span>")
|
||||
|
||||
@@ -366,6 +374,7 @@
|
||||
last_health = owner.health
|
||||
|
||||
/datum/status_effect/blooddrunk/on_remove()
|
||||
. = ..()
|
||||
tick()
|
||||
owner.maxHealth *= 0.1
|
||||
owner.bruteloss *= 0.1
|
||||
@@ -404,7 +413,6 @@
|
||||
playsound(owner, 'sound/weapons/fwoosh.wav', 75, 0)
|
||||
return ..()
|
||||
|
||||
|
||||
/datum/status_effect/sword_spin/tick()
|
||||
playsound(owner, 'sound/weapons/fwoosh.wav', 75, 0)
|
||||
var/obj/item/slashy
|
||||
@@ -413,9 +421,9 @@
|
||||
slashy.attack(M, owner)
|
||||
|
||||
/datum/status_effect/sword_spin/on_remove()
|
||||
. = ..()
|
||||
owner.visible_message("<span class='warning'>[owner]'s inhuman strength dissipates and the sword's runes grow cold!</span>")
|
||||
|
||||
|
||||
//Used by changelings to rapidly heal
|
||||
//Heals 10 brute and oxygen damage every second, and 5 fire
|
||||
//Being on fire will suppress this healing
|
||||
@@ -472,6 +480,7 @@
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/hippocraticOath/on_remove()
|
||||
. = ..()
|
||||
REMOVE_TRAIT(owner, TRAIT_PACIFISM, "hippocraticOath")
|
||||
var/datum/atom_hud/H = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED]
|
||||
H.remove_hud_from(owner)
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
owner.update_stat()
|
||||
|
||||
/datum/status_effect/incapacitating/on_remove()
|
||||
. = ..()
|
||||
owner.update_mobility()
|
||||
if(needs_update_stat || issilicon(owner)) //silicons need stat updates in addition to normal canmove updates
|
||||
owner.update_stat()
|
||||
@@ -86,6 +87,15 @@
|
||||
if(prob(10) && owner.health > owner.crit_threshold)
|
||||
owner.emote("snore")
|
||||
|
||||
/datum/status_effect/staggered
|
||||
id = "staggered"
|
||||
blocks_sprint = TRUE
|
||||
|
||||
/datum/status_effect/staggered/on_creation(mob/living/new_owner, set_duration)
|
||||
if(isnum(set_duration))
|
||||
duration = set_duration
|
||||
return ..()
|
||||
|
||||
/obj/screen/alert/status_effect/asleep
|
||||
name = "Asleep"
|
||||
desc = "You've fallen asleep. Wait a bit and you should wake up. Unless you don't, considering how helpless you are."
|
||||
@@ -101,10 +111,6 @@
|
||||
if(isnum(set_duration))
|
||||
duration = set_duration
|
||||
. = ..()
|
||||
if(iscarbon(owner))
|
||||
var/mob/living/carbon/C = owner
|
||||
if(C.combatmode)
|
||||
C.toggle_combat_mode(TRUE)
|
||||
|
||||
/datum/status_effect/no_combat_mode/mesmerize
|
||||
id = "Mesmerize"
|
||||
@@ -143,8 +149,6 @@
|
||||
last_tick = world.time
|
||||
if(iscarbon(owner))
|
||||
var/mob/living/carbon/C = owner
|
||||
if(C.combatmode)
|
||||
C.toggle_combat_mode(TRUE)
|
||||
C.add_movespeed_modifier("[MOVESPEED_ID_TASED_STATUS]_[id]", TRUE, priority = slowdown_priority, override = TRUE, multiplicative_slowdown = slowdown, blacklisted_movetypes = affect_crawl? NONE : CRAWLING)
|
||||
|
||||
/datum/status_effect/electrode/on_remove()
|
||||
@@ -174,15 +178,6 @@
|
||||
blocks_combatmode = TRUE
|
||||
stamdmg_per_ds = 1
|
||||
|
||||
/datum/status_effect/electrode/no_combat_mode/on_creation(mob/living/new_owner, set_duration)
|
||||
. = ..()
|
||||
if(iscarbon(owner))
|
||||
var/mob/living/carbon/C = owner
|
||||
if(HAS_TRAIT(C, TRAIT_TASED_RESISTANCE))
|
||||
return
|
||||
if(C.combatmode)
|
||||
C.toggle_combat_mode(TRUE)
|
||||
|
||||
//OTHER DEBUFFS
|
||||
/datum/status_effect/his_wrath //does minor damage over time unless holding His Grace
|
||||
id = "his_wrath"
|
||||
@@ -220,6 +215,7 @@
|
||||
alerttooltipstyle = "clockcult"
|
||||
|
||||
/datum/status_effect/belligerent/on_apply()
|
||||
. = ..()
|
||||
return do_movement_toggle(TRUE)
|
||||
|
||||
/datum/status_effect/belligerent/tick()
|
||||
@@ -250,6 +246,7 @@
|
||||
/datum/status_effect/belligerent/on_remove()
|
||||
if(owner.m_intent == MOVE_INTENT_WALK)
|
||||
owner.toggle_move_intent()
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/maniamotor
|
||||
id = "maniamotor"
|
||||
@@ -349,6 +346,7 @@
|
||||
alert_type = null
|
||||
|
||||
/datum/status_effect/cultghost/on_apply()
|
||||
. = ..()
|
||||
owner.see_invisible = SEE_INVISIBLE_OBSERVER
|
||||
owner.see_in_dark = 2
|
||||
|
||||
@@ -370,6 +368,7 @@
|
||||
hammer_synced = new_hammer_synced
|
||||
|
||||
/datum/status_effect/crusher_mark/on_apply()
|
||||
. = ..()
|
||||
if(owner.mob_size >= MOB_SIZE_LARGE)
|
||||
marked_underlay = mutable_appearance('icons/effects/effects.dmi', "shield2")
|
||||
marked_underlay.pixel_x = -owner.pixel_x
|
||||
@@ -451,6 +450,7 @@
|
||||
qdel(src)
|
||||
|
||||
/datum/status_effect/saw_bleed/on_remove()
|
||||
. = ..()
|
||||
if(needs_to_bleed)
|
||||
var/turf/T = get_turf(owner)
|
||||
new /obj/effect/temp_visual/bleed/explode(T)
|
||||
@@ -509,6 +509,7 @@
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/necropolis_curse/on_remove()
|
||||
. = ..()
|
||||
remove_curse(curse_flags)
|
||||
|
||||
/datum/status_effect/necropolis_curse/proc/apply_curse(set_curse)
|
||||
@@ -598,6 +599,7 @@
|
||||
old_oxyloss = owner.getOxyLoss()
|
||||
|
||||
/datum/status_effect/kindle/on_remove()
|
||||
. = ..()
|
||||
owner.visible_message("<span class='warning'>The light in [owner]'s eyes fades!</span>", \
|
||||
"<span class='boldannounce'>You snap out of your daze!</span>")
|
||||
|
||||
@@ -617,11 +619,13 @@
|
||||
alert_type = /obj/screen/alert/status_effect/ichorial_stain
|
||||
|
||||
/datum/status_effect/ichorial_stain/on_apply()
|
||||
. = ..()
|
||||
owner.visible_message("<span class='danger'>[owner] gets back up, [owner.p_their()] body dripping blue ichor!</span>", \
|
||||
"<span class='userdanger'>Thick blue ichor covers your body; you can't be revived like this again until it dries!</span>")
|
||||
return TRUE
|
||||
|
||||
/datum/status_effect/ichorial_stain/on_remove()
|
||||
. = ..()
|
||||
owner.visible_message("<span class='danger'>The blue ichor on [owner]'s body dries out!</span>", \
|
||||
"<span class='boldnotice'>The ichor on your body is dry - you can now be revived by vitality matrices again!</span>")
|
||||
|
||||
@@ -643,6 +647,7 @@
|
||||
owner.add_movespeed_modifier(MOVESPEED_ID_ELECTROSTAFF, multiplicative_slowdown = 1, movetypes = GROUND)
|
||||
|
||||
/datum/status_effect/electrostaff/on_remove()
|
||||
. = ..()
|
||||
owner.remove_movespeed_modifier(MOVESPEED_ID_ELECTROSTAFF)
|
||||
|
||||
//GOLEM GANG
|
||||
@@ -694,6 +699,7 @@ datum/status_effect/pacify
|
||||
|
||||
/datum/status_effect/pacify/on_remove()
|
||||
REMOVE_TRAIT(owner, TRAIT_PACIFISM, "status_effect")
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/trance
|
||||
id = "trance"
|
||||
@@ -715,6 +721,7 @@ datum/status_effect/pacify
|
||||
owner.dizziness = 20
|
||||
|
||||
/datum/status_effect/trance/on_apply()
|
||||
. = ..()
|
||||
if(!iscarbon(owner))
|
||||
return FALSE
|
||||
RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/hypnotize)
|
||||
@@ -735,6 +742,7 @@ datum/status_effect/pacify
|
||||
owner.dizziness = 0
|
||||
owner.remove_client_colour(/datum/client_colour/monochrome/trance)
|
||||
to_chat(owner, "<span class='warning'>You snap out of your trance!</span>")
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/trance/proc/hypnotize(datum/source, list/hearing_args)
|
||||
if(!owner.can_hear())
|
||||
@@ -820,8 +828,9 @@ datum/status_effect/pacify
|
||||
return
|
||||
var/mob/living/carbon/human/H = owner
|
||||
H.something_horrible(kill_either_way)
|
||||
return ..()
|
||||
|
||||
/obj/screen/alert/status_effect/dna_melt
|
||||
name = "Genetic Breakdown"
|
||||
desc = "I don't feel so good. Your body can't handle the mutations! You have one minute to remove your mutations, or you will be met with a horrible fate."
|
||||
icon_state = "dna_melt"
|
||||
icon_state = "dna_melt"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
owner.adjust_bodytemperature(100)
|
||||
owner.update_mobility()
|
||||
UnregisterSignal(owner, COMSIG_LIVING_RESIST)
|
||||
return ..()
|
||||
|
||||
/datum/status_effect/freon/watcher
|
||||
duration = 8
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
/datum/status_effect/syphon_mark/on_remove()
|
||||
get_kill()
|
||||
. = ..()
|
||||
return ..()
|
||||
|
||||
/obj/screen/alert/status_effect/in_love
|
||||
name = "In Love"
|
||||
@@ -81,5 +81,5 @@
|
||||
ADD_TRAIT(owner, TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]")
|
||||
|
||||
/datum/status_effect/throat_soothed/on_remove()
|
||||
. = ..()
|
||||
REMOVE_TRAIT(owner, TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]")
|
||||
REMOVE_TRAIT(owner, TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]")
|
||||
return ..()
|
||||
|
||||
@@ -11,7 +11,10 @@
|
||||
var/on_remove_on_mob_delete = FALSE //if we call on_remove() when the mob is deleted
|
||||
var/examine_text //If defined, this text will appear when the mob is examined - to use he, she etc. use "SUBJECTPRONOUN" and replace it in the examines themselves
|
||||
var/alert_type = /obj/screen/alert/status_effect //the alert thrown by the status effect, contains name and description
|
||||
var/blocks_combatmode //Does this status effect prevent the user from toggling combat mode?
|
||||
/// If this is TRUE, the user will have combt mode forcefully disabled while this is active.
|
||||
var/blocks_combatmode = FALSE
|
||||
/// If this is TRUE, the user will have sprint forcefully disabled while this is active.
|
||||
var/blocks_sprint = FALSE
|
||||
var/obj/screen/alert/status_effect/linked_alert = null //the alert itself, if it exists
|
||||
|
||||
/datum/status_effect/New(list/arguments)
|
||||
@@ -32,11 +35,11 @@
|
||||
var/obj/screen/alert/status_effect/A = owner.throw_alert(id, alert_type)
|
||||
A.attached_effect = src //so the alert can reference us, if it needs to
|
||||
linked_alert = A //so we can reference the alert, if we need to
|
||||
START_PROCESSING(SSfastprocess, src)
|
||||
START_PROCESSING(SSstatus_effects, src)
|
||||
return TRUE
|
||||
|
||||
/datum/status_effect/Destroy()
|
||||
STOP_PROCESSING(SSfastprocess, src)
|
||||
STOP_PROCESSING(SSstatus_effects, src)
|
||||
if(owner)
|
||||
owner.clear_alert(id)
|
||||
LAZYREMOVE(owner.status_effects, src)
|
||||
@@ -55,9 +58,21 @@
|
||||
qdel(src)
|
||||
|
||||
/datum/status_effect/proc/on_apply() //Called whenever the buff is applied; returning FALSE will cause it to autoremove itself.
|
||||
SHOULD_CALL_PARENT(TRUE)
|
||||
if(blocks_combatmode)
|
||||
ADD_TRAIT(owner, TRAIT_COMBAT_MODE_LOCKED, src)
|
||||
if(blocks_sprint)
|
||||
ADD_TRAIT(owner, TRAIT_SPRINT_LOCKED, src)
|
||||
return TRUE
|
||||
|
||||
/datum/status_effect/proc/tick() //Called every tick.
|
||||
|
||||
/datum/status_effect/proc/on_remove() //Called whenever the buff expires or is removed; do note that at the point this is called, it is out of the owner's status_effects but owner is not yet null
|
||||
SHOULD_CALL_PARENT(TRUE)
|
||||
REMOVE_TRAIT(owner, TRAIT_COMBAT_MODE_LOCKED, src)
|
||||
REMOVE_TRAIT(owner, TRAIT_SPRINT_LOCKED, src)
|
||||
return TRUE
|
||||
|
||||
/datum/status_effect/proc/be_replaced() //Called instead of on_remove when a status effect is replaced by itself or when a status effect with on_remove_on_mob_delete = FALSE has its mob deleted
|
||||
owner.clear_alert(id)
|
||||
LAZYREMOVE(owner.status_effects, src)
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
if(is_ash_immune(L))
|
||||
return
|
||||
if(is_species(L, /datum/species/lizard/ashwalker))
|
||||
if(L.getStaminaLoss() <= STAMINA_SOFTCRIT)
|
||||
if(!IS_STAMCRIT(L))
|
||||
L.adjustStaminaLossBuffered(4)
|
||||
return
|
||||
L.adjustFireLoss(4)
|
||||
|
||||
@@ -269,7 +269,7 @@ Credit where due:
|
||||
//Servant of Ratvar outfit
|
||||
/datum/outfit/servant_of_ratvar
|
||||
name = "Servant of Ratvar"
|
||||
uniform = /obj/item/clothing/under/rank/engineer //no more chameleon suit for them, as requested
|
||||
uniform = /obj/item/clothing/under/rank/engineering/engineer //no more chameleon suit for them, as requested
|
||||
shoes = /obj/item/clothing/shoes/sneakers/black
|
||||
back = /obj/item/storage/backpack
|
||||
ears = /obj/item/radio/headset
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
H.Stun(10)
|
||||
var/obj/item/clothing/C
|
||||
if(!H.w_uniform || H.dropItemToGround(H.w_uniform))
|
||||
C = new /obj/item/clothing/under/rank/clown(H)
|
||||
C = new /obj/item/clothing/under/rank/civilian/clown(H)
|
||||
ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT)
|
||||
H.equip_to_slot_or_del(C, SLOT_W_UNIFORM)
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
/datum/team/gang/zerog
|
||||
name = "Zero-G"
|
||||
color = "#C0C0C0"
|
||||
inner_outfits = list(/obj/item/clothing/under/suit_jacket/white)
|
||||
inner_outfits = list(/obj/item/clothing/under/suit/white)
|
||||
outer_outfits = list(/obj/item/clothing/suit/hooded/wintercoat)
|
||||
|
||||
/datum/team/gang/max
|
||||
@@ -33,13 +33,13 @@
|
||||
/datum/team/gang/blasto
|
||||
name = "Blasto"
|
||||
color = "#000080"
|
||||
inner_outfits = list(/obj/item/clothing/under/suit_jacket/navy)
|
||||
inner_outfits = list(/obj/item/clothing/under/suit/navy)
|
||||
outer_outfits = list(/obj/item/clothing/suit/jacket/miljacket)
|
||||
|
||||
/datum/team/gang/waffle
|
||||
name = "Waffle"
|
||||
color = "#808000" //shared color with cyber, but they can keep brown cause waffles.
|
||||
inner_outfits = list(/obj/item/clothing/under/suit_jacket/green)
|
||||
inner_outfits = list(/obj/item/clothing/under/suit/green)
|
||||
outer_outfits = list(/obj/item/clothing/suit/poncho)
|
||||
|
||||
/datum/team/gang/north
|
||||
@@ -87,7 +87,7 @@
|
||||
/datum/team/gang/tunnel
|
||||
name = "Tunnel"
|
||||
color = "#FF00FF" //Gave the leather jacket to the tunnel gang over diablo.
|
||||
inner_outfits = list(/obj/item/clothing/under/villain)
|
||||
inner_outfits = list(/obj/item/clothing/under/costume/villain)
|
||||
outer_outfits = list(/obj/item/clothing/suit/jacket/leather)
|
||||
|
||||
/datum/team/gang/diablo
|
||||
@@ -123,13 +123,13 @@
|
||||
/datum/team/gang/h
|
||||
name = "H"
|
||||
color = "#993333"
|
||||
inner_outfits = list(/obj/item/clothing/under/jabroni) //Why not?
|
||||
inner_outfits = list(/obj/item/clothing/under/costume/jabroni) //Why not?
|
||||
outer_outfits = list(/obj/item/clothing/suit/toggle/owlwings)
|
||||
|
||||
/datum/team/gang/rigatonifamily
|
||||
name = "Rigatoni family"
|
||||
color = "#cc9900" // p a s t a colored
|
||||
inner_outfits = list(/obj/item/clothing/under/rank/chef)
|
||||
inner_outfits = list(/obj/item/clothing/under/rank/civilian/chef)
|
||||
outer_outfits = list(/obj/item/clothing/suit/apron/chef)
|
||||
|
||||
/datum/team/gang/weed
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
/datum/outfit/syndicate/full
|
||||
name = "Syndicate Operative - Full Kit"
|
||||
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
glasses = /obj/item/clothing/glasses/night/syndicate
|
||||
mask = /obj/item/clothing/mask/gas/syndicate
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/syndi
|
||||
r_pocket = /obj/item/tank/internals/emergency_oxygen/engi
|
||||
@@ -180,7 +180,7 @@
|
||||
/datum/outfit/syndicate/lone
|
||||
name = "Syndicate Operative - Lone"
|
||||
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
glasses = /obj/item/clothing/glasses/night/syndicate
|
||||
mask = /obj/item/clothing/mask/gas/syndicate
|
||||
suit = /obj/item/clothing/suit/space/syndicate/black/red
|
||||
head = /obj/item/clothing/head/helmet/space/syndicate/black/red
|
||||
|
||||
@@ -205,13 +205,18 @@
|
||||
difficulty = 10
|
||||
|
||||
/datum/objective_item/special/boh
|
||||
name = "a bag of holding."
|
||||
name = "a type of bag of holding."
|
||||
targetitem = /obj/item/storage/backpack/holding
|
||||
difficulty = 10
|
||||
|
||||
/datum/objective_item/special/hypercell
|
||||
name = "a hyper-capacity power cell."
|
||||
targetitem = /obj/item/stock_parts/cell/hyper
|
||||
/datum/objective_item/special/adv_surgical_drapes
|
||||
name = "a set of smart surgical drapes."
|
||||
targetitem = /obj/item/surgical_drapes/advanced
|
||||
difficulty = 10 //would be 15 but cmo rarely have it on themselfs and leave it in their lockers...
|
||||
|
||||
/datum/objective_item/special/bluespace
|
||||
name = "a bluespace power cell."
|
||||
targetitem = /obj/item/stock_parts/cell/bluespace
|
||||
difficulty = 5
|
||||
|
||||
/datum/objective_item/special/laserpointer
|
||||
|
||||
@@ -41,16 +41,9 @@
|
||||
var/count = 0
|
||||
|
||||
/datum/sabotage_objective/processing/power_sink/check_condition_processing()
|
||||
count += 1
|
||||
if(count==10 || sink_found) // doesn't need to fire that often unless a sink exists
|
||||
var/sink_found_this_time = FALSE
|
||||
for(var/datum/powernet/PN in GLOB.powernets)
|
||||
for(var/obj/item/powersink/sink in PN.nodes)
|
||||
sink_found_this_time = TRUE
|
||||
won = max(won,sink.power_drained/1e8)
|
||||
sink_found = sink_found_this_time
|
||||
count = 0
|
||||
return FALSE
|
||||
for(var/s in GLOB.power_sinks)
|
||||
var/obj/item/powersink/sink = s
|
||||
won = max(won,sink.power_drained/1e8)
|
||||
|
||||
/obj/item/paper/guides/antag/supermatter_sabotage
|
||||
info = "Ways to sabotage a supermatter:<br>\
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
var/list/candidates = pollCandidatesForMob("Do you want to play as [clonename]'s defective clone?", null, null, null, 100, H)
|
||||
if(LAZYLEN(candidates))
|
||||
var/mob/dead/observer/C = pick(candidates)
|
||||
var/mob/C = pick(candidates)
|
||||
H.key = C.key
|
||||
|
||||
if(grab_ghost_when == CLONER_FRESH_CLONE)
|
||||
|
||||
@@ -17,7 +17,7 @@ Buildable meters
|
||||
icon = 'icons/obj/atmospherics/pipes/pipe_item.dmi'
|
||||
icon_state = "simple"
|
||||
item_state = "buildpipe"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
level = 2
|
||||
var/piping_layer = PIPING_LAYER_DEFAULT
|
||||
var/RPD_type
|
||||
|
||||
@@ -409,7 +409,7 @@
|
||||
if(iscarbon(A))
|
||||
var/mob/living/carbon/C = A
|
||||
//If not emagged, only target non downed carbons
|
||||
if(mode != TURRET_LETHAL && (C.stat || C.handcuffed || C.recoveringstam))//CIT CHANGE - replaces check for lying with check for recoveringstam
|
||||
if(mode != TURRET_LETHAL && (C.stat || C.handcuffed || (C.combat_flags & COMBAT_FLAG_HARD_STAMCRIT)))//CIT CHANGE - replaces check for lying with check for recoveringstam
|
||||
continue
|
||||
|
||||
//If emagged, target all but dead carbons
|
||||
|
||||
@@ -506,3 +506,8 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark/start/new_player)
|
||||
/obj/effect/landmark/stationroom/box/engine/New()
|
||||
. = ..()
|
||||
templates = CONFIG_GET(keyed_list/box_random_engine)
|
||||
|
||||
// Landmark for the mining station
|
||||
/obj/effect/landmark/stationroom/lavaland/station
|
||||
templates = list("Public Mining Base" = 3)
|
||||
icon = 'icons/rooms/Lavaland/Mining.dmi'
|
||||
|
||||
@@ -24,20 +24,20 @@
|
||||
/obj/effect/spawner/bundle/costume/gladiator
|
||||
name = "gladiator costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/gladiator,
|
||||
/obj/item/clothing/under/costume/gladiator,
|
||||
/obj/item/clothing/head/helmet/gladiator)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/madscientist
|
||||
name = "mad scientist costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/gimmick/rank/captain/suit,
|
||||
/obj/item/clothing/under/rank/captain/suit,
|
||||
/obj/item/clothing/head/flatcap,
|
||||
/obj/item/clothing/suit/toggle/labcoat/mad)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/elpresidente
|
||||
name = "el presidente costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/gimmick/rank/captain/suit,
|
||||
/obj/item/clothing/under/rank/captain/suit,
|
||||
/obj/item/clothing/head/flatcap,
|
||||
/obj/item/clothing/mask/cigarette/cigar/havana,
|
||||
/obj/item/clothing/shoes/jackboots)
|
||||
@@ -45,14 +45,14 @@
|
||||
/obj/effect/spawner/bundle/costume/nyangirl
|
||||
name = "nyangirl costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/schoolgirl,
|
||||
/obj/item/clothing/under/costume/schoolgirl,
|
||||
/obj/item/clothing/head/kitty,
|
||||
/obj/item/clothing/glasses/sunglasses/blindfold)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/maid
|
||||
name = "maid costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/skirt/black,
|
||||
/obj/item/clothing/under/dress/skirt,
|
||||
/obj/effect/spawner/lootdrop/minor/beret_or_rabbitears,
|
||||
/obj/item/clothing/glasses/sunglasses/blindfold)
|
||||
|
||||
@@ -61,13 +61,13 @@
|
||||
name = "butler costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/accessory/waistcoat,
|
||||
/obj/item/clothing/under/suit_jacket,
|
||||
/obj/item/clothing/under/suit/black,
|
||||
/obj/item/clothing/head/that)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/highlander
|
||||
name = "highlander costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/kilt,
|
||||
/obj/item/clothing/under/costume/kilt,
|
||||
/obj/item/clothing/head/beret)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/prig
|
||||
@@ -78,7 +78,7 @@
|
||||
/obj/effect/spawner/lootdrop/minor/bowler_or_that,
|
||||
/obj/item/clothing/shoes/sneakers/black,
|
||||
/obj/item/cane,
|
||||
/obj/item/clothing/under/sl_suit,
|
||||
/obj/item/clothing/under/suit/sl,
|
||||
/obj/item/clothing/mask/fakemoustache)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/plaguedoctor
|
||||
@@ -92,7 +92,7 @@
|
||||
name = "night owl costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/suit/toggle/owlwings,
|
||||
/obj/item/clothing/under/owl,
|
||||
/obj/item/clothing/under/costume/owl,
|
||||
/obj/item/clothing/mask/gas/owl_mask)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/griffin
|
||||
@@ -100,20 +100,20 @@
|
||||
items = list(
|
||||
/obj/item/clothing/suit/toggle/owlwings/griffinwings,
|
||||
/obj/item/clothing/shoes/griffin,
|
||||
/obj/item/clothing/under/griffin,
|
||||
/obj/item/clothing/under/costume/griffin,
|
||||
/obj/item/clothing/head/griffin)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/waiter
|
||||
name = "waiter costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/waiter,
|
||||
/obj/item/clothing/under/suit/waiter,
|
||||
/obj/effect/spawner/lootdrop/minor/kittyears_or_rabbitears,
|
||||
/obj/item/clothing/suit/apron)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/pirate
|
||||
name = "pirate costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/pirate,
|
||||
/obj/item/clothing/under/costume/pirate,
|
||||
/obj/item/clothing/suit/pirate,
|
||||
/obj/effect/spawner/lootdrop/minor/pirate_or_bandana,
|
||||
/obj/item/clothing/glasses/eyepatch)
|
||||
@@ -121,7 +121,7 @@
|
||||
/obj/effect/spawner/bundle/costume/commie
|
||||
name = "commie costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/soviet,
|
||||
/obj/item/clothing/under/costume/soviet,
|
||||
/obj/item/clothing/head/ushanka)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/imperium_monk
|
||||
@@ -145,7 +145,7 @@
|
||||
/obj/effect/spawner/bundle/costume/cutewitch
|
||||
name = "cute witch costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/under/sundress,
|
||||
/obj/item/clothing/under/dress/sundress,
|
||||
/obj/item/clothing/head/witchwig,
|
||||
/obj/item/staff/broom)
|
||||
|
||||
@@ -161,10 +161,10 @@
|
||||
name = "sexy clown costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/mask/gas/sexyclown,
|
||||
/obj/item/clothing/under/rank/clown/sexy)
|
||||
/obj/item/clothing/under/rank/civilian/clown/sexy)
|
||||
|
||||
/obj/effect/spawner/bundle/costume/sexymime
|
||||
name = "sexy mime costume spawner"
|
||||
items = list(
|
||||
/obj/item/clothing/mask/gas/sexymime,
|
||||
/obj/item/clothing/under/sexymime)
|
||||
/obj/item/clothing/under/rank/civilian/mime/sexy)
|
||||
|
||||
@@ -52,9 +52,7 @@
|
||||
pixel_y += round((cos(angle_override)+16*cos(angle_override)*2), 1)
|
||||
|
||||
/obj/effect/projectile_lighting
|
||||
var/owner
|
||||
|
||||
/obj/effect/projectile_lighting/Initialize(mapload, color, range, intensity, owner_key)
|
||||
/obj/effect/projectile_lighting/Initialize(mapload, color, range, intensity)
|
||||
. = ..()
|
||||
set_light(range, intensity, color)
|
||||
owner = owner_key
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/proc/generate_tracer_between_points(datum/point/starting, datum/point/ending, beam_type, color, qdel_in = 5, light_range = 2, light_color_override, light_intensity = 1, instance_key) //Do not pass z-crossing points as that will not be properly (and likely will never be properly until it's absolutely needed) supported!
|
||||
/proc/generate_tracer_between_points(datum/point/starting, datum/point/ending, beam_type, color, qdel_in = 5, light_range = 2, light_color_override, light_intensity = 1, list/turfs) //Do not pass z-crossing points as that will not be properly (and likely will never be properly until it's absolutely needed) supported!
|
||||
if(!istype(starting) || !istype(ending) || !ispath(beam_type))
|
||||
return
|
||||
var/datum/point/midpoint = point_midpoint_points(starting, ending)
|
||||
@@ -9,17 +9,15 @@
|
||||
. = PB
|
||||
if(light_range > 0 && light_intensity > 0)
|
||||
var/list/turf/line = getline(starting.return_turf(), ending.return_turf())
|
||||
tracing_line:
|
||||
for(var/i in line)
|
||||
var/turf/T = i
|
||||
for(var/obj/effect/projectile_lighting/PL in T)
|
||||
if(PL.owner == instance_key)
|
||||
continue tracing_line
|
||||
QDEL_IN(new /obj/effect/projectile_lighting(T, light_color_override, light_range, light_intensity, instance_key), qdel_in > 0? qdel_in : 5)
|
||||
for(var/i in line)
|
||||
if(turfs[i])
|
||||
continue
|
||||
turfs[i] = TRUE
|
||||
QDEL_IN(new /obj/effect/projectile_lighting(i, light_color_override, light_range, light_intensity), qdel_in > 0? qdel_in : 5)
|
||||
line = null
|
||||
if(qdel_in)
|
||||
QDEL_IN(PB, qdel_in)
|
||||
|
||||
d
|
||||
/obj/effect/projectile/tracer
|
||||
name = "beam"
|
||||
icon = 'icons/obj/projectiles_tracer.dmi'
|
||||
|
||||
@@ -399,7 +399,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
//If this were before the above checks, then trying to click on items would act a little funky and signal overrides wouldn't work.
|
||||
if(iscarbon(usr))
|
||||
var/mob/living/carbon/C = usr
|
||||
if(C.combatmode && ((C.CanReach(src) || (src in directaccess)) && (C.CanReach(over) || (over in directaccess))))
|
||||
if((C.combat_flags & COMBAT_FLAG_COMBAT_ACTIVE) && ((C.CanReach(src) || (src in directaccess)) && (C.CanReach(over) || (over in directaccess))))
|
||||
if(!C.get_active_held_item())
|
||||
C.UnarmedAttack(src, TRUE)
|
||||
if(C.get_active_held_item() == src)
|
||||
@@ -496,7 +496,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
to_chat(user, "<span class='danger'>You cannot locate any organic eyes on this brain!</span>")
|
||||
return
|
||||
|
||||
if(user.getStaminaLoss() >= STAMINA_SOFTCRIT)//CIT CHANGE - makes eyestabbing impossible if you're in stamina softcrit
|
||||
if(IS_STAMCRIT(user))//CIT CHANGE - makes eyestabbing impossible if you're in stamina softcrit
|
||||
to_chat(user, "<span class='danger'>You're too exhausted for that.</span>")//CIT CHANGE - ditto
|
||||
return //CIT CHANGE - ditto
|
||||
|
||||
@@ -855,4 +855,19 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
return
|
||||
|
||||
/obj/item/proc/unembedded()
|
||||
return
|
||||
return
|
||||
|
||||
/**
|
||||
* Sets our slowdown and updates equipment slowdown of any mob we're equipped on.
|
||||
*/
|
||||
/obj/item/proc/set_slowdown(new_slowdown)
|
||||
slowdown = new_slowdown
|
||||
if(CHECK_BITFIELD(item_flags, IN_INVENTORY))
|
||||
var/mob/living/L = loc
|
||||
if(istype(L))
|
||||
L.update_equipment_speed_mods()
|
||||
|
||||
/obj/item/vv_edit_var(var_name, var_value)
|
||||
. = ..()
|
||||
if(var_name == NAMEOF(src, slowdown))
|
||||
set_slowdown(var_value) //don't care if it's a duplicate edit as slowdown'll be set, do it anyways to force normal behavior.
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
// Powersink - used to drain station power
|
||||
|
||||
GLOBAL_LIST_EMPTY(power_sinks)
|
||||
|
||||
/obj/item/powersink
|
||||
desc = "A nulling power sink which drains energy from electrical systems."
|
||||
name = "power sink"
|
||||
@@ -26,6 +28,14 @@
|
||||
|
||||
var/obj/structure/cable/attached // the attached cable
|
||||
|
||||
/obj/item/powersink/Initialize()
|
||||
. = ..()
|
||||
GLOB.power_sinks += src
|
||||
|
||||
/obj/item/powersink/Destroy()
|
||||
GLOB.power_sinks -= src
|
||||
. = ..()
|
||||
|
||||
/obj/item/powersink/update_icon_state()
|
||||
icon_state = "powersink[mode == OPERATING]"
|
||||
|
||||
|
||||
@@ -463,6 +463,16 @@
|
||||
hitsound = 'sound/weapons/rapierhit.ogg'
|
||||
var/possessed = FALSE
|
||||
|
||||
/obj/item/nullrod/scythe/talking/process()
|
||||
for(var/mob/living/simple_animal/shade/S in contents)
|
||||
if(S.mind)
|
||||
return
|
||||
else
|
||||
qdel(S)
|
||||
possessed = FALSE
|
||||
visible_message("<span class='warning'>The blade makes a short sigh. The spirit within seems to have passed on...</span>")
|
||||
return PROCESS_KILL
|
||||
|
||||
/obj/item/nullrod/scythe/talking/relaymove(mob/user)
|
||||
return //stops buckled message spam for the ghost.
|
||||
|
||||
@@ -484,6 +494,8 @@
|
||||
S.ckey = C.ckey
|
||||
S.status_flags |= GODMODE
|
||||
S.language_holder = user.language_holder.copy(S)
|
||||
S.AddElement(/datum/element/ghost_role_eligibility)
|
||||
START_PROCESSING(SSprocessing,src)
|
||||
var/input = stripped_input(S,"What are you named?", ,"", MAX_NAME_LEN)
|
||||
|
||||
if(src && input)
|
||||
|
||||
@@ -268,7 +268,7 @@
|
||||
if(!on)
|
||||
return ..()
|
||||
|
||||
if(user.getStaminaLoss() >= STAMINA_SOFTCRIT)//CIT CHANGE - makes batons unusuable in stamina softcrit
|
||||
if(IS_STAMCRIT(user))//CIT CHANGE - makes batons unusuable in stamina softcrit
|
||||
to_chat(user, "<span class='warning'>You're too exhausted for that.</span>")//CIT CHANGE - ditto
|
||||
return //CIT CHANGE - ditto
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
/obj/item/storage/box/hero/PopulateContents()
|
||||
new /obj/item/clothing/head/fedora/curator(src)
|
||||
new /obj/item/clothing/suit/curator(src)
|
||||
new /obj/item/clothing/under/rank/curator/treasure_hunter(src)
|
||||
new /obj/item/clothing/under/rank/civilian/curator/treasure_hunter(src)
|
||||
new /obj/item/clothing/shoes/workboots/mining(src)
|
||||
new /obj/item/melee/curator_whip(src)
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
name = "Braveheart, the Scottish rebel - 1300's."
|
||||
|
||||
/obj/item/storage/box/hero/scottish/PopulateContents()
|
||||
new /obj/item/clothing/under/kilt(src)
|
||||
new /obj/item/clothing/under/costume/kilt(src)
|
||||
new /obj/item/claymore/weak/ceremonial(src)
|
||||
new /obj/item/toy/crayon/spraycan(src)
|
||||
new /obj/item/clothing/shoes/sandal(src)
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
|
||||
var/mob/living/L = user
|
||||
|
||||
if(istype(L) && L.getStaminaLoss() >= STAMINA_SOFTCRIT)
|
||||
if(istype(L) && IS_STAMCRIT(L))
|
||||
to_chat(user, "<span class='danger'>You're too exhausted for that.</span>")
|
||||
return
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
else
|
||||
user.visible_message("<span class='notice'>[user] hugs [M] to make [M.p_them()] feel better!</span>", \
|
||||
"<span class='notice'>You hug [M] to make [M.p_them()] feel better!</span>")
|
||||
if(M.resting && !M.recoveringstam)
|
||||
if(M.resting && !(M.combat_flags & COMBAT_FLAG_HARD_STAMCRIT))
|
||||
M.set_resting(FALSE, TRUE)
|
||||
else
|
||||
user.visible_message("<span class='notice'>[user] pets [M]!</span>", \
|
||||
@@ -99,7 +99,7 @@
|
||||
else
|
||||
user.visible_message("<span class='warning'>[user] hugs [M] in a firm bear-hug! [M] looks uncomfortable...</span>", \
|
||||
"<span class='warning'>You hug [M] firmly to make [M.p_them()] feel better! [M] looks uncomfortable...</span>")
|
||||
if(!CHECK_MOBILITY(M, MOBILITY_STAND) && !M.recoveringstam)
|
||||
if(!CHECK_MOBILITY(M, MOBILITY_STAND) && !(M.combat_flags & COMBAT_FLAG_HARD_STAMCRIT))
|
||||
M.set_resting(FALSE, TRUE)
|
||||
else
|
||||
user.visible_message("<span class='warning'>[user] bops [M] on the head!</span>", \
|
||||
|
||||
@@ -35,7 +35,7 @@ GLOBAL_LIST_INIT(human_recipes, list( \
|
||||
|
||||
GLOBAL_LIST_INIT(gondola_recipes, list ( \
|
||||
new/datum/stack_recipe("gondola mask", /obj/item/clothing/mask/gondola, 1), \
|
||||
new/datum/stack_recipe("gondola suit", /obj/item/clothing/under/gondola, 2), \
|
||||
new/datum/stack_recipe("gondola suit", /obj/item/clothing/under/costume/gondola, 2), \
|
||||
new/datum/stack_recipe("gondola bedsheet", /obj/item/bedsheet/gondola, 1), \
|
||||
))
|
||||
|
||||
|
||||
@@ -427,7 +427,7 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \
|
||||
* Durathread
|
||||
*/
|
||||
GLOBAL_LIST_INIT(durathread_recipes, list ( \
|
||||
new/datum/stack_recipe("durathread jumpsuit", /obj/item/clothing/under/durathread, 4, time = 40),
|
||||
new/datum/stack_recipe("durathread jumpsuit", /obj/item/clothing/under/misc/durathread, 4, time = 40),
|
||||
new/datum/stack_recipe("durathread beret", /obj/item/clothing/head/beret/durathread, 2, time = 40), \
|
||||
new/datum/stack_recipe("durathread beanie", /obj/item/clothing/head/beanie/durathread, 2, time = 40), \
|
||||
new/datum/stack_recipe("durathread bandana", /obj/item/clothing/mask/bandana/durathread, 1, time = 25), \
|
||||
|
||||
@@ -458,7 +458,7 @@
|
||||
item_state = "duffel-syndieammo"
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/syndie/hitman/PopulateContents()
|
||||
new /obj/item/clothing/under/lawyer/blacksuit(src)
|
||||
new /obj/item/clothing/under/suit/black(src)
|
||||
new /obj/item/clothing/accessory/waistcoat(src)
|
||||
new /obj/item/clothing/suit/toggle/lawyer/black(src)
|
||||
new /obj/item/clothing/shoes/laceup(src)
|
||||
@@ -630,7 +630,7 @@
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/clown/syndie/PopulateContents()
|
||||
new /obj/item/pda/clown(src)
|
||||
new /obj/item/clothing/under/rank/clown(src)
|
||||
new /obj/item/clothing/under/rank/civilian/clown(src)
|
||||
new /obj/item/clothing/shoes/clown_shoes(src)
|
||||
new /obj/item/clothing/mask/gas/clown_hat(src)
|
||||
new /obj/item/bikehorn(src)
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
new /obj/item/ammo_box/magazine/m10mm/soporific(src)
|
||||
new /obj/item/ammo_box/c10mm/soporific(src)
|
||||
new /obj/item/clothing/under/lawyer/blacksuit(src)
|
||||
new /obj/item/clothing/under/suit/black(src)
|
||||
new /obj/item/clothing/accessory/waistcoat(src)
|
||||
new /obj/item/clothing/suit/toggle/lawyer/black/syndie(src)
|
||||
|
||||
|
||||
@@ -189,7 +189,7 @@
|
||||
new /obj/item/reagent_containers/medspray/silver_sulf(src)
|
||||
new /obj/item/healthanalyzer/advanced(src)
|
||||
new /obj/item/reagent_containers/syringe/lethal/choral(src) // what the fuck does anyone use this piece of shit for
|
||||
new /obj/item/clothing/glasses/hud/health/night(src)
|
||||
new /obj/item/clothing/glasses/hud/health/night/syndicate(src)
|
||||
|
||||
/obj/item/storage/firstaid/tactical/nukeop
|
||||
name = "improved combat medical kit"
|
||||
@@ -204,7 +204,7 @@
|
||||
new /obj/item/reagent_containers/medspray/silver_sulf(src)
|
||||
new /obj/item/healthanalyzer/advanced(src)
|
||||
new /obj/item/reagent_containers/syringe/lethal/choral(src) // what the fuck does anyone use this piece of shit for
|
||||
new /obj/item/clothing/glasses/hud/health/night(src)
|
||||
new /obj/item/clothing/glasses/hud/health/night/syndicate(src)
|
||||
|
||||
/*
|
||||
* Pill Bottles
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user