Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add new role Brig Engener #713

Merged
merged 21 commits into from
Dec 17, 2024
59 changes: 30 additions & 29 deletions Content.Server/_Cats/Radio/JobPlayer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ public sealed class JobPlayer : EntitySystem
{ "бригмед", "#ff2727" },
{ "бригмедик", "#ff2727" },
{ "бм", "#ff2727" },
{ "полевой инженер", "#ff2727"},
//Инжи
{ "инженер станции", "orange" },
{ "инженер", "orange" },
Expand Down Expand Up @@ -151,35 +152,35 @@ public sealed class JobPlayer : EntitySystem
{ "беглец", "#BDB76B" },
{ "лидер РХБЗЗ", "#C0C0C0" },
{ "оперативник РХБЗЗ", "#BDB76B" },
{ "Omicron", "#C0C0C0" },
{ "Сотрудник Мобильной Группы", "#C0C0C0" },
{ "Сотрудник Исследовательской Группы", "#C0C0C0" },
{ "Агент Красного Ордена", "#BDB76B" },
{ "Представитель ОПЗ", "#C0C0C0" },
{ "Офицер ОПЗ", "#C0C0C0" },
{ "Epsilon", "#C0C0C0" },
{ "Alpha", "#C0C0C0" },
{ "Tay", "#C0C0C0" },
{ "Omega", "#C0C0C0" },
{ "Офицер Специальный Операций", "#C0C0C0" },
{ "Sierra", "#C0C0C0" },
{ "Theta", "#C0C0C0" },
{ "Войска РХБЗЗ Sierra", "#C0C0C0" },
{ "Рядовой", "#C0C0C0" },
{ "Капрал", "#C0C0C0" },
{ "Сержант", "#C0C0C0" },
{ "Младший унтер офицер", "#C0C0C0" },
{ "Унтер офицер", "#C0C0C0" },
{ "Штаб офицер", "#C0C0C0" },
{ "Лейтенант", "#C0C0C0" },
{ "Старший лейтенант", "#C0C0C0" },
{ "Майор", "#C0C0C0" },
{ "Подполковник", "#C0C0C0" },
{ "Полковник", "#C0C0C0" },
{ "Генерал Майор", "#C0C0C0" },
{ "Генерал Лейтенант", "#C0C0C0" },
{ "Генерал Полковник", "#C0C0C0" },
{ "Горничная", "#FDDDE6"}
{ "omicron", "#C0C0C0" },
{ "сотрудник Мобильной Группы", "#C0C0C0" },
{ "сотрудник Исследовательской Группы", "#C0C0C0" },
{ "агент Красного Ордена", "#BDB76B" },
{ "представитель ОПЗ", "#C0C0C0" },
{ "офицер ОПЗ", "#C0C0C0" },
{ "epsilon", "#C0C0C0" },
{ "alpha", "#C0C0C0" },
{ "tay", "#C0C0C0" },
{ "omega", "#C0C0C0" },
{ "офицер Специальный Операций", "#C0C0C0" },
{ "sierra", "#C0C0C0" },
{ "theta", "#C0C0C0" },
{ "войска РХБЗЗ Sierra", "#C0C0C0" },
{ "рядовой", "#C0C0C0" },
{ "капрал", "#C0C0C0" },
{ "сержант", "#C0C0C0" },
{ "младший унтер офицер", "#C0C0C0" },
{ "унтер офицер", "#C0C0C0" },
{ "штаб офицер", "#C0C0C0" },
{ "лейтенант", "#C0C0C0" },
{ "старший лейтенант", "#C0C0C0" },
{ "майор", "#C0C0C0" },
{ "подполковник", "#C0C0C0" },
{ "полковник", "#C0C0C0" },
{ "генерал Майор", "#C0C0C0" },
{ "генерал Лейтенант", "#C0C0C0" },
{ "генерал Полковник", "#C0C0C0" },
Comment on lines +155 to +182
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Необходимо исправить форматирование и орфографию

