Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Мед апдейт™ - мед препараты. #340

Merged
merged 17 commits into from
Sep 3, 2024
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
7c63742
мидицини. Пока что без доп. эффектов.
JustKekc Aug 24, 2024
508763c
Медицини эффект формалина
JustKekc Aug 24, 2024
6ac3d08
Merge branch 'AdventureTimeSS14:master' into reagents
JustKekc Aug 24, 2024
b5eb281
адреналин + эффекты на морифн и натримизол.
JustKekc Aug 24, 2024
8b08d03
я забыл доделать бальзамирование до конца.
JustKekc Aug 24, 2024
1e2a3c9
вы зачем вонючек обижаете (skunky почему-то удалён)
JustKekc Aug 24, 2024
007fa2a
Вы почему вонючек обижаете 2 (skunky теперь на русском)
JustKekc Aug 24, 2024
9ef7b2d
Merge branch 'master' into reagents
JustKekc Aug 24, 2024
3b53265
Merge branch 'master' into reagents
JustKekc Aug 24, 2024
1b74bfc
Merge branch 'master' into reagents
JustKekc Aug 24, 2024
2534dbf
Меняем. (МЕДЛЕННО-МЕДЛЕННО, СКВОЗЬ ВРЕМЯ И ВОДУ...)
JustKekc Aug 25, 2024
4f08b7f
комментарии, переносы, удаления лишнего.
JustKekc Aug 25, 2024
3fbba29
*я про дефиб забыл.*
JustKekc Aug 25, 2024
c902407
КОММЕНТАРИИ (от визардов.), перенос в наши папки, удаление лишнего.
JustKekc Aug 27, 2024
c49e3bc
Merge branch 'master' into reagents
KashRas2 Aug 29, 2024
7f5f8a0
перекомментирование.
JustKekc Aug 30, 2024
85743df
comment medicine
JustKekc Sep 1, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions Content.Server/ADT/Atmos/Rotting/EmbalmedSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
using Content.Shared.ADT.Atmos.Miasma;
using Content.Shared.Examine;
using Content.Shared.Mobs.Systems;

namespace Content.Server.ADT.Atmos.Rotting;

public sealed partial class EmbalmedSystem : EntitySystem
{
[Dependency] private readonly MobStateSystem _mobState = default!;
public override void Initialize()
{
SubscribeLocalEvent<EmbalmedComponent, ExaminedEvent>(OnExamine);
base.Initialize();
}

private void OnExamine(EntityUid uid, EmbalmedComponent component, ExaminedEvent args)
{
if (!_mobState.IsDead(uid))
return;
args.PushMarkup(Loc.GetString("adt-rotting-embalmed"));
}
}
19 changes: 19 additions & 0 deletions Content.Server/ADT/EntityEffects/Effects/Embalm.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
using Content.Shared.EntityEffects;
using Robust.Shared.Prototypes;
using Content.Shared.ADT.Atmos.Miasma;


namespace Content.Server.ADT.EntityEffects.Effects;

public sealed partial class Embalm : EntityEffect
{
protected override string? ReagentEffectGuidebookText(IPrototypeManager prototype, IEntitySystemManager entSys)
=> Loc.GetString("reagent-effect-guidebook-embalm", ("chance", Probability));

// Gives the entity a component that prevents rotting and also execution by defibrillator
public override void Effect(EntityEffectBaseArgs args)
{
var entityManager = args.EntityManager;
entityManager.EnsureComponent<EmbalmedComponent>(args.TargetEntity);
}
}
6 changes: 6 additions & 0 deletions Content.Server/Medical/DefibrillatorSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
using Robust.Shared.Audio.Systems;
using Robust.Shared.Player;
using Robust.Shared.Timing;
using Content.Shared.ADT.Atmos.Miasma;

namespace Content.Server.Medical;

