diff --git a/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs b/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs index 9cf00ac5e13..76015b8f9df 100644 --- a/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs +++ b/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs @@ -180,6 +180,15 @@ hands.ActiveHandEntity is { } held && return true; } + /// ADT gloves gun start + if (_inventory.TryGetSlotEntity(entity, "gloves", out var gloves) && + TryComp(gloves, out var glovesMelee)) + { + gunEntity = gloves.Value; + gunComp = glovesMelee; + return true; + } + /// ADT gloves gun end // Last resort is check if the entity itself is a gun. if (TryComp(entity, out gun)) { @@ -236,6 +245,13 @@ private void AttemptShoot(EntityUid user, EntityUid gunUid, GunComponent gun) } ///ADT-Personal-Gun block end + /// ADT gloves gun start + if (EntityManager.TryGetComponent(user, out HandsComponent? hands) && hands != null && hands.ActiveHandEntity != null && _inventory.TryGetSlotEntity(user, "gloves", out var gloves) && gloves.Value == gunUid) + { + return; + } + /// ADT gloves gun end + var toCoordinates = gun.ShootCoordinates; if (toCoordinates == null) diff --git a/Resources/Changelog/ChangelogADT.yml b/Resources/Changelog/ChangelogADT.yml index bcd18e70aee..6c79b485250 100644 --- a/Resources/Changelog/ChangelogADT.yml +++ b/Resources/Changelog/ChangelogADT.yml @@ -1647,3 +1647,9 @@ Entries: - {message: "Фикс еще чего-то, но я забыл чего именно.", type: Fix} id: 55728 #костыль отображения в Обновлениях time: '2024-04-13T08:20:00.0000000+00:00' + +- author: Котя + changes: + - { message: "Добавлены протокинетические рукавицы в лут утилей.", type: Add} + id: 55729 #костыль отображения в Обновлениях + time: '2024-04-12T08:20:00.0000000+00:00' diff --git a/Resources/Locale/ru-RU/ADT/Clothing/Hands/gloves.ftl b/Resources/Locale/ru-RU/ADT/Clothing/Hands/gloves.ftl index cf3f189bc0e..0650a5ff27e 100644 --- a/Resources/Locale/ru-RU/ADT/Clothing/Hands/gloves.ftl +++ b/Resources/Locale/ru-RU/ADT/Clothing/Hands/gloves.ftl @@ -1,3 +1,5 @@ +fibers-crusher = дюратканевые с наномашинами + ent-ADTClothingHandsNovaGloves = перчатки Новы .desc = Это перчатки Новы. Как она их получила? Секрет. @@ -53,3 +55,7 @@ ent-ADTClothingHandsGlovesSport = перчати серии STEP "Cold" .desc = Беспалые перчатки серии "Cold", в которых удобно заниматься спортом любой расе. ent-ADTClothingHandsGlovesSportStep = перчатки серии STEP "Ultra" .desc = Перчатки "Ultra" серии STEP без пальцев и с мягкой подкладкой, закрывающей ладони, что делает их идеальными для передвижения на четвероногих или для подъема грузов. + +ent-ADTClothingHandsCrusherGauntlets = протокинетические рукавицы + .desc = Модернезированная версия кинетического крушителя, умещённая в форму весьма массивных перчаток. + diff --git a/Resources/Prototypes/ADT/Entities/Clothing/Hands/gloves.yml b/Resources/Prototypes/ADT/Entities/Clothing/Hands/gloves.yml index 1cb1943be63..eee79aa18a6 100644 --- a/Resources/Prototypes/ADT/Entities/Clothing/Hands/gloves.yml +++ b/Resources/Prototypes/ADT/Entities/Clothing/Hands/gloves.yml @@ -290,3 +290,57 @@ sprite: ADT/Clothing/Hands/Gloves/gloves_sport_step.rsi - type: Clothing sprite: ADT/Clothing/Hands/Gloves/gloves_sport_step.rsi #спрайты от prazat911 + +- type: entity + parent: ClothingHandsBase + id: ADTClothingHandsCrusherGauntlets + name: crusher gauntlets + description: lil miners' friend. + components: + - type: Sprite + sprite: ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi + - type: Clothing + sprite: ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi + - type: AmmoCounter + - type: UseDelayOnShoot + - type: UseDelay + delay: 1.5 + - type: LeechOnMarker + leech: + groups: + Brute: -5 + Burn: -5 + Airloss: -5 + - type: Gun + soundGunshot: /Audio/Weapons/plasma_cutter.ogg + fireRate: 1.5 + useKey: false + - type: RechargeBasicEntityAmmo + rechargeCooldown: 0.75 + rechargeSound: + path: /Audio/Weapons/Guns/MagIn/kinetic_reload.ogg + - type: BasicEntityAmmoProvider + proto: BulletCharge + capacity: 1 + count: 1 + - type: MeleeWeapon + attackRate: 2.5 + wideAnimationRotation: -135 + animation: WeaponArcFist + damage: + types: + Blunt: 8 + Structural: 25 + - type: UnpoweredFlashlight + - type: PointLight + color: "#ffeead" + enabled: false + radius: 6 + - type: Tool + qualities: + - Prying + speed: 0.25 + - type: Prying + pryPowered: true + - type: Fiber + fiberMaterial: fibers-crusher diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml index 3cbeed9dd29..e541705d982 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/salvage.yml @@ -126,6 +126,7 @@ - WeaponCrusher - WeaponCrusherDagger - WeaponCrusherGlaive + - ADTClothingHandsCrusherGauntlets - MiningDrill - AdvancedCapacitorStockPart - NanoManipulatorStockPart diff --git a/Resources/Prototypes/Procedural/salvage_loot.yml b/Resources/Prototypes/Procedural/salvage_loot.yml index 0372eedb7ea..1323b5f2c33 100644 --- a/Resources/Prototypes/Procedural/salvage_loot.yml +++ b/Resources/Prototypes/Procedural/salvage_loot.yml @@ -89,6 +89,9 @@ - proto: ADTWeaponWarhammer cost: 5 prob: 0.3 + - proto: ADTClothingHandsCrusherGauntlets + cost: 3 + prob: 0.4 - proto: CrateSyndicateSuperSurplusBundle cost: 5 prob: 0.01 diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/equipped-HAND.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/equipped-HAND.png new file mode 100644 index 00000000000..ebb9730204c Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/equipped-HAND.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-lit.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-lit.png new file mode 100644 index 00000000000..77dca82b708 Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-lit.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-uncharged.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-uncharged.png new file mode 100644 index 00000000000..d9c54a58b76 Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon-uncharged.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon.png new file mode 100644 index 00000000000..ab133dac659 Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/icon.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-left.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-left.png new file mode 100644 index 00000000000..62591230808 Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-left.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-right.png b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-right.png new file mode 100644 index 00000000000..1f5e597ea38 Binary files /dev/null and b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/inhand-right.png differ diff --git a/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/meta.json b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/meta.json new file mode 100644 index 00000000000..3993d29c6d2 --- /dev/null +++ b/Resources/Textures/ADT/Clothing/Hands/Gloves/crusher_gauntlets.rsi/meta.json @@ -0,0 +1,38 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/BlueMoon-Labs/MOLOT-BlueMoon-Station/blob/2f8d21c269208ddb977f944bde3da96a72bdb155/icons/obj/mining.dmi", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "icon-lit" + }, + { + "name": "icon-uncharged", + "delays": [ + [ + 0.3, + 0.3 + ] + ] + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + }, + { + "name": "equipped-HAND", + "directions": 4 + } + ] +} \ No newline at end of file