[Ready] Prisoner role (#48819)

About The Pull Request

I observed someone request to be perma'd round start and then they just chilled in perma the whole shift. Security isn't always going to be up for putting people in perma and players who have been placed in perma tend to go catatonic. This allows players who are interested in having a chill shift doing the stuff in perma and acting like they've done crimes the opportunity to do that.
Why It's Good For The Game

Crew content. I'm not saying it's mindblowing but if we add it in as a role it will open the door for people to look at perma and what could be done with prisoners.

Prisoners spawn with a prison ID, a jumpsuit, and shoes. They are also currently spawning with a backpack and I'm uncertain about whether or not I want to do anything with that.

This is ready for a testmerge and worked for me locally.

Thanks to Tralezab for assistance with merge conflicts.
Thanks to EOBGames for the plasmaman prisoner sprites.
Thanks to Quill-Weave for encouragement.

Feedback is of course welcome, and I'd appreciate suggestions re: balancing this role. Maybe they should be roundstart pacified or something.
Changelog

cl
add: Adds prisoner role
/cl
This commit is contained in:
RaveRadbury
2020-02-03 09:54:03 +13:00
committed by GitHub
parent 3ff924a1a3
commit 8b19d797ca
33 changed files with 203 additions and 112 deletions
+11 -4
View File
@@ -779,6 +779,7 @@
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"abN" = (
@@ -957,7 +958,7 @@
name = "Unisex Restroom"
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"aci" = (
/obj/vehicle/ridden/secway,
/turf/open/floor/plasteel/dark,
@@ -1177,6 +1178,7 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"acK" = (
@@ -1189,7 +1191,7 @@
dir = 4
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"acL" = (
/obj/effect/turf_decal/stripes/line{
dir = 10
@@ -1366,7 +1368,7 @@
dir = 1
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"adg" = (
/obj/machinery/button/door{
id = "armory";
@@ -52864,6 +52866,11 @@
/obj/structure/cable,
/turf/open/floor/engine,
/area/science/xenobiology)
"vgp" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"vhn" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -78552,7 +78559,7 @@ aat
aat
aat
ace
aat
vgp
aat
adH
aei
+43 -40
View File
@@ -64,6 +64,43 @@
/obj/effect/mapping_helpers/iannewyear,
/turf/open/floor/plasteel/grimy,
/area/crew_quarters/heads/hop)
"aaj" = (
/obj/machinery/shower{
dir = 4
},
/obj/item/soap/nanotrasen,
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/security/prison/toilet)
"aak" = (
/obj/structure/toilet{
dir = 4
},
/obj/machinery/light/small{
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 5
},
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/security/prison/toilet)
"aal" = (
/obj/machinery/door/airlock{
name = "Bathroom"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/structure/sign/poster/official/cleanliness{
pixel_y = 32
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/security/prison/toilet)
"aao" = (
/obj/structure/lattice/catwalk,
/obj/structure/cable,
@@ -17208,15 +17245,6 @@
},
/turf/open/floor/plating,
/area/quartermaster/storage)
"aMc" = (
/obj/machinery/shower{
dir = 4
},
/obj/item/soap/nanotrasen,
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/security/prison)
"aMd" = (
/obj/structure/table,
/obj/item/storage/crayons,
@@ -17893,34 +17921,6 @@
},
/turf/open/floor/plasteel,
/area/quartermaster/storage)
"aNx" = (
/obj/structure/toilet{
dir = 4
},
/obj/machinery/light/small{
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 5
},
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/security/prison)
"aNy" = (
/obj/machinery/door/airlock{
name = "Bathroom"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/structure/sign/poster/official/cleanliness{
pixel_y = 32
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/security/prison)
"aNz" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -22168,6 +22168,7 @@
/obj/effect/turf_decal/tile/neutral{
dir = 8
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"aUx" = (
@@ -22212,6 +22213,7 @@
dir = 8
},
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"aUA" = (
@@ -22240,6 +22242,7 @@
/area/security/prison)
"aUB" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
@@ -168343,8 +168346,8 @@ ajr
aaa
aad
aFm
aMc
aNx
aaj
aak
aFm
aQY
aSE
@@ -168601,7 +168604,7 @@ aaa
aad
aFm
aKV
aNy
aal
aFm
aFm
aFm
+15 -9
View File
@@ -9073,6 +9073,7 @@
/obj/machinery/atmospherics/pipe/simple/dark/hidden/layer1{
dir = 4
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"ayQ" = (
@@ -10884,11 +10885,11 @@
name = "Unisex Restroom"
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"aDS" = (
/obj/structure/toilet,
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"aDT" = (
/obj/structure/sink{
dir = 8;
@@ -10981,7 +10982,7 @@
pixel_x = 11
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"aEf" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -18561,6 +18562,7 @@
dir = 9
},
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"aZz" = (
@@ -18596,6 +18598,7 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{
dir = 9
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"aZD" = (
@@ -21675,7 +21678,7 @@
"bhp" = (
/obj/machinery/light/small,
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"bhq" = (
/obj/structure/table,
/obj/machinery/recharger,
@@ -47861,6 +47864,9 @@
},
/turf/open/space/basic,
/area/space/nearstation)
"rrH" = (
/turf/open/floor/plasteel/freezer,
/area/security/prison/toilet)
"rrR" = (
/obj/structure/cable,
/turf/open/floor/plasteel/dark,
@@ -102743,7 +102749,7 @@ aZE
arp
arq
aDR
arq
rrH
aDQ
aDQ
baB
@@ -103000,8 +103006,8 @@ aeQ
afq
aiN
aiN
arq
arq
rrH
rrH
aij
bDI
aNZ
@@ -103257,7 +103263,7 @@ aeZ
afx
aiN
aDS
arq
rrH
bhp
aij
aEb
@@ -103514,7 +103520,7 @@ aeZ
afy
aiN
aDS
arq
rrH
aEe
aij
aaa
+21 -18
View File
@@ -8066,7 +8066,7 @@
/obj/effect/decal/cleanable/blood/gibs/limb,
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"anb" = (
/obj/effect/turf_decal/tile/purple{
dir = 4
@@ -8318,7 +8318,7 @@
dir = 1
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"anv" = (
/obj/machinery/computer/secure_data{
dir = 8
@@ -47498,7 +47498,7 @@
dir = 4
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"btj" = (
/obj/effect/turf_decal/tile/brown,
/obj/effect/turf_decal/tile/brown{
@@ -51949,7 +51949,7 @@
dir = 1
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"bAl" = (
/obj/effect/turf_decal/tile/green{
dir = 4
@@ -57698,8 +57698,9 @@
dir = 1;
pixel_y = -22
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"bIU" = (
/obj/machinery/camera{
c_tag = "Atmospherics Tank - O2";
@@ -58180,7 +58181,7 @@
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"bJC" = (
/obj/machinery/status_display/ai,
/turf/closed/wall,
@@ -75444,7 +75445,7 @@
},
/obj/structure/cable,
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"cjL" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
@@ -75468,8 +75469,9 @@
pixel_y = -22
},
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cjM" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
@@ -75498,7 +75500,7 @@
},
/obj/structure/cable,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cjN" = (
/obj/machinery/door/airlock/security/glass{
name = "Long-Term Cell 3";
@@ -75516,7 +75518,7 @@
},
/obj/structure/cable,
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"cjO" = (
/obj/effect/turf_decal/stripes/line{
dir = 4
@@ -86886,7 +86888,7 @@
/obj/effect/decal/cleanable/blood/gibs/old,
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cCv" = (
/obj/structure/bed,
/obj/item/bedsheet/black,
@@ -86913,7 +86915,7 @@
dir = 1
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cCw" = (
/obj/effect/turf_decal/tile/red,
/obj/effect/turf_decal/tile/red{
@@ -86939,7 +86941,7 @@
network = list("ss13","prison")
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cCx" = (
/obj/effect/turf_decal/stripes/line{
dir = 4
@@ -88912,7 +88914,7 @@
network = list("ss13","prison")
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cFS" = (
/obj/structure/lattice/catwalk,
/obj/effect/landmark/carpspawn,
@@ -93454,7 +93456,7 @@
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"cPb" = (
/obj/effect/turf_decal/tile/neutral{
dir = 4
@@ -93526,8 +93528,9 @@
dir = 1;
pixel_y = -22
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cQP" = (
/obj/machinery/door/airlock/security/glass{
name = "Long-Term Cell 2";
@@ -93544,7 +93547,7 @@
dir = 8
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
/area/security/prison/toilet)
"cRB" = (
/obj/structure/table,
/obj/item/paper_bin,
@@ -93655,7 +93658,7 @@
/obj/effect/decal/cleanable/dirt,
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/showroomfloor,
/area/security/prison)
/area/security/prison/toilet)
"cTl" = (
/obj/machinery/button/flasher{
id = "PCell 3";
+17 -5
View File
@@ -840,7 +840,7 @@
name = "Unisex Restroom"
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"abZ" = (
/obj/structure/table,
/obj/item/book/manual/chef_recipes{
@@ -967,7 +967,7 @@
dir = 4
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
/area/security/prison/toilet)
"acq" = (
/obj/structure/table,
/obj/item/storage/box/donkpockets{
@@ -71839,6 +71839,11 @@
},
/turf/open/floor/plasteel/white,
/area/medical/chemistry)
"fos" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"ftu" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
@@ -75966,6 +75971,13 @@
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/engine,
/area/science/misc_lab/range)
"vVP" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"vWK" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/turf_decal/stripes/line{
@@ -98754,7 +98766,7 @@ aaI
aaI
acE
adb
abE
fos
abE
aem
aeN
@@ -99782,7 +99794,7 @@ aca
act
acI
add
acv
vVP
adS
aen
aeM
@@ -100810,7 +100822,7 @@ abE
abE
abE
ade
abE
fos
abE
aeo
aeQ
+29 -26
View File
@@ -361,6 +361,30 @@
/obj/effect/mapping_helpers/iannewyear,
/turf/open/floor/wood,
/area/crew_quarters/heads/hop)
"aaU" = (
/obj/machinery/door/airlock{
name = "Unisex Restroom"
},
/turf/open/floor/plasteel/freezer,
/area/security/prison/toilet)
"aaV" = (
/obj/structure/sink{
dir = 4;
pixel_x = -12;
pixel_y = 2
},
/obj/machinery/light/small{
dir = 4
},
/turf/open/floor/plasteel/freezer,
/area/security/prison/toilet)
"aaW" = (
/obj/structure/toilet{
dir = 8
},
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel/freezer,
/area/security/prison/toilet)
"abf" = (
/obj/structure/bed,
/turf/open/floor/plating,
@@ -2049,12 +2073,6 @@
/obj/structure/cable,
/turf/open/floor/plasteel/dark,
/area/security/prison)
"agC" = (
/obj/machinery/door/airlock{
name = "Unisex Restroom"
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
"agD" = (
/obj/machinery/light/small{
dir = 8
@@ -2107,6 +2125,7 @@
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"agK" = (
@@ -2152,6 +2171,7 @@
},
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable,
/obj/effect/landmark/start/prisoner,
/turf/open/floor/plasteel,
/area/security/prison)
"agN" = (
@@ -2172,17 +2192,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel,
/area/security/prison)
"agO" = (
/obj/structure/sink{
dir = 4;
pixel_x = -12;
pixel_y = 2
},
/obj/machinery/light/small{
dir = 4
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
"agP" = (
/turf/closed/wall,
/area/security/main)
@@ -2260,12 +2269,6 @@
/obj/structure/cable,
/turf/open/floor/plasteel,
/area/security/prison)
"ahb" = (
/obj/structure/toilet{
dir = 8
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
"ahd" = (
/obj/structure/closet/secure_closet/security/sec,
/obj/effect/turf_decal/delivery,
@@ -80192,9 +80195,9 @@ afs
agy
agd
agp
agC
agO
ahb
aaU
aaV
aaW
agy
ahK
aih
+2
View File
@@ -42,6 +42,7 @@
#define CLOWN (1<<11)
#define MIME (1<<12)
#define ASSISTANT (1<<13)
#define PRISONER (1<<14)
#define JOB_AVAILABLE 0
#define JOB_UNAVAILABLE_GENERIC 1
@@ -88,3 +89,4 @@
#define JOB_DISPLAY_ORDER_WARDEN 31
#define JOB_DISPLAY_ORDER_DETECTIVE 32
#define JOB_DISPLAY_ORDER_SECURITY_OFFICER 33
#define JOB_DISPLAY_ORDER_PRISONER 34
+2
View File
@@ -133,6 +133,8 @@
heirloom_type = /obj/item/reagent_containers/food/drinks/bottle/whiskey
if("Lawyer")
heirloom_type = pick(/obj/item/gavelhammer, /obj/item/book/manual/wiki/security_space_law)
if("Prisoner")
heirloom_type = /obj/item/pen/blue
//RnD
if("Research Director")
heirloom_type = /obj/item/toy/plush/slimeplushie
@@ -18,7 +18,7 @@
area_type = /area
protected_areas = list(/area/maintenance, /area/ai_monitored/turret_protected/ai_upload, /area/ai_monitored/turret_protected/ai_upload_foyer,
/area/ai_monitored/turret_protected/ai, /area/storage/emergency/starboard, /area/storage/emergency/port, /area/shuttle)
/area/ai_monitored/turret_protected/ai, /area/storage/emergency/starboard, /area/storage/emergency/port, /area/security/prison/toilet, /area/shuttle)
target_trait = ZTRAIT_STATION
immunity_type = "rad"
+4
View File
@@ -733,6 +733,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
name = "Prison Wing"
icon_state = "sec_prison"
/area/security/prison/toilet
name = "Prison Toilet"
icon_state = "sec_prison"
/area/security/processing
name = "Labor Shuttle Dock"
icon_state = "sec_prison"
+1 -1
View File
@@ -5,7 +5,7 @@
/datum/game_mode/traitor/bros
name = "traitor+brothers"
config_tag = "traitorbro"
restricted_jobs = list("AI", "Cyborg")
restricted_jobs = list("Prisoner","AI", "Cyborg")
announce_span = "danger"
announce_text = "There are Syndicate agents and Blood Brothers on the station!\n\
+1 -1
View File
@@ -12,7 +12,7 @@ GLOBAL_VAR(changeling_team_objective_type) //If this is not null, we hand our th
antag_flag = ROLE_CHANGELING
false_report_weight = 10
restricted_jobs = list("AI", "Cyborg")
protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain")
protected_jobs = list("Prisoner", "Security Officer", "Warden", "Detective", "Head of Security", "Captain")
required_players = 15
required_enemies = 1
recommended_enemies = 4
@@ -4,7 +4,7 @@
report_type = "traitorchan"
false_report_weight = 10
traitors_possible = 3 //hard limit on traitors if scaling is turned off
restricted_jobs = list("AI", "Cyborg")
restricted_jobs = list("Prisoner","AI", "Cyborg")
required_players = 25
required_enemies = 1 // how many of each type are required
recommended_enemies = 3
+1 -1
View File
@@ -36,7 +36,7 @@
report_type = "cult"
antag_flag = ROLE_CULTIST
false_report_weight = 10
restricted_jobs = list("Chaplain","AI", "Cyborg", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel")
restricted_jobs = list("Prisoner","Chaplain","AI", "Cyborg", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel")
protected_jobs = list()
required_players = 29
required_enemies = 4
+1 -1
View File
@@ -4,7 +4,7 @@
report_type = "devil"
antag_flag = ROLE_DEVIL
false_report_weight = 1
protected_jobs = list("Lawyer", "Curator", "Chaplain", "Head of Security", "Captain", "AI")
protected_jobs = list("Prisoner", "Lawyer", "Curator", "Chaplain", "Head of Security", "Captain", "AI")
required_players = 0
required_enemies = 1
recommended_enemies = 4
+1 -1
View File
@@ -13,7 +13,7 @@
required_enemies = 1
recommended_enemies = 1
restricted_jobs = list("Cyborg", "AI")
restricted_jobs = list("Prisoner", "Cyborg", "AI")
announce_span = "Monkey"
announce_text = "One or more crewmembers have been infected with Jungle Fever! Crew: Contain the outbreak. None of the infected monkeys may escape alive to CentCom. Monkeys: Ensure that your kind lives on! Rise up against your captors!"
+1 -1
View File
@@ -13,7 +13,7 @@
report_type = "revolution"
antag_flag = ROLE_REV
false_report_weight = 10
restricted_jobs = list("Security Officer", "Warden", "Detective", "AI", "Cyborg","Captain", "Head of Personnel", "Head of Security", "Chief Engineer", "Research Director", "Chief Medical Officer")
restricted_jobs = list("Prisoner","Security Officer", "Warden", "Detective", "AI", "Cyborg","Captain", "Head of Personnel", "Head of Security", "Chief Engineer", "Research Director", "Chief Medical Officer")
required_jobs = list(list("Captain"=1),list("Head of Personnel"=1),list("Head of Security"=1),list("Chief Engineer"=1),list("Research Director"=1),list("Chief Medical Officer"=1)) //Any head present
required_players = 30
required_enemies = 2
+1 -1
View File
@@ -12,7 +12,7 @@
antag_flag = ROLE_TRAITOR
false_report_weight = 20 //Reports of traitors are pretty common.
restricted_jobs = list("Cyborg")//They are part of the AI if he is traitor so are they, they use to get double chances
protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain")
protected_jobs = list("Prisoner","Security Officer", "Warden", "Detective", "Head of Security", "Captain")
required_players = 0
required_enemies = 1
recommended_enemies = 4
+4
View File
@@ -67,6 +67,10 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark)
jobspawn_override = TRUE
delete_after_roundstart = FALSE
/obj/effect/landmark/start/prisoner
name = "Prisoner"
icon_state = "Prisoner"
/obj/effect/landmark/start/janitor
name = "Janitor"
icon_state = "Janitor"
@@ -53,6 +53,12 @@
head = /obj/item/clothing/head/helmet/space/plasmaman/security/warden
uniform = /obj/item/clothing/under/plasmaman/security/warden
/datum/outfit/plasmaman/prisoner
name = "Prisoner Plasmaman"
head = /obj/item/clothing/head/helmet/space/plasmaman/prisoner
uniform = /obj/item/clothing/under/plasmaman/prisoner
/datum/outfit/plasmaman/cargo
name = "Cargo Plasmaman"
@@ -156,6 +156,10 @@
icon_state = "warden_envirohelm"
item_state = "warden_envirohelm"
/obj/item/clothing/head/helmet/space/plasmaman/prisoner
name = "prisoner's plasma envirosuit helmet"
desc = "A plasmaman containment helmet for prisoners."
/obj/item/clothing/head/helmet/space/plasmaman/medical
name = "medical doctor's plasma envirosuit helmet"
desc = "An envirohelmet designed for plasmaman medical doctors, having two stripes down its length to denote as much."
@@ -60,6 +60,12 @@
icon_state = "clown_envirosuit"
item_state = "clown_envirosuit"
/obj/item/clothing/under/plasmaman/prisoner
name = "prisoner envirosuit"
desc = "An orange envirosuit identifying and protecting a criminal plasmaman."
icon_state = "prisoner_envirosuit"
item_state = "prisoner_envirosuit"
/obj/item/clothing/under/plasmaman/clown/Extinguish(mob/living/carbon/human/H)
if(!istype(H))
return
+1 -1
View File
@@ -359,7 +359,7 @@
return list("Assistant", "Captain", "Head of Personnel", "Bartender", "Cook", "Botanist", "Quartermaster", "Cargo Technician",
"Shaft Miner", "Clown", "Mime", "Janitor", "Curator", "Lawyer", "Chaplain", "Chief Engineer", "Station Engineer",
"Atmospheric Technician", "Chief Medical Officer", "Medical Doctor", "Paramedic", "Chemist", "Geneticist", "Virologist",
"Research Director", "Scientist", "Roboticist", "Head of Security", "Warden", "Detective", "Security Officer")
"Research Director", "Scientist", "Roboticist", "Head of Security", "Warden", "Detective", "Security Officer", "Prisoner")
/proc/get_all_job_icons() //For all existing HUD icons
return get_all_jobs() + list("Prisoner", "Emergency Response Team Commander", "Security Response Officer", "Engineering Response Officer", "Medical Response Officer", "Entertainment Response Officer", "Religious Response Officer", "Janitorial Response Officer", "Death Commando")
+23
View File
@@ -0,0 +1,23 @@
/datum/job/prisoner
title = "Prisoner"
flag = PRISONER
department_head = list("The Security Team")
department_flag = CIVILIAN
faction = "Station"
total_positions = 2
spawn_positions = 2
supervisors = "the security team"
outfit = /datum/outfit/job/prisoner
display_order = JOB_DISPLAY_ORDER_PRISONER
/datum/outfit/job/prisoner
name = "Prisoner"
jobtype = /datum/job/prisoner
uniform = /obj/item/clothing/under/rank/prisoner
shoes = /obj/item/clothing/shoes/sneakers/orange
id = /obj/item/card/id/prisoner
ears = null
belt = null
+1
View File
@@ -45,6 +45,7 @@ GLOBAL_LIST_INIT(civilian_positions, list(
"Chaplain",
"Clown",
"Mime",
"Prisoner",
"Assistant"))
@@ -86,6 +86,9 @@
if("Cook")
O = new /datum/outfit/plasmaman/chef
if("Prisoner")
O = new /datum/outfit/plasmaman/prisoner
if("Security Officer")
O = new /datum/outfit/plasmaman/security
+1
View File
@@ -10,6 +10,7 @@ Research Director=1,1
Chief Medical Officer=1,1
Assistant=-1,-1
Prisoner=0,2
Quartermaster=1,1
Cargo Technician=3,2
Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 KiB

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

+1
View File
@@ -1924,6 +1924,7 @@
#include "code\modules\jobs\job_types\medical_doctor.dm"
#include "code\modules\jobs\job_types\mime.dm"
#include "code\modules\jobs\job_types\paramedic.dm"
#include "code\modules\jobs\job_types\prisoner.dm"
#include "code\modules\jobs\job_types\quartermaster.dm"
#include "code\modules\jobs\job_types\research_director.dm"
#include "code\modules\jobs\job_types\roboticist.dm"