Обнаружены следующие проблемы:

  1. Непоследовательное использование заглавных букв в воинских званиях
  2. Орфографическая ошибка в "офицер Специальный Операций"

Предлагаемые исправления:

-        { "генерал Майор", "#C0C0C0" },
-        { "генерал Лейтенант", "#C0C0C0" },
-        { "генерал Полковник", "#C0C0C0" },
+        { "генерал-майор", "#C0C0C0" },
+        { "генерал-лейтенант", "#C0C0C0" },
+        { "генерал-полковник", "#C0C0C0" },

-        { "офицер Специальный Операций", "#C0C0C0" },
+        { "офицер специальных операций", "#C0C0C0" },
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{ "omicron", "#C0C0C0" },
{ "сотрудник Мобильной Группы", "#C0C0C0" },
{ "сотрудник Исследовательской Группы", "#C0C0C0" },
{ "агент Красного Ордена", "#BDB76B" },
{ "представитель ОПЗ", "#C0C0C0" },
{ "офицер ОПЗ", "#C0C0C0" },
{ "epsilon", "#C0C0C0" },
{ "alpha", "#C0C0C0" },
{ "tay", "#C0C0C0" },
{ "omega", "#C0C0C0" },
{ "офицер Специальный Операций", "#C0C0C0" },
{ "sierra", "#C0C0C0" },
{ "theta", "#C0C0C0" },
{ "войска РХБЗЗ Sierra", "#C0C0C0" },
{ "рядовой", "#C0C0C0" },
{ "капрал", "#C0C0C0" },
{ "сержант", "#C0C0C0" },
{ "младший унтер офицер", "#C0C0C0" },
{ "унтер офицер", "#C0C0C0" },
{ "штаб офицер", "#C0C0C0" },
{ "лейтенант", "#C0C0C0" },
{ "старший лейтенант", "#C0C0C0" },
{ "майор", "#C0C0C0" },
{ "подполковник", "#C0C0C0" },
{ "полковник", "#C0C0C0" },
{ "генерал Майор", "#C0C0C0" },
{ "генерал Лейтенант", "#C0C0C0" },
{ "генерал Полковник", "#C0C0C0" },
{ "omicron", "#C0C0C0" },
{ "сотрудник Мобильной Группы", "#C0C0C0" },
{ "сотрудник Исследовательской Группы", "#C0C0C0" },
{ "агент Красного Ордена", "#BDB76B" },
{ "представитель ОПЗ", "#C0C0C0" },
{ "офицер ОПЗ", "#C0C0C0" },
{ "epsilon", "#C0C0C0" },
{ "alpha", "#C0C0C0" },
{ "tay", "#C0C0C0" },
{ "omega", "#C0C0C0" },
{ "офицер специальных операций", "#C0C0C0" },
{ "sierra", "#C0C0C0" },
{ "theta", "#C0C0C0" },
{ "войска РХБЗЗ Sierra", "#C0C0C0" },
{ "рядовой", "#C0C0C0" },
{ "капрал", "#C0C0C0" },
{ "сержант", "#C0C0C0" },
{ "младший унтер офицер", "#C0C0C0" },
{ "унтер офицер", "#C0C0C0" },
{ "штаб офицер", "#C0C0C0" },
{ "лейтенант", "#C0C0C0" },
{ "старший лейтенант", "#C0C0C0" },
{ "майор", "#C0C0C0" },
{ "подполковник", "#C0C0C0" },
{ "полковник", "#C0C0C0" },
{ "генерал-майор", "#C0C0C0" },
{ "генерал-лейтенант", "#C0C0C0" },
{ "генерал-полковник", "#C0C0C0" },

{ "горничная", "#FDDDE6"},
};


