Skip to content

Commit

Permalink
NRI Police Outfit Redesign (#24433)
Browse files Browse the repository at this point in the history
* fucking finally

* defines unneeded

* CI fix

* This sure took a while

* oh god i forgot to pr this

* Apply suggestions from code review

Co-authored-by: Bloop <[email protected]>

* done

* Apply suggestions from code review

Co-authored-by: GoldenAlpharex <[email protected]>

* Missed this one.

Co-authored-by: GoldenAlpharex <[email protected]>

* This should do.

* Update readme.md

* Sucks!

* I Love Merge Conflicts!

* Sad I guess

* Map conflict fixed

* Update mod.dmi

* normal sized taser

---------

Co-authored-by: Bloop <[email protected]>
Co-authored-by: GoldenAlpharex <[email protected]>
  • Loading branch information
3 people authored and FFMirrorBot committed Nov 9, 2023
1 parent 9a3b953 commit b570a6a
Show file tree
Hide file tree
Showing 18 changed files with 147 additions and 66 deletions.
26 changes: 10 additions & 16 deletions _maps/shuttles/skyrat/pirate_nri_raider.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@
/obj/item/storage/box/zipties{
pixel_x = 2
},
/obj/item/gun/energy/e_gun/advtaser,
/obj/item/gun/energy/e_gun/advtaser,
/obj/item/gun/energy/e_gun/advtaser,
/obj/item/melee/baton,
/obj/item/melee/baton,
/obj/item/melee/baton,
/obj/item/gun/energy/e_gun/advtaser/normal,
/obj/item/gun/energy/e_gun/advtaser/normal,
/obj/item/gun/energy/e_gun/advtaser/normal,
/turf/open/floor/pod,
/area/shuttle/pirate/nri)
"be" = (
Expand Down Expand Up @@ -383,14 +383,12 @@
desc = "A secure crate to keep all your personal belongings in.";
anchored = 1
},
/obj/item/clothing/under/costume/nri/engineer,
/obj/item/clothing/mask/balaclavaadjust,
/obj/item/clothing/under/syndicate/rus_army/cin_surplus/marine,
/obj/item/clothing/glasses/meson/engine,
/obj/item/storage/belt/military/cin_surplus/marine,
/obj/item/clothing/suit/armor/vest/cin_surplus_vest,
/obj/item/clothing/head/helmet/cin_surplus_helmet/marine,
/obj/item/clothing/glasses/hud/security/sunglasses/peacekeeper,
/obj/item/clothing/head/helmet/nri_police,
/obj/item/clothing/suit/armor/vest/nri_police,
/obj/item/encryptionkey/heads/ce,
/turf/open/floor/pod/light,
/area/shuttle/pirate/nri)
Expand Down Expand Up @@ -469,8 +467,8 @@
/obj/effect/turf_decal/stripes/line{
dir = 4
},
/obj/item/gun/ballistic/shotgun/riot,
/obj/item/gun/ballistic/automatic/nri_smg,
/obj/item/gun/ballistic/shotgun/automatic/combat/compact,
/turf/open/floor/pod,
/area/shuttle/pirate/nri)
"rp" = (
Expand Down Expand Up @@ -817,13 +815,11 @@
anchored = 1
},
/obj/item/clothing/glasses/hud/health,
/obj/item/clothing/under/costume/nri/medic,
/obj/item/clothing/glasses/hud/security/sunglasses/peacekeeper,
/obj/item/clothing/mask/balaclavaadjust,
/obj/item/clothing/under/syndicate/rus_army/cin_surplus/marine,
/obj/item/storage/belt/military/cin_surplus/marine,
/obj/item/clothing/suit/armor/vest/cin_surplus_vest,
/obj/item/clothing/head/helmet/cin_surplus_helmet/marine,
/obj/item/clothing/head/helmet/nri_police,
/obj/item/clothing/suit/armor/vest/nri_police,
/obj/item/encryptionkey/heads/cmo,
/turf/open/floor/pod/light,
/area/shuttle/pirate/nri)
Expand Down Expand Up @@ -943,13 +939,11 @@
desc = "A secure crate to keep all your personal belongings in.";
anchored = 1
},
/obj/item/clothing/under/costume/nri/captain,
/obj/item/clothing/glasses/hud/security/sunglasses/peacekeeper,
/obj/item/clothing/mask/balaclavaadjust,
/obj/item/clothing/under/syndicate/rus_army/cin_surplus/marine,
/obj/item/storage/belt/military/cin_surplus/marine,
/obj/item/clothing/suit/armor/vest/cin_surplus_vest,
/obj/item/clothing/head/helmet/cin_surplus_helmet/marine,
/obj/item/clothing/head/helmet/nri_police,
/obj/item/clothing/suit/armor/vest/nri_police,
/obj/item/encryptionkey/heads/hos,
/turf/open/floor/pod/light,
/area/shuttle/pirate/nri)
Expand Down
2 changes: 2 additions & 0 deletions code/__DEFINES/~skyrat_defines/colors.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#define LIGHT_COLOR_CLOCKWORK "#BE8700"
#define COLOR_SOLFED_GOLD "#FFD900"
#define LIGHT_COLOR_YELLOW "#E1E17D"
#define COLOR_NRI_POLICE_BLUE "#1f3347"
#define COLOR_NRI_POLICE_SILVER "#c0c0c0"
Binary file modified modular_skyrat/master_files/icons/mob/huds/hud.dmi
Binary file not shown.
Binary file modified modular_skyrat/master_files/icons/mob/mod.dmi
Binary file not shown.
Binary file modified modular_skyrat/master_files/icons/obj/card.dmi
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,36 @@
item_type = /obj/item/clothing/suit/armor/vest/cin_surplus_vest
cost = PAYCHECK_COMMAND

