diff --git a/Content.Server/Speech/Components/VocalComponent.cs b/Content.Server/Speech/Components/VocalComponent.cs index ab01f01a9d..513e0e8b95 100644 --- a/Content.Server/Speech/Components/VocalComponent.cs +++ b/Content.Server/Speech/Components/VocalComponent.cs @@ -3,7 +3,6 @@ using Content.Server._White.AspectsSystem.Aspects; using Content.Shared.Chat.Prototypes; using Content.Shared.Humanoid; using Robust.Shared.Audio; -using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; @@ -32,12 +31,6 @@ public sealed partial class VocalComponent : Component [DataField("wilhelmProbability")] public float WilhelmProbability = 0.0002f; - [DataField("screamAction", customTypeSerializer: typeof(PrototypeIdSerializer))] - public string ScreamAction = "ActionScream"; - - [DataField("screamActionEntity")] - public EntityUid? ScreamActionEntity; - /// /// Currently loaded emote sounds prototype, based on entity sex. /// Null if no valid prototype for entity sex was found. diff --git a/Content.Server/Speech/EntitySystems/VocalSystem.cs b/Content.Server/Speech/EntitySystems/VocalSystem.cs index aedcbbd099..47a3e9936b 100644 --- a/Content.Server/Speech/EntitySystems/VocalSystem.cs +++ b/Content.Server/Speech/EntitySystems/VocalSystem.cs @@ -1,10 +1,8 @@ -using Content.Server.Actions; using Content.Server.Chat.Systems; using Content.Server.Speech.Components; using Content.Shared.Chat.Prototypes; using Content.Shared.Humanoid; using Content.Shared.Speech; -using Robust.Shared.Audio; using Robust.Shared.Audio.Systems; using Robust.Shared.Prototypes; using Robust.Shared.Random; @@ -17,33 +15,13 @@ public sealed class VocalSystem : EntitySystem [Dependency] private readonly IPrototypeManager _proto = default!; [Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly ChatSystem _chat = default!; - [Dependency] private readonly ActionsSystem _actions = default!; public override void Initialize() { base.Initialize(); - SubscribeLocalEvent(OnMapInit); - SubscribeLocalEvent(OnShutdown); SubscribeLocalEvent(OnSexChanged); SubscribeLocalEvent(OnEmote); - SubscribeLocalEvent(OnScreamAction); - } - - private void OnMapInit(EntityUid uid, VocalComponent component, MapInitEvent args) - { - // try to add scream action when vocal comp added - _actions.AddAction(uid, ref component.ScreamActionEntity, component.ScreamAction); - LoadSounds(uid, component); - } - - private void OnShutdown(EntityUid uid, VocalComponent component, ComponentShutdown args) - { - // remove scream action when component removed - if (component.ScreamActionEntity != null) - { - _actions.RemoveAction(uid, component.ScreamActionEntity); - } } private void OnSexChanged(EntityUid uid, VocalComponent component, SexChangedEvent args) @@ -67,15 +45,6 @@ public sealed class VocalSystem : EntitySystem args.Handled = _chat.TryPlayEmoteSound(uid, component.EmoteSounds, args.Emote); } - private void OnScreamAction(EntityUid uid, VocalComponent component, ScreamActionEvent args) - { - if (args.Handled) - return; - - _chat.TryEmoteWithChat(uid, component.ScreamId); - args.Handled = true; - } - private bool TryPlayScreamSound(EntityUid uid, VocalComponent component) { if (_random.Prob(component.WilhelmProbability)) diff --git a/Content.Server/Speech/Muting/MutingSystem.cs b/Content.Server/Speech/Muting/MutingSystem.cs index b743d9eda8..83a0e54c02 100644 --- a/Content.Server/Speech/Muting/MutingSystem.cs +++ b/Content.Server/Speech/Muting/MutingSystem.cs @@ -12,12 +12,12 @@ namespace Content.Server.Speech.Muting public sealed class MutingSystem : EntitySystem { [Dependency] private readonly PopupSystem _popupSystem = default!; + public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnSpeakAttempt); SubscribeLocalEvent(OnEmote, before: new[] { typeof(VocalSystem) }); - SubscribeLocalEvent(OnScreamAction, before: new[] { typeof(VocalSystem) }); } private void OnEmote(EntityUid uid, MutedComponent component, ref EmoteEvent args) @@ -30,20 +30,6 @@ namespace Content.Server.Speech.Muting args.Handled = true; } - private void OnScreamAction(EntityUid uid, MutedComponent component, ScreamActionEvent args) - { - if (args.Handled) - return; - - if (HasComp(uid)) - _popupSystem.PopupEntity(Loc.GetString("mime-cant-speak"), uid, uid); - - else - _popupSystem.PopupEntity(Loc.GetString("speech-muted"), uid, uid); - args.Handled = true; - } - - private void OnSpeakAttempt(EntityUid uid, MutedComponent component, SpeakAttemptEvent args) { // TODO something better than this. @@ -58,4 +44,4 @@ namespace Content.Server.Speech.Muting args.Cancel(); } } -} +} \ No newline at end of file diff --git a/Content.Server/_White/Implants/Mindslave/MindslaveSystem.cs b/Content.Server/_White/Implants/Mindslave/MindslaveSystem.cs index d2e1f7e733..80838ba8ae 100644 --- a/Content.Server/_White/Implants/Mindslave/MindslaveSystem.cs +++ b/Content.Server/_White/Implants/Mindslave/MindslaveSystem.cs @@ -69,6 +69,11 @@ public sealed class MindslaveSystem : SharedMindslaveSystem private void OnMindslaveRemoved(Entity ent, ref SubdermalImplantRemoved args) { + if (!Tag.HasTag(ent.Owner, MindslaveTag)) + { + return; + } + if (!TryComp(args.Target, out MindSlaveComponent? mindslave)) { return; diff --git a/Content.Shared/Speech/ScreamActionEvent.cs b/Content.Shared/Speech/ScreamActionEvent.cs deleted file mode 100644 index 756f65a35d..0000000000 --- a/Content.Shared/Speech/ScreamActionEvent.cs +++ /dev/null @@ -1,7 +0,0 @@ -using Content.Shared.Actions; - -namespace Content.Shared.Speech; - -public sealed partial class ScreamActionEvent : InstantActionEvent -{ -} diff --git a/Resources/Locale/ru-RU/flavors/flavor-profiles.ftl b/Resources/Locale/ru-RU/flavors/flavor-profiles.ftl index 8231952573..a6aa60da1a 100644 --- a/Resources/Locale/ru-RU/flavors/flavor-profiles.ftl +++ b/Resources/Locale/ru-RU/flavors/flavor-profiles.ftl @@ -179,7 +179,7 @@ flavor-complex-rocksandstones = как скалы и камни ## Basic drinks flavor-complex-water = как вода -flavor-complex-water = как вода +flavor-complex-beer = как моча flavor-complex-cognac = как сухой пряный алкоголь flavor-complex-mead = как забродивший мёд flavor-complex-vermouth = как виноградная мякоть diff --git a/Resources/Locale/ru-RU/items/components/item-component.ftl b/Resources/Locale/ru-RU/items/components/item-component.ftl index f761f46b3b..1e59ec7869 100644 --- a/Resources/Locale/ru-RU/items/components/item-component.ftl +++ b/Resources/Locale/ru-RU/items/components/item-component.ftl @@ -5,3 +5,12 @@ pick-up-verb-get-data-text = Подобрать # "pick up" doesn't make sense if the item is already in their inventory pick-up-verb-get-data-text-inventory = Взять в руку + +item-component-on-examine-size = Это {INDEFINITE($size)} [bold]{$size}[/bold] предмет. + +item-component-size-Tiny = крошечный +item-component-size-Small = маленький +item-component-size-Normal = средний +item-component-size-Large = большой +item-component-size-Huge = огромный +item-component-size-Ginormous = гигантский \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ss14-ru/prototypes/actions/types.ftl b/Resources/Locale/ru-RU/ss14-ru/prototypes/actions/types.ftl index 07546da98e..4a9364816a 100644 --- a/Resources/Locale/ru-RU/ss14-ru/prototypes/actions/types.ftl +++ b/Resources/Locale/ru-RU/ss14-ru/prototypes/actions/types.ftl @@ -1,5 +1,3 @@ -ent-ActionScream = Крикнуть - .desc = ААААААААААААААААААААААААА ent-ActionTurnUndead = Обратиться в зомби .desc = Поддайтесь заражению и превратитесь в зомби. ent-ActionToggleLight = Переключить фонарь diff --git a/Resources/Prototypes/Actions/types.yml b/Resources/Prototypes/Actions/types.yml index ab650286bc..cd22605b64 100644 --- a/Resources/Prototypes/Actions/types.yml +++ b/Resources/Prototypes/Actions/types.yml @@ -1,16 +1,3 @@ -- type: entity - id: ActionScream - name: Scream - description: AAAAAAAAAAAAAAAAAAAAAAAAA - noSpawn: true - components: - - type: InstantAction - useDelay: 10 - icon: Interface/Actions/scream.png - event: !type:ScreamActionEvent - checkCanInteract: false - - type: LesserFormRestricted - - type: entity id: ActionTurnUndead name: Turn Undead diff --git a/Resources/Prototypes/Catalog/catalog.yml b/Resources/Prototypes/Catalog/catalog.yml index 49cdef2a40..07bc9f850d 100644 --- a/Resources/Prototypes/Catalog/catalog.yml +++ b/Resources/Prototypes/Catalog/catalog.yml @@ -24,16 +24,6 @@ categories: - Debug -- type: listing - id: DebugListing4 - name: debug name 4 - description: debug desc 4 - productAction: ActionScream - categories: - - Debug - cost: - DebugDollar: 1 - - type: listing id: DebugListing2 name: debug name 2 diff --git a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml index e5993c6349..4e77d63987 100644 --- a/Resources/Prototypes/Entities/Clothing/Belt/belts.yml +++ b/Resources/Prototypes/Entities/Clothing/Belt/belts.yml @@ -339,7 +339,7 @@ - type: Storage whitelist: tags: - # - PlantAnalyzer + - PlantAnalyzer - PlantSampleTaker - BotanyShovel - BotanyHoe @@ -358,10 +358,10 @@ whitelist: tags: - BotanyHatchet - # hydro: - # whitelist: - # tags: - # - PlantAnalyzer # Dunno what to put here, should be aight. + hydro: + whitelist: + tags: + - PlantAnalyzer # Dunno what to put here, should be aight. hoe: whitelist: tags: diff --git a/Resources/Prototypes/Entities/Mobs/Player/humanoid.yml b/Resources/Prototypes/Entities/Mobs/Player/humanoid.yml index b0a2571875..315bd361e3 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/humanoid.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/humanoid.yml @@ -19,6 +19,21 @@ - type: InitialInfectedExempt - type: randomHumanoidSettings + id: Nanotrasen + speciesBlacklist: + - Arachnid + - Diona + - Moth + - Reptilian + - Skrell + - SlimePerson + - Vox + - Harpy + - Felinid + - Dwarf + +- type: randomHumanoidSettings + parent: Nanotrasen id: DeathSquad randomizeName: false components: @@ -55,6 +70,7 @@ - type: InitialInfectedExempt - type: randomHumanoidSettings + parent: Nanotrasen id: ERTLeader randomizeName: false components: @@ -395,6 +411,7 @@ - type: InitialInfectedExempt - type: randomHumanoidSettings + parent: Nanotrasen id: CBURNAgent components: - type: MindShield @@ -423,6 +440,7 @@ - type: InitialInfectedExempt - type: randomHumanoidSettings + parent: Nanotrasen id: CentcomOfficial components: - type: MindShield diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Smokeables/Cigars/case.yml b/Resources/Prototypes/Entities/Objects/Consumable/Smokeables/Cigars/case.yml index f51640d4c6..525fbc312b 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Smokeables/Cigars/case.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Smokeables/Cigars/case.yml @@ -40,9 +40,6 @@ - type: Item sprite: Objects/Consumable/Smokeables/Cigars/case.rsi size: Normal - shape: - - 0,0,2,1 - storedRotation: 90 - type: StorageFill contents: - id: Cigar diff --git a/Resources/Prototypes/Entities/Objects/Materials/Sheets/glass.yml b/Resources/Prototypes/Entities/Objects/Materials/Sheets/glass.yml index 97e91869e9..752e67da33 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/Sheets/glass.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/Sheets/glass.yml @@ -9,7 +9,7 @@ sprite: Objects/Materials/Sheets/glass.rsi - type: Item sprite: Objects/Materials/Sheets/glass.rsi - size: Normal + size: Small - type: StaticPrice price: 0 - type: Tag diff --git a/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml b/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml index 18590e98df..058adc9f16 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/Sheets/other.yml @@ -8,7 +8,7 @@ sprite: Objects/Materials/Sheets/other.rsi - type: Item sprite: Objects/Materials/Sheets/other.rsi - size: Normal + size: Small - type: Tag tags: - Sheet diff --git a/Resources/Prototypes/Entities/Objects/Materials/ingots.yml b/Resources/Prototypes/Entities/Objects/Materials/ingots.yml index 7e8e6a5b74..0ef99722e7 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/ingots.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/ingots.yml @@ -8,7 +8,7 @@ sprite: Objects/Materials/ingots.rsi - type: Item sprite: Objects/Materials/ingots.rsi - size: Normal + size: Small - type: StaticPrice price: 0 - type: Tag diff --git a/Resources/Prototypes/Entities/Objects/Materials/parts.yml b/Resources/Prototypes/Entities/Objects/Materials/parts.yml index 4db618761e..d893de9338 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/parts.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/parts.yml @@ -51,7 +51,7 @@ - state: rods_5 map: ["base"] - type: Item - size: Normal + size: Small # heldPrefix: rods - type: Construction graph: MetalRod diff --git a/Resources/Prototypes/Entities/Objects/Misc/implanters.yml b/Resources/Prototypes/Entities/Objects/Misc/implanters.yml index 852fa5a3ac..16b7538423 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/implanters.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/implanters.yml @@ -17,6 +17,7 @@ - Body # no chair microbomb blacklist: components: + - BorgChassis - Guardian # no holoparasite macrobomb wombo combo tags: - Unimplantable diff --git a/Resources/Prototypes/Entities/Objects/Specific/Hydroponics/seedanalyzer.yml b/Resources/Prototypes/Entities/Objects/Specific/Hydroponics/seedanalyzer.yml index b1920cf61a..7ca07f9e12 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Hydroponics/seedanalyzer.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Hydroponics/seedanalyzer.yml @@ -19,7 +19,7 @@ path: "/Audio/Items/Medical/healthscanner.ogg" - type: Tag tags: - - DiscreteHealthAnalyzer + - PlantAnalyzer - type: Appearance - type: entity diff --git a/Resources/Prototypes/Reagents/cleaning.yml b/Resources/Prototypes/Reagents/cleaning.yml index 5e2058958d..2c540970a6 100644 --- a/Resources/Prototypes/Reagents/cleaning.yml +++ b/Resources/Prototypes/Reagents/cleaning.yml @@ -36,6 +36,7 @@ meltingPoint: -11.0 tileReactions: - !type:CleanTileReaction {} + - !type:CleanDecalsReaction {} - !type:SpillTileReaction paralyzeTime: 3 launchForwardsMultiplier: 4