Expand Down
3 changes: 3 additions & 0 deletions Resources/Locale/ru-RU/_Cats/Jobs/jobs.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
JobSecurityEnginer = полевой инженер
job-name-security-enginer = полевой инженер
job-description-security-enginer = Не дайте бригу пропасть во тьме. Ремонтируйте постройки, а также устройте перестройки. Приносите разруху и разрушения во время штурма!
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
1 change: 1 addition & 0 deletions Resources/Prototypes/Roles/Jobs/departments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@
- Detective
- Warden
- Brigmedic #backmen
- SecurityEngineer # Cats
accountNumber: 1320 #backmen: currency

- type: department
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/_Backmen/Maps/backmen_aspid.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
Clown: [ 1, 1 ]
Mime: [ 1, 1 ]
Musician: [ 1, 1 ]
SecurityEngineer: [ 0, 1]
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Необходимо исправить размещение и категоризацию роли

Роль SecurityEngineer следует:

  1. Переместить в секцию #security вместе с другими ролями безопасности
  2. Добавить комментарий категории # backmen-SecurityEngineer для соответствия стилю других ролей подразделения
            #security
            HeadOfSecurity: [ 1, 1 ]
            Warden: [ 1, 1 ]
            Detective: [ 1, 1 ]
            SecurityOfficer: [ 3, 4 ]
            SecurityCadet: [ 3, 4 ]
+            SecurityEngineer: [ 0, 1 ] # backmen-SecurityEngineer
-            SecurityEngineer: [ 0, 1]
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
SecurityEngineer: [ 0, 1]
#security
HeadOfSecurity: [ 1, 1 ]
Warden: [ 1, 1 ]
Detective: [ 1, 1 ]
SecurityOfficer: [ 3, 4 ]
SecurityCadet: [ 3, 4 ]
SecurityEngineer: [ 0, 1 ] # backmen-SecurityEngineer

#backmen
Brigmedic: [ 1, 1 ] # backmen-Brigmedic
# BKBPLATech: [0, 3] # backmen-BPLA-Silicons
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/_Backmen/Maps/backmen_delta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
Warden: [ 1, 1 ]
Librarian: [ 1, 1 ]
Quartermaster: [ 1, 1 ]
SecurityEngineer: [ 0, 1]
SalvageSpecialist: [ 3, 4 ]
Musician: [ 2, 2 ]
AtmosphericTechnician: [ 2, 3 ]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,13 @@
description: Рюкзак для переноски голов врагов корпорации.
components:
- type: Sprite
sprite: _SpaceCats/BridgeOfficer/BOBackpack.rsi
sprite: _SpaceCats/BridgeOfficer/BOBackpack.rsi

- type: entity
parent: ClothingBackpack
id: ClothingBackpackSecurityEngineer
name: рюкзак полевого инженера
description: В два раза больше наручников!
components:
- type: Sprite
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
sprite: _SpaceCats/Clothing/Back/Backpacks/securityEngineer.rsi
18 changes: 18 additions & 0 deletions Resources/Prototypes/_SpaceCats/Entities/Clothing/Belt/belts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,3 +111,21 @@
sprite: _SpaceCats/BridgeOfficer/BOWebbing.rsi
- type: Clothing
sprite: _SpaceCats/BridgeOfficer/BOWebbing.rsi

- type: entity
id: ClothingMilitaryWebbingSecEng
parent: ClothingBeltMilitaryWebbing
name: инженерный рпс полевого инженера
description: Лямка с большим количеством ремней для инженера по безопасности.
suffix: Security
components:
- type: StorageFill
contents:
- id: JawsOfLife
- id: Wrench
- id: Screwdriver
- id: WelderIndustrial
- id: Multitool
- id: NetworkConfigurator
- type: ExplosionResistance
damageCoefficient: 0.5
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,21 @@
- type: Sprite
sprite: _SpaceCats/BridgeOfficer/BOHeadset.rsi
- type: Clothing
sprite: _SpaceCats/BridgeOfficer/BOHeadset.rsi
sprite: _SpaceCats/BridgeOfficer/BOHeadset.rsi