Expand Down Expand Up @@ -152,6 +153,11 @@ public void Zap(EntityUid uid, EntityUid target, EntityUid user, DefibrillatorCo
_chatManager.TrySendInGameICMessage(uid, Loc.GetString("defibrillator-rotten"),
InGameICChatType.Speak, true);
}
if (HasComp<EmbalmedComponent>(target))
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
{
_chatManager.TrySendInGameICMessage(uid, Loc.GetString("defibrillator-embalmed"),
InGameICChatType.Speak, true);
}
else if (HasComp<UnrevivableComponent>(target))
{
_chatManager.TrySendInGameICMessage(uid, Loc.GetString("defibrillator-unrevivable"),
Expand Down
10 changes: 10 additions & 0 deletions Content.Shared/ADT/Atmos/Rotting/EmbalmedComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
namespace Content.Shared.ADT.Atmos.Miasma;

/// <summary>
/// Entities wouldn't rot at all with this component.
/// </summary>
[RegisterComponent]
public sealed partial class EmbalmedComponent : Component
{

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using Robust.Shared.GameStates;
JustKekc marked this conversation as resolved.
Show resolved Hide resolved

namespace Content.Shared.Damage.Components;

/// <summary>
/// This is used for an effect that nullifies <see cref="SlowOnDamageComponent"/> and adds an alert.
/// </summary>
[RegisterComponent, NetworkedComponent, Access(typeof(SlowOnDamageSystem))]
public sealed partial class IgnoreSlowOnDamageComponent : Component;
33 changes: 31 additions & 2 deletions Content.Shared/Damage/Systems/SlowOnDamageSystem.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using Content.Shared.Damage.Components;
using Content.Shared.FixedPoint;
using Content.Shared.Inventory;
using Content.Shared.Movement.Systems;

namespace Content.Shared.Damage
Expand All @@ -14,6 +15,10 @@ public override void Initialize()

SubscribeLocalEvent<SlowOnDamageComponent, DamageChangedEvent>(OnDamageChanged);
SubscribeLocalEvent<SlowOnDamageComponent, RefreshMovementSpeedModifiersEvent>(OnRefreshMovespeed);

SubscribeLocalEvent<IgnoreSlowOnDamageComponent, ComponentStartup>(OnIgnoreStartup);
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
SubscribeLocalEvent<IgnoreSlowOnDamageComponent, ComponentShutdown>(OnIgnoreShutdown);
SubscribeLocalEvent<IgnoreSlowOnDamageComponent, ModifySlowOnDamageSpeedEvent>(OnIgnoreModifySpeed);
}

private void OnRefreshMovespeed(EntityUid uid, SlowOnDamageComponent component, RefreshMovementSpeedModifiersEvent args)
Expand All @@ -36,7 +41,10 @@ private void OnRefreshMovespeed(EntityUid uid, SlowOnDamageComponent component,
if (closest != FixedPoint2.Zero)
{
var speed = component.SpeedModifierThresholds[closest];
args.ModifySpeed(speed, speed);

var ev = new ModifySlowOnDamageSpeedEvent(speed);
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
RaiseLocalEvent(uid, ref ev);
args.ModifySpeed(ev.Speed, ev.Speed);
}
}

Expand All @@ -47,5 +55,26 @@ private void OnDamageChanged(EntityUid uid, SlowOnDamageComponent component, Dam

_movementSpeedModifierSystem.RefreshMovementSpeedModifiers(uid);
}

private void OnIgnoreStartup(Entity<IgnoreSlowOnDamageComponent> ent, ref ComponentStartup args)
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
{
_movementSpeedModifierSystem.RefreshMovementSpeedModifiers(ent);
}

private void OnIgnoreShutdown(Entity<IgnoreSlowOnDamageComponent> ent, ref ComponentShutdown args)
{
_movementSpeedModifierSystem.RefreshMovementSpeedModifiers(ent);
}

private void OnIgnoreModifySpeed(Entity<IgnoreSlowOnDamageComponent> ent, ref ModifySlowOnDamageSpeedEvent args)
{
args.Speed = 1f;
}
}

[ByRefEvent]
public record struct ModifySlowOnDamageSpeedEvent(float Speed) : IInventoryRelayEvent
{
public SlotFlags TargetSlots => SlotFlags.WITHOUT_POCKET;
}
}
}
16 changes: 16 additions & 0 deletions Resources/Locale/en-US/ADT/Reagents/Effects/medicine_effects.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
medicine-effect-usual = You feel how your pain is slowly going away.
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
medicine-effect-asphyxia = Your breath is recovering and gradually comes back to normal rate.
medicine-effect-hungover = Your thoughts become more assembled and the movement less sloppy.
medicine-effect-eyedamage = Your vision has got a bit better.
medicine-effect-mind = Looks like your mind is expanding.
medicine-effect-stress = Your body is getting tense.

