From 2be886be1da55d7357cddf1123de2e5aea9972e9 Mon Sep 17 00:00:00 2001 From: pacable <77161122+pxc1984@users.noreply.github.com> Date: Wed, 13 Nov 2024 04:03:48 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B3=D0=B5=D0=BD=D0=BE=D0=BA=D1=80=D0=B0=D0=B4?= =?UTF-8?q?=D0=BE=D0=B2=20=D0=BF=D0=BE=20=D0=BF=D1=80=D0=BE=D1=81=D1=8C?= =?UTF-8?q?=D0=B1=D0=B5=20=D1=81=D0=BF=D0=BB=D0=B8=D0=BA=D0=B0.=20(#600)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * цели генокрадам * удалил голод у генокрадов * исправление бага с хардсьютами * исправление способности передозировки эфедрином --- .../Changeling/ChangelingSystem.Abilities.cs | 2 +- Content.Server/Changeling/ChangelingSystem.cs | 15 ++- .../Clothing/OuterClothing/hardsuits.yml | 4 +- .../Prototypes/Objectives/changeling.yml | 101 +++++++++++++++++- 4 files changed, 113 insertions(+), 9 deletions(-) diff --git a/Content.Server/Changeling/ChangelingSystem.Abilities.cs b/Content.Server/Changeling/ChangelingSystem.Abilities.cs index 2c6f7100d1..9d5a8b7538 100644 --- a/Content.Server/Changeling/ChangelingSystem.Abilities.cs +++ b/Content.Server/Changeling/ChangelingSystem.Abilities.cs @@ -550,7 +550,7 @@ public sealed partial class ChangelingSystem : EntitySystem var reagents = new List<(string, FixedPoint2)>() { - ("Synaptizine", 5f) + ("Ephedrine", 15f) }; if (TryInjectReagents(uid, reagents)) _popup.PopupEntity(Loc.GetString("changeling-inject"), uid, uid); diff --git a/Content.Server/Changeling/ChangelingSystem.cs b/Content.Server/Changeling/ChangelingSystem.cs index 61485762dd..19f04cad87 100644 --- a/Content.Server/Changeling/ChangelingSystem.cs +++ b/Content.Server/Changeling/ChangelingSystem.cs @@ -168,7 +168,7 @@ public sealed partial class ChangelingSystem : EntitySystem } private void UpdateBiomass(EntityUid uid, ChangelingComponent comp, float? amount = null) { - comp.Biomass += amount ?? -1; + comp.Biomass += amount ?? 0; comp.Biomass = Math.Clamp(comp.Biomass, 0, comp.MaxBiomass); Dirty(uid, comp); _alerts.ShowAlert(uid, "ChangelingBiomass"); @@ -387,13 +387,18 @@ public sealed partial class ChangelingSystem : EntitySystem } public bool TryToggleItem(EntityUid uid, EntProtoId proto, ChangelingComponent comp, string? clothingSlot = null) { - if (!comp.Equipment.TryGetValue(proto.Id, out var item) && item == null) + if (!comp.Equipment.TryGetValue(proto.Id, out var item)) { item = Spawn(proto, Transform(uid).Coordinates); - if (clothingSlot != null && !_inventory.TryEquip(uid, (EntityUid) item, clothingSlot, force: true)) + if (clothingSlot != null) { - QueueDel(item); - return false; + if (!_inventory.TryEquip(uid, (EntityUid) item, clothingSlot, force: true)) + { + QueueDel(item); + return false; + } + comp.Equipment.Add(proto.Id, item); + return true; } else if (!_hands.TryForcePickupAnyHand(uid, (EntityUid) item)) { diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml index 64107049a7..53e94578ff 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml @@ -188,7 +188,7 @@ heatingCoefficient: 0.001 coolingCoefficient: 0.001 - type: ToggleableClothing - clothingPrototype: ClothingHeadHelmetHardsuitMaxim + clothingPrototype: ClothingHeadHelmetHardsuitMaxim - type: ContainerContainer containers: cell_slot: !type:ContainerSlot @@ -1030,7 +1030,7 @@ clothingPrototype: ClothingHeadHelmetHardsuitSanta - type: entity - parent: ClothingOuterBaseLarge + parent: [ ClothingOuterBaseLarge, AllowSuitStorageClothing ] id: ChangelingClothingOuterHardsuit name: organic space suit description: A spaceworthy biomass of pressure and temperature resistant tissue. diff --git a/Resources/Prototypes/Objectives/changeling.yml b/Resources/Prototypes/Objectives/changeling.yml index c2b25503c3..f9c58defbb 100644 --- a/Resources/Prototypes/Objectives/changeling.yml +++ b/Resources/Prototypes/Objectives/changeling.yml @@ -4,7 +4,7 @@ id: BaseChangelingObjective components: - type: Objective - difficulty: 1.5 # unused but necessary i guess + difficulty: 1.5 issuer: objective-issuer-hivemind - type: RoleRequirement roles: @@ -65,3 +65,102 @@ - type: TargetObjective title: objective-condition-escape-identity-title - type: PickRandomPerson + +- type: entity + abstract: true + parent: [BaseChangelingObjective, BaseStealObjective] + id: BaseChangelingStealObjective + components: + - type: StealCondition + verifyMapExistence: true + - type: Objective + difficulty: 1.5 + - type: ObjectiveLimit + limit: 2 + +- type: entity + parent: BaseChangelingStealObjective + id: CMOHyposprayChangelingStealObjective + components: + - type: NotJobRequirement + job: ChiefMedicalOfficer + - type: StealCondition + owner: job-name-cmo + stealGroup: Hypospray + +- type: entity + parent: BaseChangelingStealObjective + id: RDHardsuitChangelingStealObjective + components: + - type: NotJobRequirement + job: ResearchDirector + - type: StealCondition + owner: job-name-rd + stealGroup: ClothingOuterHardsuitRd + - type: Objective + difficulty: 1 + +- type: entity + parent: BaseChangelingStealObjective + id: EnergyShotgunChangelingStealObjective + components: + - type: Objective + difficulty: 2 + - type: NotJobRequirement + job: HeadOfSecurity + - type: StealCondition + stealGroup: WeaponEnergyShotgun + owner: job-name-hos + +- type: entity + parent: BaseChangelingStealObjective + id: MagbootsChangelingStealObjective + components: + - type: NotJobRequirement + job: ChiefEngineer + - type: StealCondition + stealGroup: ClothingShoesBootsMagAdv + owner: job-name-ce + +- type: entity + parent: BaseChangelingStealObjective + id: ClipboardChangelingStealObjective + components: + - type: NotJobRequirement + job: Quartermaster + - type: StealCondition + stealGroup: BoxFolderQmClipboard + owner: job-name-qm + +- type: entity + abstract: true + parent: BaseChangelingStealObjective + id: BaseCaptainChangelingObjective + components: + - type: Objective + difficulty: 2.5 + - type: NotJobRequirement + job: Captain + +- type: entity + parent: BaseCaptainChangelingObjective + id: CaptainIDChangelingStealObjective + components: + - type: StealCondition + stealGroup: CaptainIDCard + +- type: entity + parent: BaseCaptainChangelingObjective + id: CaptainJetpackChangelingStealObjective + components: + - type: StealCondition + stealGroup: JetpackCaptainFilled + +- type: entity + parent: BaseCaptainChangelingObjective + id: CaptainGunChangelingStealObjective + components: + - type: StealCondition + stealGroup: WeaponAntiqueLaser + owner: job-name-captain +