- type: entity
parent: ClothingHeadset
id: ClothingHeadsetSecurityEngineer
name: гарнитура полевого инженера
description: Это используется вашими элитными силами безопасности.
components:
- type: ContainerFill
containers:
key_slots:
- EncryptionKeySecurity
- EncryptionKeyEngineering
- EncryptionKeyCommon
- type: Sprite
sprite: _SpaceCats/Clothing/Ears/security.rsi
- type: Clothing
sprite: _SpaceCats/Clothing/Ears/security.rsi
16 changes: 16 additions & 0 deletions Resources/Prototypes/_SpaceCats/Entities/Clothing/Eyes/goggles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,3 +97,19 @@
suffix: "Chameleon, NukeOps"
components:
- type: ShowSyndicateIcons

- type: entity
parent: [ClothingEyesBase, ShowSecurityIcons]
id: ClothingEyesHudSecEng
name: охранные очки полевого инженера
description: Модель HUD представляет собой комбинацию оптического мезонного сканера и датчика безопасности. Защищает глаза.
components:
- type: Sprite
sprite: _SpaceCats/Clothing/Eyes/HUD/SecEngHUD.rsi
- type: Clothing
sprite: _SpaceCats/Clothing/Eyes/HUD/SecEngHUD.rsi
- type: EyeProtection
- type: FlashImmunity
- type: Tag
tags:
- HudSecurity
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
- type: entity
parent: ClothingShoesBootsJack
id: ClothingShoesBootsJackSecEnginer
components:
- type: Sprite
sprite: _SpaceCats/Clothing/Shoes/Boots/jackboots_sec_enginer.rsi
- type: Clothing
sprite: _SpaceCats/Clothing/Shoes/Boots/jackboots_sec_enginer.rsi
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,15 @@
sprite: _SpaceCats/BridgeOfficer/BOJumpsuit.rsi
- type: Tag
tags:
- WhitelistChameleon
- WhitelistChameleon

- type: entity
parent: ClothingUniformBase
id: ClothingUniformJumpsuitSecEngineer
name: комбинезон полевого офицера
description: Комбинезон изготовлен из прочного материала, обеспечивающего надежную защиту.
components:
- type: Sprite
sprite: _SpaceCats/Clothing/Uniforms/Sec/Engineer/securityEngineerJumpSuit.rsi
- type: Clothing
sprite: _SpaceCats/Clothing/Uniforms/Sec/Engineer/securityEngineerJumpSuit.rsi
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,16 @@
- type: Sprite
layers:
- state: green
- state: maid
- state: maid

- type: entity
id: SpawnPointSecurityEngineer
parent: SpawnPointJobBase
name: SecurityEngineer
components:
- type: SpawnPoint
job_id: SecurityEngineer
- type: Sprite
layers:
- state: green
- state: security_officer
22 changes: 21 additions & 1 deletion Resources/Prototypes/_SpaceCats/Entities/Objects/Devices/pda.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,24 @@
components:
- type: Pda
id: MaidIDCard
state: pda-maid
state: pda-maid

- type: entity
parent: BasePDA
id: SecurityEngineerPDA
name: кпк полевого инженера
description: Красный, чтобы скрыть пятна крови пассажира.
components:
- type: Pda
id: SecurityEngineerIDCard
state: pda-security-enginer
- type: PdaBorderColor
borderColor: "#9b2b2a"
- type: Icon
state: pda-security
- type: CartridgeLoader
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
- NewsReaderCartridge
- WantedListCartridge
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,15 @@
- state: idmaid
- type: PresetIdCard
job: Maid