medicine-effect-headache = You feel how your headache decreases.
medicine-effect-slash = You feel how your pain from wounds decreases.
medicine-effect-piercing = You feel how your pain from piercing wounds decreases.
medicine-effect-heat = Looks like your temperature lowered a bit.
medicine-effect-shock = You feel how your pain from electric shock decreases.
medicine-effect-major-stress = Your body is getting very tense.
medicine-effect-emotions = Your emotions and feelings become less bright.
medicine-effect-antipsychotic = Your vision and thoughts are becoming less indistinct.
medicine-effect-pain = You feel how your pain is slowly faiding away.
32 changes: 32 additions & 0 deletions Resources/Locale/en-US/ADT/Reagents/Meta/medicine.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
reagent-name-sodiumizole = sodiumizole
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
reagent-desc-sodiumizole = A pretty cheap and weak analgetic. Becomes efficent in healing blunt damage when it's paired with bicaridine.

reagent-name-nitrofurfoll = nitrofurfoll
reagent-desc-nitrofurfoll = An antimicrobal chemical that is often used to treat small wounds. Good addition for healing slash damage in pair with bicaridin.

reagent-name-perohydrogen = perohydrogen
reagent-desc-perohydrogen = A frequently used chemical to treat small piercing wounds. Becomes more efficent with bicaridine.

reagent-name-anelgesin = anelgesin
reagent-desc-anelgesin = A popular antipyretic. Has healing effect when paired with dermaline.

reagent-name-minoxide = minoxide
reagent-desc-minoxide = A chemical that softens the effect and pain of electic shock. Becomes more efficent with dermaline.

reagent-name-biomicine = biomicine
reagent-desc-biomicine = On it's own doesn't have any effect on organism, but it becomes extremely unstable when paired with dylovene. Often used in near-death cases of poisoning. Exerts major stress on body.

reagent-name-nikematide = nikematide
reagent-desc-nikematide = Used for treating minor oxygen deprivation, but still less efficent than dexalin. However, it's a good addition to dexalin plus.

reagent-name-diethamilate = diethamilate
reagent-desc-diethamilate = Hemostatic chemical to prevent small bleeding. Heals bloodloss when paired with dexalin plus.

reagent-name-agolatine = agolatine
reagent-desc-agolatine = An atypical antidepressant most commonly used to treat major depressive disorder and generalized anxiety disorder.

reagent-name-morphine = morphine
reagent-desc-morphine = A strong opiate that is found naturally in opium, by drying the latex of opium poppies. Mainly used as an analgesic.

reagent-name-formalin = formalin
reagent-desc-formalin = A chemical that coagulates proteine and prevents its decomposition. Used in embalming corpses.
3 changes: 3 additions & 0 deletions Resources/Locale/en-US/alerts/alerts.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,9 @@ alerts-bleed-desc = You're [color=red]bleeding[/color].
alerts-pacified-name = [color=green]Pacified[/color]
alerts-pacified-desc = You're pacified; you won't be able to harm living creatures.

alerts-adrenaline-name = [color=red]Adrenaline[/color]
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
alerts-adrenaline-desc = You're full of adrenaline: pain won't slow you down.

alerts-suit-power-name = Suit Power
alerts-suit-power-desc = How much power your space ninja suit has.

Expand Down
2 changes: 2 additions & 0 deletions Resources/Locale/en-US/disease/miasma.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,5 @@ rotting-extremely-bloated = [color=red]{ CAPITALIZE(POSS-ADJ($target)) } corpse
rotting-rotting-nonmob = [color=orange]{ CAPITALIZE(SUBJECT($target)) } is rotting![/color]
rotting-bloated-nonmob = [color=orangered]{ CAPITALIZE(SUBJECT($target)) } is bloated![/color]
rotting-extremely-bloated-nonmob = [color=red]{ CAPITALIZE(SUBJECT($target)) } is extremely bloated![/color]

