diff --git a/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs b/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs index 2cd3777c52..362a379e97 100644 --- a/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs +++ b/Content.Server/Radio/EntitySystems/RadioDeviceSystem.cs @@ -193,7 +193,7 @@ public sealed class RadioDeviceSystem : EntitySystem private void OnAttemptListen(EntityUid uid, RadioMicrophoneComponent component, ListenAttemptEvent args) { if (component.PowerRequired && !this.IsPowered(uid, EntityManager) - || component.UnobstructedRequired && !_interaction.InRangeUnobstructed(args.Source, uid, 0)) + || component.UnobstructedRequired && !_interaction.InRangeUnobstructed(args.Source, uid, component.ListenRange)) { args.Cancel(); } diff --git a/Resources/Audio/Weapons/Guns/Gunshots/ak.ogg b/Resources/Audio/Weapons/Guns/Gunshots/ak.ogg new file mode 100644 index 0000000000..1b8b9e7de7 Binary files /dev/null and b/Resources/Audio/Weapons/Guns/Gunshots/ak.ogg differ diff --git a/Resources/Locale/en-US/store/uplink-catalog.ftl b/Resources/Locale/en-US/store/uplink-catalog.ftl index 33bcdb22f6..9368fb3923 100644 --- a/Resources/Locale/en-US/store/uplink-catalog.ftl +++ b/Resources/Locale/en-US/store/uplink-catalog.ftl @@ -2,6 +2,9 @@ uplink-pistol-viper-name = Viper uplink-pistol-viper-desc = A small, easily concealable, but somewhat underpowered gun. Retrofitted with a fully automatic receiver. Uses pistol magazines (.35 auto). +uplink-rifle-ak-name = AK-74 +uplink-rifle-ak-description = A powerfull automatic rifle. Uses rifle magazines (.30 rifle) + uplink-revolver-python-name = Python uplink-revolver-python-desc = A brutally simple, effective, and loud Syndicate revolver. Comes loaded with armor-piercing rounds. Uses .45 magnum. @@ -94,6 +97,9 @@ uplink-mosin-ammo-desc = A box of 50 cartridges for the surplus rifle. uplink-sniper-ammo-name = Ammunition box (.60 antimateriel) uplink-sniper-ammo-desc = A box of 10 cartridges for the Hristov sniper rifle. +uplink-ak-ammo-name = magazine (.30 rifle) +uplink-ak-ammo-desc = a magazine of .30 rifle ammo suited best for AK-74 + # Utility uplink-holopara-kit-name = Holoparasite Kit uplink-holopara-kit-desc = The pride and joy of Cybersun. Contains an injector that hosts a sentient metaphysical guardian made of hard light which resides in the user's body when not active. diff --git a/Resources/Locale/ru-RU/store/uplink-catalog.ftl b/Resources/Locale/ru-RU/store/uplink-catalog.ftl index 9159e9b6ce..d3eb3938f2 100644 --- a/Resources/Locale/ru-RU/store/uplink-catalog.ftl +++ b/Resources/Locale/ru-RU/store/uplink-catalog.ftl @@ -1,22 +1,33 @@ -# Weapons +# Оружие uplink-pistol-viper-name = Гадюка uplink-pistol-viper-desc = Маленький, легко скрываемый, но несколько маломощный пистолет. Использует пистолетные магазины (.35 авто). + +uplink-rifle-ak-name = АК-74 +uplink-rifle-ak-description = Мощная штурмовая винтовка. Использует магазины для штурмовой винтовки (.30 винтовочные) + uplink-revolver-python-name = Питон uplink-revolver-python-desc = Громкий и смертоносный револьвер. Использует "Магнум" 40-го калибра. uplink-pistol-cobra-name = Кобра uplink-pistol-cobra-desc = Прочный, безотказный пистолет для оператора со встроенным глушителем. Используйте пистолетные магазины (безгильзовый 25 калибра). + uplink-rifle-mosin-name = Винтовка Мосина uplink-rifle-mosin-desc = Служебная винтовка с затвором, повидавшая много войн. Не современная ни по каким стандартам, заряжается вручную и с ужасной отдачей, однако дешевая. + uplink-esword-name = Энергетический меч uplink-esword-desc = Очень опасный энергетический меч. В выключенном состоянии можно хранить в карманах. Издает много шума при использовании или включении. + uplink-esword-double-name = Двойной энергетический меч uplink-esword-double-desc = Гораздо более дорогой аналог обычного энергетического меча: с гораздо более высоким шансом отражения, большим углом атаки, более высоким структурным повреждением и более быстрым замахом, и все это за счет меньшего нагрева и рубящего урона. Издает много шума при использовании или включении. + uplink-edagger-name = Энергетический кинжал uplink-edagger-desc = Маленькое энергетическое лезвие, удобно замаскированное в виде ручки. + uplink-fire-axe-flaming-name = Пожарный топор uplink-fire-axe-flaming-desc = Оружие в классическом стиле, оснащенное передовой технологией атмос, позволяющей ему поджигать цели. + uplink-gloves-north-star-name = Перчатки Полярной звезды uplink-gloves-north-star-desc = Пара перчаток, которые резко сокращают время восстановления ваших ударов, позволяя вам избивать людей до смерти шквалом ударов. + # Explosives uplink-explosive-grenade-name = Разрывная граната uplink-explosive-grenade-desc = Граната, которая производит небольшой, но разрушительный взрыв. @@ -34,22 +45,32 @@ uplink-grenadier-rig-name = гренадерский нагрудник uplink-grenadier-rig-desc = Все, что нужно для шумной вечеринки: 4 разрывные гранаты, 2 ЭМИ-гранаты и 2 мини-бомбы в сундуке. uplink-emp-grenade-name = Электромагнитная граната uplink-emp-grenade-desc = Испускает электромагнитные импульсы, которые выводят из строя или повреждают многие электронные устройства или разряжают элементы питания. -# Ammo + +# Патроны uplink-pistol-magazine-name = Пистолетный магазин (.35 авто) uplink-pistol-magazine-desc = Пистолетный магазин на 10 патронов. Совместим с Гадюкой. + uplink-pistol-magazine-caseless-name = Пистолетный магазин (безгильзовые .25) uplink-pistol-magazine-caseless-desc = Пистолетный магазин на 10 патронов. Совместим с Коброй. + uplink-speedloader-magnum-name = Спидлоадер (.40 магнум) uplink-speedloader-magnu-desc = Револьверный спидлоадер с 6 патронами. Совместим с Питоном. -uplink-mosin-ammo-name = Коробка магазинов для винтовки 30-го калибра -uplink-mosin-ammo-desc = Коробка патронов для винтовки CV-47. + +uplink-mosin-ammo-name = Коробка патронов (.30 винтовочные) +uplink-mosin-ammo-desc = Коробка с 50 патронами калибра .30 винтовочные. Совместимы с винтовкой Мосина и АК-74. + +uplink-ak-ammo-name = Магазин (.30 винтовчные) +uplink-ak-ammo-desc = Магазин с 30 патронами калибра .30 винтовочные. Совместим с АК-74. + +uplink-sniper-ammo-name = Коробка патронов (.60 антиматериальные) +uplink-sniper-ammo-desc = Коробка с 10 патронами для снайперской винтовки Христова. + # Utility uplink-holopara-kit-name = Набор Голопаразита uplink-holopara-kit-desc = Гордость и радость Cybersyn. Содержит инжектор, в котором находится разумный метафизический страж, сделанный из жесткого света, который находится в теле пользователя, когда он не активен. Страж может быстро наносить удары и невосприимчив к опасным средам и пулям, но любой наносимый им урон делится с пользователем. -uplink-sniper-ammo-name = коробка патрон (антиматериальная .60) -uplink-sniper-ammo-desc = коробка 10 патронов для снайперской винтовки Христова + uplink-holster-name = Наплечная кобура uplink-holster-desc = Глубокая наплечная кобура, способная вместить множество видов баллистического оружия. uplink-emag-name = Криптографический секвенсор (емаг) diff --git a/Resources/Prototypes/Catalog/uplink_catalog.yml b/Resources/Prototypes/Catalog/uplink_catalog.yml index bdc6e9c9ab..198cae1966 100644 --- a/Resources/Prototypes/Catalog/uplink_catalog.yml +++ b/Resources/Prototypes/Catalog/uplink_catalog.yml @@ -9,15 +9,28 @@ cost: Telecrystal: 8 categories: - - UplinkWeapons + - UplinkWeapons conditions: - - !type:StoreWhitelistCondition - blacklist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + blacklist: + tags: + - NukeOpsUplink saleLimit: 1 +# WD ADDED - type: listing + id: UplinkRifleAk + name: uplink-rifle-ak-name + description: uplink-rifle-ak-description + productEntity: WeaponRifleAk + cost: + Telecrystal: 16 + categories: + - UplinkWeapons + saleLimit: 1 +- type: listing + # END WD ADDED + id: UplinkPistolViper name: uplink-pistol-viper-name description: uplink-pistol-viper-desc @@ -74,10 +87,10 @@ categories: - UplinkWeapons conditions: - - !type:StoreWhitelistCondition - blacklist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + blacklist: + tags: + - NukeOpsUplink saleLimit: 1 - type: listing @@ -181,7 +194,7 @@ cost: Telecrystal: 6 categories: - - UplinkExplosives + - UplinkExplosives - type: listing id: UplinkSupermatterGrenade @@ -211,7 +224,7 @@ cost: Telecrystal: 4 categories: - - UplinkExplosives + - UplinkExplosives conditions: - !type:BuyerWhitelistCondition blacklist: @@ -383,8 +396,20 @@ categories: - UplinkAmmo -# for the hristov +# WD ADDED - type: listing + id: UplinkAkAmmo + name: uplink-ak-ammo-name + description: uplink-ak-ammo-desc + productEntity: MagazineLightRifle + cost: + Telecrystal: 1 + categories: + - UplinkAmmo +- type: listing + # END WD ADDED + # for the hristov + id: UplinkHristovAmmo name: uplink-sniper-ammo-name description: uplink-sniper-ammo-desc @@ -464,10 +489,10 @@ categories: - UplinkUtility conditions: - - !type:StoreWhitelistCondition - blacklist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + blacklist: + tags: + - NukeOpsUplink saleLimit: 2 - type: listing @@ -481,10 +506,10 @@ categories: - UplinkUtility conditions: - - !type:StoreWhitelistCondition - whitelist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + whitelist: + tags: + - NukeOpsUplink saleLimit: 1 - type: listing @@ -594,12 +619,12 @@ cost: Telecrystal: 8 categories: - - UplinkImplants + - UplinkImplants conditions: - - !type:StoreWhitelistCondition - blacklist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + blacklist: + tags: + - NukeOpsUplink - type: listing id: UplinkFreedomImplanter @@ -643,7 +668,7 @@ cost: Telecrystal: 2 categories: - - UplinkImplants + - UplinkImplants - type: listing id: UplinkMicroBombImplanter @@ -674,16 +699,16 @@ cost: Telecrystal: 20 categories: - - UplinkImplants + - UplinkImplants conditions: - - !type:StoreWhitelistCondition - whitelist: - tags: - - NukeOpsUplink - - !type:BuyerWhitelistCondition - blacklist: - components: - - SurplusBundle + - !type:StoreWhitelistCondition + whitelist: + tags: + - NukeOpsUplink + - !type:BuyerWhitelistCondition + blacklist: + components: + - SurplusBundle - type: listing id: UplinkDeathAcidifierImplanter @@ -707,10 +732,10 @@ categories: - UplinkImplants conditions: - - !type:StoreWhitelistCondition - blacklist: - tags: - - NukeOpsUplink + - !type:StoreWhitelistCondition + blacklist: + tags: + - NukeOpsUplink saleBlacklist: true - type: listing @@ -723,14 +748,14 @@ categories: - UplinkImplants conditions: - - !type:StoreWhitelistCondition - whitelist: - tags: - - NukeOpsUplink - - !type:BuyerWhitelistCondition - blacklist: - components: - - SurplusBundle + - !type:StoreWhitelistCondition + whitelist: + tags: + - NukeOpsUplink + - !type:BuyerWhitelistCondition + blacklist: + components: + - SurplusBundle # Bundles @@ -765,14 +790,14 @@ categories: - UplinkBundles conditions: - - !type:StoreWhitelistCondition - whitelist: - tags: - - NukeOpsUplink - - !type:BuyerWhitelistCondition - blacklist: - components: - - SurplusBundle + - !type:StoreWhitelistCondition + whitelist: + tags: + - NukeOpsUplink + - !type:BuyerWhitelistCondition + blacklist: + components: + - SurplusBundle saleLimit: 1 - type: listing @@ -796,14 +821,14 @@ categories: - UplinkBundles conditions: - - !type:StoreWhitelistCondition - whitelist: - tags: - - NukeOpsUplink - - !type:BuyerWhitelistCondition - blacklist: - components: - - SurplusBundle + - !type:StoreWhitelistCondition + whitelist: + tags: + - NukeOpsUplink + - !type:BuyerWhitelistCondition + blacklist: + components: + - SurplusBundle saleLimit: 1 - type: listing @@ -969,10 +994,10 @@ categories: - UplinkTools conditions: - - !type:BuyerWhitelistCondition - blacklist: - components: - - SurplusBundle + - !type:BuyerWhitelistCondition + blacklist: + components: + - SurplusBundle - type: listing id: UplinkCarpDehydrated @@ -1027,11 +1052,12 @@ cost: Telecrystal: 5 categories: - - UplinkJob + - UplinkJob conditions: - - !type:BuyerJobCondition - whitelist: - - Boxer + - !type:BuyerJobCondition + whitelist: + - Passenger + - Boxer - type: listing id: uplinkNecronomicon @@ -1152,9 +1178,9 @@ categories: - UplinkJob conditions: - - !type:BuyerDepartmentCondition - whitelist: - - Science + - !type:BuyerDepartmentCondition + whitelist: + - Science - type: listing id: uplinkProximityMine @@ -1178,7 +1204,7 @@ id: UplinkSyndicateSpongeBox name: uplink-syndicate-sponge-box-name description: uplink-syndicate-sponge-box-desc - icon: { sprite: Objects/Misc/monkeycube.rsi, state: box} + icon: { sprite: Objects/Misc/monkeycube.rsi, state: box } productEntity: SyndicateSpongeBox cost: Telecrystal: 7 @@ -1215,7 +1241,7 @@ cost: Telecrystal: 4 categories: - - UplinkArmor + - UplinkArmor - type: listing id: UplinkClothingNoSlipsShoes diff --git a/Resources/Prototypes/Entities/Clothing/Masks/masks.yml b/Resources/Prototypes/Entities/Clothing/Masks/masks.yml index bf3e9fcd20..fe2a4f3500 100644 --- a/Resources/Prototypes/Entities/Clothing/Masks/masks.yml +++ b/Resources/Prototypes/Entities/Clothing/Masks/masks.yml @@ -323,6 +323,7 @@ sprite: Clothing/Mask/swat.rsi - type: Clothing sprite: Clothing/Mask/swat.rsi + - type: Halt - type: entity parent: ClothingMaskGasExplorer @@ -345,6 +346,9 @@ sprite: Clothing/Mask/ert.rsi - type: Clothing sprite: Clothing/Mask/ert.rsi + - type: FlashImmunity + - type: EyeProtection + - type: Halt - type: entity parent: ClothingMaskGasERT diff --git a/Resources/Prototypes/Entities/Objects/Devices/radio.yml b/Resources/Prototypes/Entities/Objects/Devices/radio.yml index 74c2865d07..5228821403 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/radio.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/radio.yml @@ -6,6 +6,7 @@ components: - type: RadioMicrophone broadcastChannel: Handheld + listenRange: 1 - type: RadioSpeaker channels: - Handheld diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml index 5bc8125eba..82c0770c7f 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml @@ -19,7 +19,7 @@ fireRate: 5 selectedMode: FullAuto availableModes: - - FullAuto + - FullAuto soundGunshot: path: /Audio/Weapons/Guns/Gunshots/batrifle.ogg - type: ChamberMagazineAmmoProvider @@ -35,14 +35,14 @@ priority: 2 whitelist: tags: - - MagazineLightRifle + - MagazineLightRifle gun_chamber: name: Chamber startingItem: CartridgeLightRifle priority: 1 whitelist: tags: - - CartridgeLightRifle + - CartridgeLightRifle - type: ContainerContainer containers: gun_magazine: !type:ContainerSlot @@ -59,14 +59,14 @@ - type: Sprite sprite: Objects/Weapons/Guns/Rifles/ak.rsi layers: - - state: base - map: ["enum.GunVisualLayers.Base"] - - state: mag-0 - map: ["enum.GunVisualLayers.Mag"] + - state: base + map: [ "enum.GunVisualLayers.Base" ] + - state: mag-0 + map: [ "enum.GunVisualLayers.Mag" ] - type: Gun fireRate: 5 soundGunshot: - path: /Audio/Weapons/Guns/Gunshots/rifle2.ogg + path: /Audio/Weapons/Guns/Gunshots/ak.ogg - type: ChamberMagazineAmmoProvider soundRack: path: /Audio/Weapons/Guns/Cock/ltrifle_cock.ogg @@ -80,14 +80,14 @@ priority: 2 whitelist: tags: - - MagazineLightRifle + - MagazineLightRifle gun_chamber: name: Chamber startingItem: CartridgeLightRifle priority: 1 whitelist: tags: - - CartridgeLightRifle + - CartridgeLightRifle - type: ContainerContainer containers: gun_magazine: !type:ContainerSlot @@ -107,10 +107,10 @@ - type: Sprite sprite: Objects/Weapons/Guns/Rifles/carbine.rsi layers: - - state: base - map: ["enum.GunVisualLayers.Base"] - - state: mag-0 - map: ["enum.GunVisualLayers.Mag"] + - state: base + map: [ "enum.GunVisualLayers.Base" ] + - state: mag-0 + map: [ "enum.GunVisualLayers.Mag" ] - type: Clothing sprite: Objects/Weapons/Guns/Rifles/carbine.rsi - type: ItemSlots @@ -123,14 +123,14 @@ priority: 2 whitelist: tags: - - MagazineRifle + - MagazineRifle gun_chamber: name: Chamber startingItem: CartridgeRifle priority: 1 whitelist: tags: - - CartridgeRifle + - CartridgeRifle - type: ContainerContainer containers: gun_magazine: !type:ContainerSlot @@ -150,10 +150,10 @@ - type: Sprite sprite: Objects/Weapons/Guns/Rifles/lecter.rsi layers: - - state: base - map: ["enum.GunVisualLayers.Base"] - - state: mag-0 - map: ["enum.GunVisualLayers.Mag"] + - state: base + map: [ "enum.GunVisualLayers.Base" ] + - state: mag-0 + map: [ "enum.GunVisualLayers.Mag" ] - type: Clothing sprite: Objects/Weapons/Guns/Rifles/lecter.rsi - type: Gun @@ -169,14 +169,14 @@ priority: 2 whitelist: tags: - - MagazineRifle + - MagazineRifle gun_chamber: name: Chamber startingItem: CartridgeRifle priority: 1 whitelist: tags: - - CartridgeRifle + - CartridgeRifle - type: ContainerContainer containers: gun_magazine: !type:ContainerSlot diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/intercom.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/intercom.yml index 375cd359c6..c616471ec8 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/intercom.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/intercom.yml @@ -9,6 +9,8 @@ - type: Electrified enabled: false usesApcPower: true + - type: ActiveListener + range: 10 - type: RadioMicrophone powerRequired: true unobstructedRequired: true @@ -35,14 +37,14 @@ layers: - state: base - state: unshaded - map: ["enum.PowerDeviceVisualLayers.Powered"] + map: [ "enum.PowerDeviceVisualLayers.Powered" ] shader: unshaded - state: broadcasting - map: ["enum.RadioDeviceVisualLayers.Broadcasting"] + map: [ "enum.RadioDeviceVisualLayers.Broadcasting" ] shader: unshaded visible: false - state: speaker - map: ["enum.RadioDeviceVisualLayers.Speaker"] + map: [ "enum.RadioDeviceVisualLayers.Speaker" ] shader: unshaded visible: false - type: Transform @@ -57,8 +59,8 @@ key: enum.IntercomUiKey.Key - type: UserInterface interfaces: - - key: enum.IntercomUiKey.Key - type: IntercomBoundUserInterface + - key: enum.IntercomUiKey.Key + type: IntercomBoundUserInterface - type: Construction graph: Intercom node: intercom