/datum/armament_entry/company_import/nri_surplus/clothing/police_uniform
item_type = /obj/item/clothing/under/colonial/nri_police
cost = PAYCHECK_CREW
restricted = TRUE

/datum/armament_entry/company_import/nri_surplus/clothing/police_cloak
item_type = /obj/item/clothing/neck/cloak/colonial/nri_police
cost = PAYCHECK_CREW
restricted = TRUE

/datum/armament_entry/company_import/nri_surplus/clothing/police_cap
item_type = /obj/item/clothing/head/hats/colonial/nri_police
cost = PAYCHECK_CREW
restricted = TRUE

/datum/armament_entry/company_import/nri_surplus/clothing/police_mask
item_type = /obj/item/clothing/mask/gas/nri_police
cost = PAYCHECK_CREW*2
restricted = TRUE

/datum/armament_entry/company_import/nri_surplus/clothing/police_vest
item_type = /obj/item/clothing/head/helmet/nri_police
cost = PAYCHECK_COMMAND
restricted = TRUE

/datum/armament_entry/company_import/nri_surplus/clothing/police_helmet
item_type = /obj/item/clothing/suit/armor/vest/nri_police
cost = PAYCHECK_COMMAND
restricted = TRUE

// Random surplus store tier stuff, flags, old rations, multitools you'll never use, so on

/datum/armament_entry/company_import/nri_surplus/misc
Expand Down
91 changes: 45 additions & 46 deletions modular_skyrat/modules/encounters/code/nri_raiders.dm
Original file line number Diff line number Diff line change
Expand Up @@ -107,20 +107,21 @@ GLOBAL_VAR(first_officer)
var/obj/item/card/id/id_card = equipped.wear_id
if(istype(id_card))
id_card.registered_name = equipped.real_name
id_card.update_icon()
id_card.update_label()

handlebank(equipped)

/datum/outfit/pirate/nri/officer
name = "NRI Field Officer"

head = /obj/item/clothing/head/beret/sec/nri
head = /obj/item/clothing/head/hats/colonial/nri_police
glasses = /obj/item/clothing/glasses/sunglasses
ears = /obj/item/radio/headset/guild/command
mask = null
neck = /obj/item/clothing/neck/security_cape/armplate
neck = /obj/item/clothing/neck/cloak/colonial/nri_police