- type: entity
parent: IDCardStandard
id: SecurityEngineerIDCard
name: карта полевого инженера
components:
- type: Sprite
layers:
- state: default
- state: idsecurityenginer
- type: PresetIdCard
job: SecurityEngineer
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
62 changes: 62 additions & 0 deletions Resources/Prototypes/_SpaceCats/Entities/Objects/Tools/tools.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
- type: entity
id: SecRCD
parent: [ BaseItem, BaseEngineeringContraband ]
name: охранный РСУ
description: Устройство rapid construction можно использовать для быстрой установки и демонтажа различных конструкций и приспособлений станции. Для работы требуется спрессованный материал.
components:
- type: RCD
availablePrototypes:
- WallSolid
- FloorSteel
- Plating
- Catwalk
- Grille
- Window
- WindowDirectional
- WindowReinforcedDirectional
- ReinforcedWindow
- Airlock
- AirlockGlass
- Firelock
- TubeLight
- BulbLight
- LVCable
- MVCable
- HVCable
- CableTerminal
- Deconstruct
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
- type: LimitedCharges
maxCharges: 40
charges: 40
- type: UseDelay
- type: Sprite
sprite: _SpaceCats/Objects/Tools/rcd.rsi
state: icon
- type: Item
size: Normal
- type: Clothing
sprite: _SpaceCats/Objects/Tools/rcd.rsi
quickEquip: false
slots:
- Belt
- type: PhysicalComposition
materialComposition:
Steel: 600
Plastic: 100
- type: StaticPrice
price: 110
Comment on lines +28 to +47
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Требуется корректировка баланса зарядов и стоимости

  1. 40 зарядов кажется избыточным для охранного РСУ
  2. Цена в 110 слишком низкая для устройства с такими возможностями
  - type: LimitedCharges
-   maxCharges: 40
-   charges: 40
+   maxCharges: 25
+   charges: 25
  - type: StaticPrice
-   price: 110
+   price: 250
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- type: LimitedCharges
maxCharges: 40
charges: 40
- type: UseDelay
- type: Sprite
sprite: _SpaceCats/Objects/Tools/rcd.rsi
state: icon
- type: Item
size: Normal
- type: Clothing
sprite: _SpaceCats/Objects/Tools/rcd.rsi
quickEquip: false
slots:
- Belt
- type: PhysicalComposition
materialComposition:
Steel: 600
Plastic: 100
- type: StaticPrice
price: 110
- type: LimitedCharges
maxCharges: 25
charges: 25
- type: UseDelay
- type: Sprite
sprite: _SpaceCats/Objects/Tools/rcd.rsi
state: icon
- type: Item
size: Normal
- type: Clothing
sprite: _SpaceCats/Objects/Tools/rcd.rsi
quickEquip: false
slots:
- Belt
- type: PhysicalComposition
materialComposition:
Steel: 600
Plastic: 100
- type: StaticPrice
price: 250

- type: UserInterface
interfaces:
enum.RcdUiKey.Key:
type: RCDMenuBoundUserInterface
- type: ActivatableUI
inHandsOnly: true
key: enum.RcdUiKey.Key

- type: entity
id: SecRCDEmpty
parent: SecRCD
suffix: Empty
components:
- type: LimitedCharges
charges: 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
- type: entity
name: C4Low
description: Взрывчатка предназначена для быстрого разрушения воздушных шлюзов или стен, но ее взрыв довольно слабый с точки зрения радиуса действия. Вы можете увидеть этикетку (прикрепите ее непосредственно к объекту).
parent: BasePlasticExplosive
id: LPPC4Low
CrimeMoot marked this conversation as resolved.
Show resolved Hide resolved
components:
- type: Sprite
sprite: _SpaceCats/Objects/Weapons/Bombs/C4Low.rsi
state: icon
- type: OnUseTimerTrigger
delay: 5
delayOptions: [5, 10, 15, 20]
initialBeepDelay: 0
beepSound:
path: /Audio/Effects/Cargo/buzz_two.ogg
params:
volume: -6
startOnStick: false
canToggleStartOnStick: true
- type: TriggerOnSignal
- type: DeviceLinkSink
ports:
- Trigger
- type: Explosive
explosionType: DemolitionCharge
totalIntensity: 10
intensitySlope: 10
maxIntensity: 10
canCreateVacuum: false
- type: ExplodeOnTrigger
Loading
Loading