Шлем из ведра (#7)

* Bucket Helmet

* Code cleanup

* Squashed commit of the following:

commit 4505739fd9430bcc578da3dec932d9aa7ca933ca
Author: BIGZi0348 <118811750+BIGZi0348@users.noreply.github.com>
Date:   Sat Sep 21 17:10:02 2024 +0300

    Самодельные отражайки (#6)

    * Ghetto Mirror Shield

    * Protorypes for ghetto mirrors

    * locale

    * idk, works fine on my machine

    * forsenPls

commit 1f066876508dec8d3f21ad753dab9fcc13dc8d1a
Author: BIGZi0348 <118811750+BIGZi0348@users.noreply.github.com>
Date:   Sat Sep 21 14:57:30 2024 +0300

    Агрессивный вор (#5)

    * AggressiveThief

    * Попытка насрать обратно

commit e1d745655b0e7253ea4e4814b82dd56e90153514
Author: BIGZi0348 <118811750+BIGZi0348@users.noreply.github.com>
Date:   Sat Sep 21 14:46:38 2024 +0300

    Suhariki (#4)

    * init

    * Porting is complete

    Still WIP

    * small stuff

    * SmallStuff

    * awawawa

    * Нас рано

    * Engi

    * More luck

    * removed some shit

commit 08061b4f1fbbfd521e3a40ef53d9bc86fa140087
Author: BIGZi0348 <118811750+BIGZi0348@users.noreply.github.com>
Date:   Sat Sep 21 14:30:31 2024 +0300

    Engi rise up (#3)

commit 00e2f5c45ca7abfeff1f85d4893352d8875f8560
Author: BIGZi0348 <118811750+BIGZi0348@users.noreply.github.com>
Date:   Thu Sep 19 19:42:30 2024 +0300

    Bigzi upstream1 (#2)

    * init

    * Porting is complete

    Still WIP

    * Мелочи - Король крыс, диски, правки перевода и респрайт одеяния культа (#686)

    * Большой Крыс Отдыхает

    * Фикс размера фейк диска

    * Доработка диска очков РНД

    * Скоро перейду на райдер

    * Переводы

    * Диски одного размера

    * Респрайт робы и капюшона культа

    * Automatic changelog update

    * fix (#687)

    * Automatic changelog update

    * govno HD (#688)

    * Automatic changelog update

    * Hotfix loadouts (#689)

    * govno HD

    * hotfix loadouts

    * fuck

    * Automatic changelog update

    * Update PULL_REQUEST_TEMPLATE.md

    * Even smaller stuff (#690)

    * 45 to 44

    * Фикс ошибки перевода

    * Voice mask translate

    * Automatic changelog update

    * small stuff

    * SmallStuff

    * awawawa

    * Локализация шепелявости (#691)

    * БУМ!!!!!!!! (#692)

    * Automatic changelog update

    * Большой ребаланс милишки (#681)

    * MeleeThrowOnHit rework

    * buff baseball bat

    * better mjolnir

    * telebaton system unhardcode + refactor + transform TelescopicBatonComponent to KnockDownOnHitComponent

    * fix telebaton prototype

    * darova

    * fix KnockDownOnHitSystem

    * chaplain weapons rebalance

    * fix nullrod hit sound

    * BloodstreamSystem cleanup

    * bleeding rebalance

    * damage rebalance

    * small baseball bat fix

    * Automatic changelog update

    * Chaplain armor fix (#693)

    * Фикс описания (#696)

    * No passengers on this military complex (#695)

    * Automatic changelog update

    * Переводы (#698)

    * Пепеводы

    * Очепятки

    * Фикс прожектора и открутка цифр (#697)

    * Melochi

    * Фикс хамелеона

    * Переводы денег мне на карту

    * Automatic changelog update

    * Нас рано

    * Фикс пополнения зарядов РЦД используя стаки ресурсов (#699)

    * Фиксики

    * Спасли Валеру от банкротства

    * Very hot man (#700)

    * Automatic changelog update

    * reverted illegal code added by oniks

    ---------

    Co-authored-by: RavmorganButOnCocaine <valtos@nextmail.ru>
    Co-authored-by: Spatison <137375981+Spatison@users.noreply.github.com>
    Co-authored-by: Valtos <valtos@spaces.ru>
    Co-authored-by: Jabak <163307958+Jabaks@users.noreply.github.com>
    Co-authored-by: ThereDrD <88589686+ThereDrD0@users.noreply.github.com>

* ВЕДРО!!!

* Funny

* Oppsie

(cherry picked from commit 92ce631b0c0187678b6d1eea34d3c0830b9b0fac)
This commit is contained in:
BIGZi0348
2024-09-21 17:30:11 +03:00
committed by keslik
parent 7f74203c33
commit bd1e379903
11 changed files with 138 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ using Content.Shared._White.MagGloves;
using Robust.Server.GameObjects;
using Robust.Shared.Player;
using Robust.Shared.Utility;
using Content.Shared._White.BucketHelmet;
namespace Content.Server.Strip
{
@@ -135,6 +136,16 @@ namespace Content.Server.Strip
}
// WD EDIT END
// WD ENGI EXCLUSIVE START EDIT
if (args.Slot == "ears" && TryComp(strippable, out PreventStrippingFromEarsComponent? _))
{
var message = Loc.GetString("buckethelmet-cant-strip");
_popupSystem.PopupEntity(message, user, user);
return;
}
// WD ENGI EXCLUSIVE EDIT END
if (args.IsHand)
{
StripHand((user, userHands), (strippable.Owner, null), args.Slot, strippable);

View File

@@ -0,0 +1,30 @@
using Content.Shared.Inventory.Events;
using Content.Shared._White.BucketHelmet;
// WD Engi Exclusive
namespace Content.Server._White.BucketHelmet;
/// <summary>
/// This handles placemet of PreventStrippingFromEarsComponent when bucket helmet is in use.
/// </summary>
public sealed class BucketHelmetSystem : EntitySystem
{
/// <inheritdoc/>
public override void Initialize()
{
SubscribeLocalEvent<BucketHelmetComponent, GotEquippedEvent>(OnGotEquipped);
SubscribeLocalEvent<BucketHelmetComponent, GotUnequippedEvent>(OnGotUnequipped);
}
public void OnGotUnequipped(EntityUid uid, BucketHelmetComponent component, GotUnequippedEvent args)
{
RemComp<PreventStrippingFromEarsComponent>(args.Equipee);
}
public void OnGotEquipped(EntityUid uid, BucketHelmetComponent component, GotEquippedEvent args)
{
if (args.Slot == "head")
EnsureComp<PreventStrippingFromEarsComponent>(args.Equipee);
}
}

View File

@@ -0,0 +1,11 @@
// WD Engi Exclusive
namespace Content.Shared._White.BucketHelmet;
/// <summary>
/// This is used for bucket helmet.
/// </summary>
[RegisterComponent]
public sealed partial class BucketHelmetComponent : Component
{
}

View File

@@ -0,0 +1,11 @@
// WD Engi Exclusive
namespace Content.Shared._White.BucketHelmet;
/// <summary>
/// This is used to block stripping headsets when bucket helmet is on.
/// </summary>
[RegisterComponent]
public sealed partial class PreventStrippingFromEarsComponent : Component
{
}

View File

@@ -0,0 +1,4 @@
ent-ClothingHeadBucketHelmet = шлем из ведра
.desc = Обычное ведро с двумя прорезями для глаз. При ношении на голове что-то липкое внутри цепляется за наушник.
buckethelmet-cant-strip = Шлем из ведра не позволяет это сделать

View File

@@ -66,3 +66,7 @@
- type: PhysicalComposition
materialComposition:
Plastic: 50
- type: Construction # WD Engi Exclusive
deconstructionTarget: null
graph: ClothingHeadBucketHelmet
node: start

View File

@@ -0,0 +1,27 @@
# WD Engi Exclusive
- type: entity
parent: ClothingHeadBase
id: ClothingHeadBucketHelmet
name: bucket helmet
description: A regular bucket with two eye holes. When worn on the head, something sticky inside latches on the earpiece.
components:
- type: Sprite
sprite: White/Clothing/Head/bucketHelmet.rsi
- type: Clothing
sprite: White/Clothing/Head/bucketHelmet.rsi
- type: IdentityBlocker
- type: Armor
modifiers:
coefficients:
Blunt: 0.95
- type: Tag
tags:
- HidesHair
- WhitelistChameleon
- type: Construction
deconstructionTarget: start
graph: ClothingHeadBucketHelmet
node: helmet
- type: Item
size: Normal
- type: BucketHelmet

View File

@@ -0,0 +1,22 @@
# WD Engi Exclusive
- type: constructionGraph
id: ClothingHeadBucketHelmet
start: start
graph:
- node: start
entity: Bucket
edges:
- to: helmet
conditions:
- !type:SolutionEmpty
solution: bucket
steps:
- tool: Cutting
doAfter: 5
- node: helmet
entity: ClothingHeadBucketHelmet
edges:
- to: start
steps:
- tool: Welding
doAfter: 5

Binary file not shown.

After

Width:  |  Height:  |  Size: 828 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1,18 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "stepppasha",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "icon"
},
{
"name": "equipped-HELMET",
"directions": 4
}
]
}