uniform = /obj/item/clothing/under/costume/nri/captain
uniform = /obj/item/clothing/under/colonial/nri_police
suit = null

gloves = /obj/item/clothing/gloves/combat
Expand All @@ -129,49 +130,52 @@ GLOBAL_VAR(first_officer)

belt = /obj/item/storage/belt/security/nri
back = /obj/item/storage/backpack/satchel/leather
backpack_contents = list(/obj/item/storage/box/nri_survival_pack/raider = 1, /obj/item/ammo_box/magazine/m9mm_aps = 3, /obj/item/gun/ballistic/automatic/pistol/nri = 1, /obj/item/crucifix = 1, /obj/item/clothing/mask/gas/hecu2 = 1, /obj/item/modular_computer/pda/security = 1)
backpack_contents = list(
/obj/item/storage/box/nri_survival_pack/raider = 1,
/obj/item/ammo_box/magazine/m9mm_aps = 3,
/obj/item/gun/ballistic/automatic/pistol/nri = 1,
/obj/item/crucifix = 1,
/obj/item/clothing/mask/gas/nri_police = 1,
/obj/item/modular_computer/pda/nri_police = 1,
)
l_pocket = /obj/item/folder/blue/nri_cop
r_pocket = /obj/item/storage/pouch/ammo

id = /obj/item/card/id/advanced
id_trim = /datum/id_trim/nri_raider/officer

/datum/id_trim/nri_raider/officer
assignment = "NRI Field Officer"

/datum/outfit/pirate/nri/marine
name = "NRI Marine"

head = null
glasses = /obj/item/clothing/glasses/sunglasses
ears = /obj/item/radio/headset/guild
mask = null

uniform = /obj/item/clothing/under/costume/nri
suit = null

gloves = /obj/item/clothing/gloves/combat

shoes = /obj/item/clothing/shoes/combat

belt = /obj/item/storage/belt/security/nri
back = /obj/item/storage/backpack/satchel/leather
backpack_contents = list(/obj/item/storage/box/nri_survival_pack/raider = 1, /obj/item/crucifix = 1, /obj/item/ammo_box/magazine/m9mm = 3, /obj/item/clothing/mask/gas/hecu2 = 1, /obj/item/modular_computer/pda/security = 1)
l_pocket = /obj/item/gun/ballistic/automatic/pistol
r_pocket = /obj/item/storage/pouch/ammo
id = /obj/item/card/id/advanced/nri_police
id_trim = /datum/id_trim/nri_police

/obj/item/modular_computer/pda/nri_police
name = "\improper NRI police PDA"
device_theme = PDA_THEME_TERMINAL
greyscale_colors = "#363655#7878f7"
comp_light_luminosity = 6.3 //Matching a flashlight
comp_light_color = "#5c20aa" //Simulated ultraviolet light for finding blood and :flushed:
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/crew_manifest,
/datum/computer_file/program/robocontrol,
)
inserted_item = /obj/item/pen/fourcolor

id = /obj/item/card/id/advanced
id_trim = /datum/id_trim/nri_raider
/obj/item/card/id/advanced/nri_police
name = "\improper NRI police identification card"
desc = "A retro-looking card model modified to work with the modern identification systems."
icon = 'modular_skyrat/master_files/icons/obj/card.dmi'
icon_state = "card_nri_police"
assigned_icon_state = "assigned_nri_police"

/datum/id_trim/nri_raider
assignment = "NRI Marine"
/datum/id_trim/nri_police
assignment = "NRI Field Officer"
trim_icon = 'modular_skyrat/master_files/icons/obj/card.dmi'
trim_state = "trim_nri"
department_color = COLOR_RED_LIGHT
subdepartment_color = COLOR_COMMAND_BLUE
sechud_icon_state = "hud_nri"
trim_state = "trim_nri_police"
department_color = COLOR_NRI_POLICE_BLUE
subdepartment_color = COLOR_NRI_POLICE_SILVER
sechud_icon_state = "hud_nri_police"
access = list(ACCESS_SYNDICATE, ACCESS_MAINT_TUNNELS)

