Skip to content

Commit

Permalink
i drive
Browse files Browse the repository at this point in the history
  • Loading branch information
Glamyrio committed Nov 6, 2024
1 parent 68f0748 commit 8d06e7b
Show file tree
Hide file tree
Showing 33 changed files with 1,499 additions and 572 deletions.
808 changes: 603 additions & 205 deletions _maps/map_files220/stations/boxstation.dmm

Large diffs are not rendered by default.

501 changes: 283 additions & 218 deletions _maps/map_files220/stations/deltastation.dmm

Large diffs are not rendered by default.

519 changes: 376 additions & 143 deletions _maps/map_files220/stations/metastation.dmm

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions code/datums/datacore.dm
Original file line number Diff line number Diff line change
Expand Up @@ -533,6 +533,11 @@ GLOBAL_VAR_INIT(record_id_num, 1001)
clothes_s = new /icon('modular_ss220/jobs/icons/clothing/mob/uniform.dmi', "trainee_s")
clothes_s.Blend(new /icon('icons/mob/clothing/feet.dmi', "orange"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/clothing/belt.dmi', "utility"), ICON_OVERLAY)

if("Security Medic")
clothes_s = new /icon('modular_ss220/jobs/icons/clothing/mob/uniform.dmi', "sec_medic_s")
clothes_s.Blend(new /icon('icons/mob/clothing/feet.dmi', "laceups"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/clothing/suit.dmi', "labcoat_open"), ICON_OVERLAY)
// SS220 ADDITION - END

if("Syndicate Agent")
Expand Down
2 changes: 2 additions & 0 deletions code/game/jobs/job/security_jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,8 @@
H.dna.SetSEState(GLOB.soberblock, TRUE)
H.check_mutations = 1

datum/job/brigphysic // SS220 ADDITION - add brig physician

/datum/job/officer
title = "Security Officer"
flag = JOB_OFFICER
Expand Down
2 changes: 2 additions & 0 deletions code/game/objects/items/weapons/cards_ids.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1189,6 +1189,8 @@
return "Thunderdome Red"
if("TDgreen")
return "Thunderdome Green"
if("brigphysician")
return "Security Medic" //SS220 ADDICTION - add brig physician
else
return capitalize(skin)

Expand Down
2 changes: 1 addition & 1 deletion code/modules/mob/living/carbon/human/species/plasmaman.dm
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@
if("Chef")
O = new /datum/outfit/plasmaman/chef

if("Security Officer", "Special Operations Officer")
if("Security Officer", "Special Operations Officer", "Security Medic")
O = new /datum/outfit/plasmaman/security

if("Detective")
Expand Down
1 change: 1 addition & 0 deletions config/example/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -497,6 +497,7 @@ job_slot_amounts = [
{ name = "Security Cadet", lowpop = 0, highpop = 0 },
{ name = "Warden", lowpop = 1, highpop = 1 },
{ name = "Internal Affairs Agent", lowpop = 2, highpop = 2 },
{ name = "Security Medic", lowpop = 1, highpop = 1 },
# Service
{ name = "Bartender", lowpop = 1, highpop = 1 },
{ name = "Botanist", lowpop = 2, highpop = 2 },
Expand Down
Binary file modified icons/obj/pda.dmi
Binary file not shown.
5 changes: 3 additions & 2 deletions modular_ss220/_defines220/code/job_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
// Но так как они больше не планируют и выступают против добавления новых профессий, скорее всего ничего и не изменится.

// JOBCAT_"отдел"_LAST - нужен для корректного вывода из БД, иначе чуда не будет.
// Максимальный сдвиг (1<<22), Последний сдвиг (1<<23)
// Максимальный сдвиг (1<<23), Последний сдвиг (1<<24)
// Он должен быть всегда как минимум на 1 больше последнего, по дефолту у ОФФов (1<<16)


Expand All @@ -22,8 +22,9 @@
#define JOB_VIP_GUEST (1<<20)
#define JOB_BANKER (1<<21)
#define JOB_SECURITY_CLOWN (1<<22)
#define JOB_BRIGPHYSICIAN (1<<23)

#define JOBCAT_LAST_ENGSEC (1<<23)
#define JOBCAT_LAST_ENGSEC (1<<24)


// ====================================
Expand Down
2 changes: 1 addition & 1 deletion modular_ss220/aesthetics/better_ids/code/better_ids.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GLOBAL_LIST_INIT(card_skins_ss220, list(
"id", "silver", "gold", "data",
"assistant", "civilian", "librarian", "chaplain", "janitor", "botanist", "chef", "bartender", "clown", "mime",
"intern", "medical", "paramedic", "psychiatrist", "coroner", "virologist", "chemist", "warden", "internalaffairsagent",
"intern", "medical", "paramedic", "psychiatrist", "coroner", "virologist", "chemist", "brigphysician", "warden", "internalaffairsagent",
"geneticist", "student", "research", "roboticist", "cadet", "security", "detective", "quartermaster", "cargo", "explorer",
"shaftminer", "trainee", "engineering", "atmostech", "captain", "HoP", "HoS", "CMO", "RD", "CE", "prisoner", "rainbow"
))
Expand Down
Binary file modified modular_ss220/aesthetics/better_ids/icons/better_ids.dmi
Binary file not shown.
24 changes: 24 additions & 0 deletions modular_ss220/aesthetics/closets/code/closets.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,27 @@

/obj/structure/closet/secure_closet/personal/cabinet
icon = 'modular_ss220/aesthetics/closets/icons/closets.dmi'

/obj/structure/closet/secure_closet/brigphysic
name = "security medic's locker"
req_access = list(ACCESS_SECURITY)
icon_state = "sec"

/obj/structure/closet/secure_closet/brigphysic/populate_contents()
if(prob(50))
new /obj/item/storage/backpack/security(src)
else
new /obj/item/storage/backpack/satchel_sec(src)
new /obj/item/radio/headset/headset_secmedical/alt(src)
new /obj/item/radio/headset/headset_secmedical(src)
new /obj/item/defibrillator/compact/loaded(src)
new /obj/item/holosign_creator/security(src)
new /obj/item/storage/box/gloves(src)
new /obj/item/storage/box/masks(src)
new /obj/item/storage/box/syringes(src)
new /obj/item/storage/box/autoinjectors(src)
new /obj/item/storage/box/bodybags(src)
new /obj/item/clothing/glasses/hud/health/sunglasses(src)
new /obj/item/flashlight/seclite(src)
new /obj/item/clothing/gloves/color/latex(src)
new /obj/item/clothing/gloves/color/latex/nitrile(src)
Binary file modified modular_ss220/clothing/icons/mob/species/drask/under.dmi
Binary file not shown.
Binary file modified modular_ss220/clothing/icons/mob/species/vox/under.dmi
Binary file not shown.
2 changes: 1 addition & 1 deletion modular_ss220/jobs/_jobs.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/modpack/jobs
name = "Работы"
desc = "Новые джобки и изменения старых"
author = "furior, PhantomRU"
author = "furior, PhantomRU, Glamyr"

/datum/modpack/jobs/initialize()
. = ..()
Expand Down
8 changes: 8 additions & 0 deletions modular_ss220/jobs/code/card_id.dm
Original file line number Diff line number Diff line change
Expand Up @@ -209,3 +209,11 @@
access = list(ACCESS_CLOWN, ACCESS_THEATRE, ACCESS_MAINT_TUNNELS, ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT)
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi'
icon_state = "securityclown"

/obj/item/card/id/brigphysician
name = "Security Medic ID"
icon = 'modular_ss220/aesthetics/better_ids/icons/better_ids.dmi'
icon_state = "brigphysician"
registered_name = "Security Medic"
access = list(ACCESS_BRIG, ACCESS_COURT, ACCESS_EVA, ACCESS_MAINT_TUNNELS, ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SEC_DOORS, ACCESS_SECURITY, ACCESS_SURGERY, ACCESS_WEAPONS, ACCESS_CREMATORIUM)

62 changes: 62 additions & 0 deletions modular_ss220/jobs/code/clothing/security_clothing.dm
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,65 @@
item_color = "security_clown"
item_state = "clown"

/obj/item/clothing/under/rank/security/brigphysic
name = "security medic turtleneck"
icon = 'modular_ss220/jobs/icons/clothing/uniforms.dmi'
icon_override = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi'
desc = "Модная и удобная водолазка, специально для медика отдела службы безопасности!"
icon_state = "sec_medic_s"
item_state = "sec_medic_s"
item_color = "sec_medic"
sprite_sheets = null
random_sensor = TRUE
sprite_sheets = list(
"Abductor" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Ancient Skeleton" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Diona" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Drask" = 'modular_ss220/clothing/icons/mob/species/drask/under.dmi',
"Golem" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Grey" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Human" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Kidan" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Machine" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Monkey" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Nian" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Plasmaman" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Shadow" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Skrell" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Slime People" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Tajaran" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Unathi" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Vox" = 'modular_ss220/clothing/icons/mob/species/vox/under.dmi',
"Vulpkanin" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Nucleation" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
)


/obj/item/clothing/under/rank/security/brigphysic/skirt
name = "security medic skirtleneck"
desc = "Модная и удобная юбка-водолазка, специально для медика отдела службы безопасности!"
icon_state = "sec_medic_skirt_s"
item_state = "sec_medic_skirt_s"
item_color = "sec_medic_skirt"
sprite_sheets = list(
"Abductor" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Ancient Skeleton" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Diona" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Drask" = 'modular_ss220/clothing/icons/mob/species/drask/under.dmi',
"Golem" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Grey" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Human" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Kidan" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Machine" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Monkey" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Nian" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Plasmaman" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Shadow" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Skrell" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Slime People" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Tajaran" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Unathi" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Vox" = 'modular_ss220/clothing/icons/mob/species/vox/under.dmi',
"Vulpkanin" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
"Nucleation" = 'modular_ss220/jobs/icons/clothing/mob/uniform.dmi',
)
58 changes: 58 additions & 0 deletions modular_ss220/jobs/code/job/security_jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@
/datum/job/officer
exp_map = list(EXP_TYPE_SECURITY = (600 + NOVICE_CADET_JOB_MINUTES))

/datum/job/brigphysic
exp_map = list(EXP_TYPE_SECURITY = (900 + NOVICE_CADET_JOB_MINUTES))

/datum/job/detective
exp_map = list(EXP_TYPE_SECURITY = (900 + NOVICE_CADET_JOB_MINUTES))

Expand All @@ -61,3 +64,58 @@

/datum/job/hos
exp_map = list(EXP_TYPE_SECURITY = (1200 + NOVICE_CADET_JOB_MINUTES))

/datum/job/brigphysic
title = "Security Medic"
flag = JOB_BRIGPHYSICIAN
department_flag = JOBCAT_ENGSEC
total_positions = 1
spawn_positions = 1
alt_titles = list("Brig Physician", "Security Doctor", "Security Paramedic")
supervisors = "the head of security"
department_head = list("Head of Security")
selection_color = "#ffeeee"
job_department_flags = DEP_FLAG_SECURITY
access = list(ACCESS_BRIG, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MEDICAL, ACCESS_MORGUE, ACCESS_SEC_DOORS, ACCESS_SECURITY, ACCESS_SURGERY, ACCESS_WEAPONS, ACCESS_CREMATORIUM, ACCESS_EVA)
minimal_player_age = 21
exp_map = list(EXP_TYPE_SECURITY = 900)
blacklisted_disabilities = list(DISABILITY_FLAG_BLIND, DISABILITY_FLAG_DEAF, DISABILITY_FLAG_MUTE, DISABILITY_FLAG_DIZZY)
missing_limbs_allowed = FALSE
outfit = /datum/outfit/job/brigphysic
important_information = "Вы медик службы безопасности. \
Лечите своих коллег и заключённых. Следите за стерильностью своей комнаты. \
Помните о том что вы не офицер службы безопаности, а их медик и вместо войны должны заниматся лечением."

/datum/outfit/job/brigphysic
name = "Security Medic"
jobtype = /datum/job/brigphysic
uniform = /obj/item/clothing/under/rank/security/brigphysic
suit = /obj/item/clothing/suit/storage/labcoat
gloves = /obj/item/clothing/gloves/color/black
shoes = /obj/item/clothing/shoes/laceup
head = /obj/item/clothing/head/beret/sec
l_ear = /obj/item/radio/headset/headset_secmedical/alt
id = /obj/item/card/id/brigphysician
l_pocket = /obj/item/reagent_containers/spray/pepper
r_pocket = /obj/item/flash
l_hand = /obj/item/storage/firstaid/doctor
pda = /obj/item/pda/brigphysic
backpack_contents = list(
/obj/item/melee/classic_baton/telescopic = 1
)

bio_chips = list(/obj/item/bio_chip/mindshield)

backpack = /obj/item/storage/backpack/security
satchel = /obj/item/storage/backpack/satchel_sec
dufflebag = /obj/item/storage/backpack/duffel/security

/datum/outfit/job/brigphysic/pre_equip(mob/living/carbon/human/H, visualsOnly)
. = ..()

if(H.gender == FEMALE)
uniform = /obj/item/clothing/under/rank/security/brigphysic/skirt

var/list/blacklisted_partial = list(

Check failure on line 119 in modular_ss220/jobs/code/job/security_jobs.dm

View workflow job for this annotation

GitHub Actions / Run Linters

Check Grep

modular_ss220/jobs/code/job/security_jobs.dm:119: Unmanaged global var use detected in code, please use the helpers.
/datum/job/brigphysic
)
15 changes: 14 additions & 1 deletion modular_ss220/jobs/code/jobs_character.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
var/datum/outfit/plasmaman/O = new /datum/outfit/plasmaman
switch(current_job)

if("Security Cadet")
if("Security Cadet", "Security Medic")
O = new /datum/outfit/plasmaman/security

if("Medical Intern")
Expand Down Expand Up @@ -207,6 +207,19 @@
else if(backbag == 3 || backbag == 4)
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "satchel-clown"), ICON_OVERLAY)

if(JOB_BRIGPHYSICIAN)
clothes_s = new /icon('modular_ss220/jobs/icons/clothing/mob/uniform.dmi', "sec_medic[g ? "_skirt" : ""]_s")
clothes_s.Blend(new /icon('icons/mob/clothing/feet.dmi', "laceups"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/clothing/hands.dmi', "bgloves"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/clothing/head/beret.dmi',"beret_officer"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/clothing/suit.dmi', "labcoat_open"), ICON_OVERLAY)
switch(backbag)
if(1)
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "securitypack"), ICON_OVERLAY)
if(2)
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "satchel-sec"), ICON_OVERLAY)
if(3)
clothes_s.Blend(new /icon('icons/mob/clothing/back.dmi', "satchel"), ICON_OVERLAY)

else if(job_support_high)
switch(job_support_high)
Expand Down
1 change: 1 addition & 0 deletions modular_ss220/jobs/code/jobs_global_list.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ GLOBAL_LIST_INIT(engineering_positions_ss220, list(
))

GLOBAL_LIST_INIT(security_positions_ss220, list(
"Security Medic",
"Security Cadet",
))

Expand Down
5 changes: 5 additions & 0 deletions modular_ss220/jobs/code/landmarks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,8 @@
icon = 'modular_ss220/jobs/icons/landmarks.dmi'
name = "Bath"
icon_state = "bath"

/obj/effect/landmark/start/brigphysician
icon = 'modular_ss220/jobs/icons/landmarks.dmi'
name = "Security Medic"
icon_state = "brigphysician"
21 changes: 21 additions & 0 deletions modular_ss220/jobs/code/objects/job_objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -179,3 +179,24 @@
new /obj/item/grenade/chem_grenade/cleaner(src)
new /obj/item/grenade/chem_grenade/cleaner(src)
update_icon()

// Гарнитура Бриг-Медика //
/obj/item/encryptionkey/headset_secmedical
name = "Security-Medical Radio Encryption Key"
icon_state = "sec_cypherkey"
channels = list("Security" = 1, "Medical" = 1)

/obj/item/radio/headset/headset_secmedical
name = "Security-medical radio headset"
desc = "Это используется вашим элитным медиком службы безопасности."
icon_state = "sec_headset"
item_state = "headset"
ks2type = /obj/item/encryptionkey/headset_secmedical


/obj/item/radio/headset/headset_secmedical/alt
name = "Security-medical bowman headset"
desc = "Это используется вашим элитным медиком службы безопасности. Защищает уши от светошумовых гранат."
flags = EARBANGPROTECT
icon_state = "sec_headset_alt"
item_state = "sec_headset_alt"
Binary file modified modular_ss220/jobs/icons/clothing/mob/uniform.dmi
Binary file not shown.
Binary file modified modular_ss220/jobs/icons/clothing/uniforms.dmi
Binary file not shown.
Binary file modified modular_ss220/jobs/icons/hud.dmi
Binary file not shown.
Binary file modified modular_ss220/jobs/icons/landmarks.dmi
Binary file not shown.
Binary file modified modular_ss220/jobs/icons/uniforms.dmi
Binary file not shown.
6 changes: 6 additions & 0 deletions modular_ss220/maps220/code/Station/station_areas.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@
icon_state = "security"
request_console_name = "Security"

/area/station/security/brigmed
name = "Медпункт отдела Службы Безопасности"
icon = 'modular_ss220/maps220/icons/areas.dmi'
icon_state = "brigmed"
request_console_name = "Security"

/area/mine/laborcamp
request_console_name = "Labor Camp"

Expand Down
Binary file modified modular_ss220/maps220/icons/areas.dmi
Binary file not shown.
1 change: 1 addition & 0 deletions modular_ss220/objects/_objects.dme
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
#include "code/miscellaneous.dm"
#include "code/officetoys.dm"
#include "code/papershredder.dm"
#include "code/pdas.dm"
#include "code/plastic_chair.dm"
#include "code/platform.dm"
#include "code/posters.dm"
Expand Down
18 changes: 18 additions & 0 deletions modular_ss220/objects/code/pdas.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/obj/item/pda/brigphysic
default_cartridge = /obj/item/cartridge/secmed
icon = 'icons/obj/pda.dmi' //для сохранения функционала ПДА-пэйнтера
icon_state = "pda-brigphysic"
desc = "ПДА для медика отдела службы безопасности. Включает в себя передовой картридж, только если его не украли."

// картридж для пда //
/obj/item/cartridge/secmed
name = "Sec&med"
desc = "A data cartridge for portable microcomputers. Has medical and security records and a med and reagent scanners."
icon = 'icons/obj/pda.dmi'
icon_state = "cart-sm"
programs = list(
new /datum/data/pda/utility/scanmode/medical,
new /datum/data/pda/utility/scanmode/reagent,
new /datum/data/pda/app/crew_records/security,
new /datum/data/pda/app/crew_records/medical,
)
3 changes: 3 additions & 0 deletions modular_ss220/text_to_speech/code/tts_subsystem.dm
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,9 @@ SUBSYSTEM_DEF(tts220)
"Security Assistant" = "Ассистент службы безопасности",
"Security Graduate" = "Выпускник кадетской академии",
"brig physician" = "Врач брига",
"security medic" = "Медик службы безопасности",
"security doctor" = "Доктор службы безопасности",
"security paramedic" = "Парамедик службы безопасности",
"security pod pilot" = "Пилот пода службы безопасности",
"captain" = "Капитан",
"ai" = "И И",
Expand Down

0 comments on commit 8d06e7b

Please sign in to comment.