adt-rotting-embalmed = [color=#edad45]Looks like body is embalmed.[/color]
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@ reagent-effect-status-effect-RatvarianLanguage = ratvarian language patterns
reagent-effect-status-effect-StaminaModifier = modified stamina
reagent-effect-status-effect-RadiationProtection = radiation protection
reagent-effect-status-effect-Drowsiness = drowsiness
reagent-effect-status-effect-Adrenaline = adrenaline
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
defibrillator-no-mind = No intelligence pattern can be detected in patient's brain. Further attempts futile.
defibrillator-rotten = Body decomposition detected: resuscitation failed.
defibrillator-unrevivable = This patient is unable to be revived due to a unique body composition.
defibrillator-embalmed = Body embalmment detected: resuscitation failed.
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
1 change: 1 addition & 0 deletions Resources/Locale/en-US/reagents/meta/physical-desc.ftl
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
reagent-physical-desc-skunky = skunky
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
reagent-physical-desc-soapy = soapy
reagent-physical-desc-ferrous = ferrous
reagent-physical-desc-nothing = nothing
Expand Down
20 changes: 20 additions & 0 deletions Resources/Locale/ru-RU/ADT/reagents/effects/medicine_effects.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
medicine-effect-usual = Вы чувствуете, как ваша боль постепенно уходит.
medicine-effect-asphyxia = Ваше дыхание восстанавливается и понемногу приходит в норму.
medicine-effect-hungover = Ваши мысли становятся более собранными, а движения менее неряшливыми.
medicine-effect-eyedamage = Ваше зрение стало чуть лучше.
medicine-effect-mind = Похоже, ваш разум расширяется.
medicine-effect-stress = Ваше тело напрягается.

medicine-effect-headache = Вы чувствуете, как ваша головная боль постепенно уменьшается.
medicine-effect-slash = Вы чувствуете, как боль от ваших ран уменьшается.
medicine-effect-piercing = Вы чувствуете, как боль от ваших колотых мест уменьшается.
medicine-effect-heat = Похоже, ваша температура совсем немного понизилась.
medicine-effect-shock = Вы чувствуете, как боль от электрического ожога по всему вашему телу уменьшается.
medicine-effect-major-stress = Ваше тело сильно напрягается.
medicine-effect-emotions = Ваши эмоции и чувства становятся менее выразительными.
medicine-effect-antipsychotic = Ваше зрение и мысли становятся менее расплывчатыми.
medicine-effect-pain = Вы чувствуете, как ваша боль притупляется.

medicine-effect-visible-emotions-m = { CAPITALIZE($entity) } выглядит менее эмоциональным.
medicine-effect-visible-emotions-f = { CAPITALIZE($entity) } выглядит менее эмоциональной.
medicine-effect-visible-polymorph = { CAPITALIZE($entity) } притерпевает изменения в теле!
42 changes: 42 additions & 0 deletions Resources/Locale/ru-RU/ADT/reagents/meta/medicine.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
flavor-complex-somesalty = солёненькое
reagent-name-ultra-chloral-hydrate = Ультрахлоральгидрат
reagent-desc-ultra-chloral-hydrate = Модифицированный хлоральгидрат. В малых дозах вызывает сонливость. В больших дозах усыпляет. Передозировки нет

reagent-name-nitrofurfoll = нитрофурфол
reagent-desc-nitrofurfoll = Антимикробный препарат, который зачастую используют для исцеления небольших ран. Становится более эффективным вместе с бикаридином.

reagent-name-perohydrogen = пероводород
reagent-desc-perohydrogen = Часто используемый препарат для обработки болезненных уколов. Становится более эффективным вместе с бикаридином.

reagent-name-anelgesin = анельгезин
reagent-desc-anelgesin = Популярное жаропонижающее. Имеет исцелительные свойства в паре с дермалином.

reagent-name-minoxide = миноксид
reagent-desc-minoxide = Препарат, который смягчает эффект и боль от электрического шока. Становится более эффективным вместе с дермалином.

reagent-name-biomicine = биомицин
reagent-desc-biomicine = Сам по себе не влияет на организм, но становится крайне не стабильным при совмещении с диловеном. Зачастую используется в предсмертных случаях отравления. Оказывает значительное напряжение тела.

reagent-name-nikematide = никематид
reagent-desc-nikematide = Используется для лечения лёгкого кислородного голодания, но менее эффективно, чем дексалин. Однако, это отличное дополнение к дексалину плюс.

reagent-name-diethamilate = диэтамилат
reagent-desc-diethamilate = Гемостатическое средство для остановки небольшого кровотечения. Восполняет кровопотерю в паре с дексалином плюс.

reagent-name-sodiumizole = натримизол
reagent-desc-sodiumizole = Достаточно дешёвый и слабый анальгетик. Становится более эффективным в паре с бикаридином.

reagent-name-agolatine = аголатин
reagent-desc-agolatine = Атипичный антидепрессант, зачастую используемый для лечения эпизодов большой депрессии и генерализованного тревожного расстройства.

reagent-name-morphine = морфин
reagent-desc-morphine = Сильный опиат, добываемый из снотворного мака. В основном используется как анальгетик.

reagent-name-formalin = формалин
reagent-desc-formalin = Препарат, свёртывающий белки и предотвращающий их разложение. Используется для бальзамирования трупов.

reagent-name-styptic-powder = Кровоостанавливающая пудра
reagent-desc-styptic-powder = При нанесении на кожу заживляет травмы.

reagent-name-silver-sulfadiazine = Сульфадиазин серебра
reagent-desc-silver-sulfadiazine = При нанесении на кожу заживляет ожоги.
2 changes: 2 additions & 0 deletions Resources/Locale/ru-RU/alerts/alerts.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@ alerts-bleed-name = [color=red]Кровотечение[/color]
alerts-bleed-desc = У вас [color=red]кровотечение[/color].
alerts-pacified-name = [color=green]Пацифизм[/color]
alerts-pacified-desc = Вы чувствуете себя умиротворённо и не можете вредить живым существам.
alerts-adrenaline-name = [color=red]Адреналин[/color]
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
alerts-adrenaline-desc = Вы полны адреналина: боль вас не замедлит.
alerts-suit-power-name = Заряд костюма
alerts-suit-power-desc = Запас энергии вашего костюма космического ниндзя.
alerts-magboots-name = Магнитные ботинки
Expand Down
1 change: 1 addition & 0 deletions Resources/Locale/ru-RU/disease/miasma.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,4 @@ rotting-extremely-bloated = [color=red]{ CAPITALIZE(SUBJECT($target)) } силь
rotting-rotting-nonmob = [color=orange]{ CAPITALIZE(SUBJECT($target)) } гниёт![/color]
rotting-bloated-nonmob = [color=orangered]{ CAPITALIZE(SUBJECT($target)) } вздулось![/color]
rotting-extremely-bloated-nonmob = [color=red]{ CAPITALIZE(SUBJECT($target)) } сильно вздулось![/color]
adt-rotting-embalmed = [color=#edad45]Похоже, тело забальзамировано.[/color]
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@ reagent-effect-status-effect-RatvarianLanguage = паттерны ратварс
reagent-effect-status-effect-StaminaModifier = модифицированная выносливость
reagent-effect-status-effect-RadiationProtection = защита от радиации
reagent-effect-status-effect-Drowsiness = сонливость
reagent-effect-status-effect-Adrenaline = адреналин
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ defibrillator-not-on = Дефибриллятор не включён.
defibrillator-no-mind = Не удалось обнаружить паттерны мозговой активности пациента. Дальнейшие попытки бесполезны...
defibrillator-rotten = Обнаружено разложение тела: реанимация невозможна.
defibrillator-unrevivable = Этот пациент не может быть оживлён из-за уникального телосложения.
defibrillator-embalmed = Обнаружено бальзамирование тела: реанимация невозможна.
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
1 change: 1 addition & 0 deletions Resources/Locale/ru-RU/reagents/meta/physical-desc.ftl
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
reagent-physical-desc-skunky = вонючее
JustKekc marked this conversation as resolved.
Show resolved Hide resolved
reagent-physical-desc-soapy = мыльное
reagent-physical-desc-ferrous = чёрнометаллическое
reagent-physical-desc-nothing = никакое
Expand Down
Loading
Loading