/obj/item/gun/energy/e_gun/advtaser/normal
w_class = WEIGHT_CLASS_NORMAL

/obj/effect/mob_spawn/ghost_role/human/nri_raider
name = "NRI Raider sleeper"
desc = "Cozy. You get the feeling you aren't supposed to be here, though..."
Expand All @@ -183,7 +187,7 @@ GLOBAL_VAR(first_officer)
you_are_text = "You are a Novaya Rossiyskaya Imperiya task force."
flavour_text = "The station has refused to pay the fine for breaking Imperial regulations, you are here to recover the debt. Do so by demanding the funds. Force approach is usually recommended, but isn't the only method."
important_text = "Allowed races are humans, Akulas, IPCs. Follow your field officer's orders. Important mention - while you are listed as the pirates gamewise, you really aren't lore-and-everything-else-wise. Roleplay accordingly."
outfit = /datum/outfit/pirate/nri/marine
outfit = /datum/outfit/pirate/nri
restricted_species = list(/datum/species/human, /datum/species/akula, /datum/species/synthetic)
random_appearance = FALSE
show_flavor = TRUE
Expand Down Expand Up @@ -255,8 +259,10 @@ GLOBAL_VAR(first_officer)
var/obj/item/card/id/advanced/card = spawned_human.get_idcard()
if(GLOB.first_officer == spawned_human)
card.assignment = pick(NRI_LEADER_JOB_LIST)
card.trim.sechud_icon_state = "hud_nri_police_lead"
else
card.assignment = pick(NRI_JOB_LIST)
card.trim.sechud_icon_state = "hud_nri_police"

card.update_label()

Expand Down Expand Up @@ -344,13 +350,6 @@ GLOBAL_VAR(first_officer)
command_name = "NRI Enforcer-Class Starship Telegram"
report_sound = ANNOUNCER_NRI_RAIDERS

/obj/item/storage/belt/military/nri/captain/pirate_officer/PopulateContents()
generate_items_inside(list(
/obj/item/knife/combat = 1,
/obj/item/grenade/smokebomb = 1,
/obj/item/grenade/flashbang = 1,
),src)

/obj/item/storage/belt/security/nri/PopulateContents()
generate_items_inside(list(
/obj/item/knife/combat = 1,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,11 @@ GLOBAL_LIST_INIT(loadout_miscunders, generate_loadout_items(/datum/loadout_item/
item_path = /obj/item/clothing/under/rank/security/peacekeeper
restricted_roles = list(JOB_SECURITY_OFFICER, JOB_WARDEN, JOB_HEAD_OF_SECURITY)

/datum/loadout_item/under/jumpsuit/imperial_police_uniform
name = "Imperial Police Uniform"
item_path = /obj/item/clothing/under/colonial/nri_police
restricted_roles = list(JOB_SECURITY_OFFICER, JOB_DETECTIVE)

/datum/loadout_item/under/jumpsuit/disco
name = "Superstar Cop Uniform"
item_path = /obj/item/clothing/under/rank/security/detective/disco
Expand Down
49 changes: 49 additions & 0 deletions modular_skyrat/modules/novaya_ert/code/police_outfit.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
/obj/item/clothing/under/colonial/nri_police
name = "imperial police outfit"
desc = "Fancy blue durathread shirt and a pair of cotton-blend pants with a black synthleather belt. A time-tested design first employed by the NRI police's \
precursor organisation, Rim-world Colonial Militia, now utilised by them as a tribute."
icon_state = "under_police"
armor_type = /datum/armor/clothing_under/rank_security
strip_delay = 5 SECONDS
sensor_mode = SENSOR_COORDS
random_sensor = FALSE
can_adjust = FALSE

/obj/item/clothing/neck/cloak/colonial/nri_police
name = "imperial police cloak"
desc = "A cloak made from heavy tarpaulin. Nigh wind- and waterproof thanks to its design. The signature white rectangle of the NRI police covers the garment's back."
icon_state = "cloak_police"

/obj/item/clothing/head/hats/colonial/nri_police
name = "imperial police cap"
desc = "A puffy cap made out of tarpaulin covered by some textile. It is sturdy and comfortable, and seems to retain its form very well. <br>\
Silver NRI police insignia is woven right above its visor."
icon_state = "cap_police"
armor_type = /datum/armor/cosmetic_sec

/obj/item/clothing/mask/gas/nri_police
name = "imperial police mask"
desc = "A close-fitting tactical mask."
icon = 'modular_skyrat/modules/novaya_ert/icons/mask.dmi'
worn_icon = 'modular_skyrat/modules/novaya_ert/icons/wornmask.dmi'
worn_icon_digi = 'modular_skyrat/modules/novaya_ert/icons/wornmask_digi.dmi'
icon_state = "nri_police"
inhand_icon_state = "swat"
flags_inv = HIDEFACIALHAIR | HIDEFACE | HIDESNOUT
visor_flags_inv = 0
flags_cover = MASKCOVERSMOUTH | MASKCOVERSEYES | PEPPERPROOF
visor_flags_cover = MASKCOVERSMOUTH | MASKCOVERSEYES | PEPPERPROOF

/obj/item/clothing/head/helmet/nri_police
name = "imperial police helmet"
desc = "Thick-looking tactical helmet made out of shaped Plasteel. Colored dark blue, similar to one imperial police is commonly using."
icon_state = "police_helmet"
icon = 'modular_skyrat/modules/novaya_ert/icons/armor.dmi'
worn_icon = 'modular_skyrat/modules/novaya_ert/icons/wornarmor.dmi'

/obj/item/clothing/suit/armor/vest/nri_police
name = "imperial police plate carrier"
desc = "A reasonably heavy, yet comfortable armor vest comprised of a bunch of dense plates. Colored dark blue and bears a reflective stripe on the front and back."
icon_state = "police_vest"
icon = 'modular_skyrat/modules/novaya_ert/icons/armor.dmi'
worn_icon = 'modular_skyrat/modules/novaya_ert/icons/wornarmor.dmi'
Binary file added modular_skyrat/modules/novaya_ert/icons/armor.dmi
Binary file not shown.
Binary file added modular_skyrat/modules/novaya_ert/icons/mask.dmi
Binary file not shown.
Binary file modified modular_skyrat/modules/novaya_ert/icons/mod.dmi
Binary file not shown.
Binary file not shown.
Binary file added modular_skyrat/modules/novaya_ert/icons/wornmask.dmi
Binary file not shown.
Binary file not shown.
Binary file modified modular_skyrat/modules/novaya_ert/icons/wornmod.dmi
Binary file not shown.
9 changes: 5 additions & 4 deletions modular_skyrat/modules/novaya_ert/readme.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
## Title: Novaya Rossiyskaya Imperiya ERT
## Title: Novaya Rossiyskaya Imperiya Module

MODULE ID: NRI ERT
MODULE ID: NRI STUFF

### Description:

A new style ERT for our Russian downstream, requested by them! It's a cool looking Russian style space ERT with guns and vodka!
Everything mainly NRI-related, from various cosmetic clothing to guns to ERTs.

### Credits:
Gandalf2k15 - Code and some icons.
Stalkeros - Code and some icons.
Zydras - NRI police clothing, stun gun and NRI holobarriers icons.
Ramirez - Icons and idea.
Flavrius - Icons + misc.
Paxilmaniac - Surplus weapons and armor
Paxilmaniac - Surplus weapons and armor.
1 change: 1 addition & 0 deletions tgstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -7593,6 +7593,7 @@
#include "modular_skyrat\modules\novaya_ert\code\id.dm"
#include "modular_skyrat\modules\novaya_ert\code\mod_suit.dm"
#include "modular_skyrat\modules\novaya_ert\code\outfit.dm"
#include "modular_skyrat\modules\novaya_ert\code\police_outfit.dm"
#include "modular_skyrat\modules\novaya_ert\code\shield.dm"
#include "modular_skyrat\modules\novaya_ert\code\suit.dm"
#include "modular_skyrat\modules\novaya_ert\code\surplus_armor.dm"
Expand Down

0 comments on commit b570a6a

Please sign in to comment.