Skip to content

Commit

Permalink
InitCommit
Browse files Browse the repository at this point in the history
  • Loading branch information
Alwayswannahunt committed Nov 19, 2024
1 parent 3cc6e5b commit f31197e
Show file tree
Hide file tree
Showing 8 changed files with 457 additions and 65 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace Content.Server.Corvax.HiddenDescription;

/// <summary>
/// Shows hidden description from entity in container
/// </summary>
[RegisterComponent]
public sealed partial class HiddenDescriptionContainerShowerComponent : Component { }
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
using Content.Shared.Examine;
using Robust.Server.Containers;

namespace Content.Server.Corvax.HiddenDescription;

public sealed class HiddenDescriptionContainerShowerSystem : EntitySystem
{
[Dependency] private readonly ContainerSystem _container = default!;
[Dependency] private readonly HiddenDescriptionSystem _hiddenDescription = default!;

public override void Initialize()
{
base.Initialize();

SubscribeLocalEvent<HiddenDescriptionContainerShowerComponent, ExaminedEvent>(OnExamine);
}

private void OnExamine(Entity<HiddenDescriptionContainerShowerComponent> entity, ref ExaminedEvent args)
{
foreach (var container in _container.GetAllContainers(entity.Owner))
{
foreach (var containedEntity in container.ContainedEntities)
{
if (TryComp<HiddenDescriptionComponent>(containedEntity, out var hiddenDescription))
{
_hiddenDescription.PushExamineInformation(hiddenDescription, ref args);
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,15 @@ public override void Initialize()
}

private void OnExamine(Entity<HiddenDescriptionComponent> hiddenDesc, ref ExaminedEvent args)
{
PushExamineInformation(hiddenDesc.Comp, ref args);
}

public void PushExamineInformation(HiddenDescriptionComponent component, ref ExaminedEvent args)
{
_mind.TryGetMind(args.Examiner, out var mindId, out var mindComponent);

foreach (var item in hiddenDesc.Comp.Entries)
foreach (var item in component.Entries)
{
var isJobAllow = false;
if (_roles.MindHasRole<JobRoleComponent>((mindId, mindComponent), out var jobRole))
Expand All @@ -39,7 +44,7 @@ private void OnExamine(Entity<HiddenDescriptionComponent> hiddenDesc, ref Examin
: isMindWhitelistPassed || isBodyWhitelistPassed || isJobAllow;

if (passed)
args.PushMarkup(Loc.GetString(item.Label), hiddenDesc.Comp.PushPriority);
args.PushMarkup(Loc.GetString(item.Label), component.PushPriority);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,41 @@ corvax-hidden-desc-EnergyShield-syndicate = [color=#e31735]Настоящий э
corvax-hidden-desc-EnergyShield-security = [color=#DE3A3A]Это настоящее вражеское энергетическое оружие! Перед вами энергощит![/color]
corvax-hidden-desc-EnergyShield-cargo = [color=#A46106]Вам знакома эта технология. Это энергощит.[/color]
corvax-hidden-desc-IllegalImplants-medical = [color=#52B4E9]Сверив серийные номера, вы понимаете, что это несертифицированный имплантер.[/color]
corvax-hidden-desc-LegalImplants-medical = [color=#52B4E9]Сверив серийные номера, вы понимаете, что внутри легальный, сертифицированный имплант.[/color]
corvax-hidden-desc-HoloparasiteInjector-syndicate = [color=#e31735]Сложнейшее произведение искусства, основанное на наномашинах, позволяющее пользователю стать носителем опаснейшего голопаразита.[/color]
corvax-hidden-desc-HoloparasiteInjector-research = [color=#D381C9]Перед вами крайне сложная технология, основанная на наномашинах. Она позволяет создать голопаразита и связать его с носителем.[/color]
corvax-hidden-desc-HoloClownInjector-syndicate = [color=#e31735]Смешнейшее произведение искусства, основанное на наномашинах, позволяющее пользователю стать носителем голоклоуна.[/color]
corvax-hidden-desc-HoloClownInjector-research = [color=#D381C9]Перед вами крайне смешная технология, основанная на наномашинах. Она позволяет создать странного голопаразита и связать его с носителем.[/color]
corvax-hidden-desc-SadTromboneImplanter-research = [color=#D381C9]Внутри имплант грустного тромбона. Этот имплант проигрывает грустную мелодию при смерти владельца.[/color]
corvax-hidden-desc-LightImplanter-research = [color=#D381C9]Внутри имплант света. Позволяет коже владельца слабо светиться по его желанию.[/color]
corvax-hidden-desc-BikeHornImplanter-research = [color=#D381C9]Внутри хонк-имплант. Позволяет издавать смешные звуки непонятно откуда.[/color]
corvax-hidden-desc-TrackingImplanter-research = [color=#D381C9]Внутри трекер-имплант. Транслирует местоположение и жизненные показатели владельца на сервер мониторинга экипажа.[/color]
corvax-hidden-desc-MindShieldImplanter-research = [color=#D381C9]Внутри имплант "Щит разума". Гарантирует лояльность корпорации Nanotrasen и предотвращает воздействие устройств контроля сознания.[/color]
corvax-hidden-desc-StorageImplanter-research = [color=#D381C9]Внутри имплант подкожного хранилища. Позволяет организовать скрытое хранилище внутри тела с использованием блюспейс-технологии.[/color]
corvax-hidden-desc-FreedomImplanter-research = [color=#D381C9]Внутри имплант свободы. Позволяет пользователю до трёх раз вырваться из наручников, прежде чем он перестанет функционировать.[/color]
corvax-hidden-desc-UplinkImplanter-research = [color=#D381C9]Внутри имплант чёрного рынка. Позволяет владельцу пользоваться чёрным рынком.[/color]
corvax-hidden-desc-EmpImplanter-research = [color=#D381C9]Внутри ЭМИ-имплант. Позволяет владельцу испускать электромагнитные импульсы, нарушающие работу электроники.[/color]
corvax-hidden-desc-ScramImplanter-research = [color=#D381C9]Внутри имплант побега. Позволяет совершать экстренные неконтролируемые телепортации на большие расстояния.[/color]
corvax-hidden-desc-DnaScramblerImplanter-research = [color=#D381C9]Внутри имплант ДНК-миксера. Позволяет пользователю один раз произвольно изменить свою внешность и имя.[/color]
corvax-hidden-desc-MicroBombImplanter-research = [color=#D381C9]Внутри имплант микробомбы. Он детонирует при смерти владельца.[/color]
corvax-hidden-desc-MacroBombImplanter-research = [color=#D381C9]Внутри имплант макробомбы. Создаёт большой взрыв при смерти пользователя после запрограммированного обратного отсчета.[/color]
corvax-hidden-desc-DeathRattleImplanter-research = [color=#D381C9]Внутри имплант посмертного растворителя. Растворяет носителя и всё снаряжение при его смерти.[/color]
corvax-hidden-desc-DeathAcidifierImplanter-research = [color=#D381C9]Внутри имплант предсмертного хрипа. Сообщает в неизвестный радиоканал о жизненных показателях носителя.[/color]
corvax-hidden-desc-SadTromboneImplanter-syndicate = [color=#e31735]Внутри имплант грустного тромбона. Проиграет грустную мелодию при смерти.[/color]
corvax-hidden-desc-LightImplanter-syndicate = [color=#e31735]Внутри имплант света. Позволит коже слабо светиться по желанию.[/color]
corvax-hidden-desc-BikeHornImplanter-syndicate = [color=#e31735]Внутри хонк-имплант. Позволит издавать смешные звуки непонятно откуда.[/color]
corvax-hidden-desc-TrackingImplanter-syndicate = [color=#e31735]Внутри трекер-имплант. Будет транслировать местоположение и жизненные показатели на сервера NanoTrasen.[/color]
corvax-hidden-desc-MindShieldImplanter-syndicate = [color=#e31735]Внутри имплант "Щит разума". Гарантирует лояльность корпорации Nanotrasen и предотвращает воздействие устройств контроля сознания.[/color]
corvax-hidden-desc-StorageImplanter-syndicate = [color=#e31735]Внутри имплант подкожного хранилища. Позволит хранить контрабанду внутри тела.[/color]
corvax-hidden-desc-FreedomImplanter-syndicate = [color=#e31735]Внутри имплант свободы. Позволит до трёх раз вырваться из наручников, освободившись из плена.[/color]
corvax-hidden-desc-UplinkImplanter-syndicate = [color=#e31735]Внутри имплант чёрного рынка. Позволит пользоваться спрятанным аплинком Синдиката, даже если у меня всё заберут.[/color]
corvax-hidden-desc-EmpImplanter-syndicate = [color=#e31735]Внутри ЭМИ-имплант. Выводит из строя технику при помощи электромагнитного импульса. Чем больше хаоса, тем легче работать.[/color]
corvax-hidden-desc-ScramImplanter-syndicate = [color=#e31735]Внутри имплант побега. Надеюсь, меня не телепортирует в бриг...[/color]
corvax-hidden-desc-DnaScramblerImplanter-syndicate = [color=#e31735]Внутри имплант ДНК-миксера. Вызовет хаотичную неконтролируемую телепортацию, которая поможет сбежать.[/color]
corvax-hidden-desc-MicroBombImplanter-syndicate = [color=#e31735]Внутри имплант микробомбы. Взорвётся в момент смерти, дав последний шанс отомстить убийце.[/color]
corvax-hidden-desc-MacroBombImplanter-syndicate = [color=#e31735]Внутри имплант макробомбы. Создаст большой взрыв с задержкой после смерти. Позволит уйти на тот свет красиво.[/color]
corvax-hidden-desc-DeathRattleImplanter-syndicate = [color=#e31735]Внутри имплант посмертного растворителя. Уничтожит тело и все улики при смерти.[/color]
corvax-hidden-desc-DeathAcidifierImplanter-syndicate = [color=#e31735]Внутри имплант предсмертного хрипа. Сообщит в радиоканал Синдиката, если носитель окажется в критическом состоянии или погибнет.[/color]
corvax-hidden-desc-Emag-syndicate = [color=#e31735]Универсальное хакерское устройство синдиката. Знаковый EMAG.[/color]
corvax-hidden-desc-Emag-research = [color=#D381C9]Интересная модификация стандартной ID карты, работающая, как электронная отмычка.[/color]
corvax-hidden-desc-Emag-engineering = [color=#EFB341]Эту ID карту взломали и модифицировали таким образом, что техника ломается, пытаясь считать доступы владельца.[/color]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,48 +9,48 @@ ent-BaseImplantOnlyImplanter = { ent-Implanter }
.desc = Одноразовый шприц, специально предназначенный для введения подкожных имплантов.
ent-BaseImplantOnlyImplanterSyndi = имплантер синдиката
.desc = Компактный одноразовый шприц, специально предназначенный для введения подкожных имплантов.
ent-SadTromboneImplanter = { ent-BaseImplantOnlyImplanter }
ent-SadTromboneImplanter = { ent-Implanter }
.suffix = грустный тромбон
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-LightImplanter = { ent-BaseImplantOnlyImplanter }
ent-LightImplanter = { ent-Implanter }
.suffix = свет
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-BikeHornImplanter = { ent-BaseImplantOnlyImplanter }
ent-BikeHornImplanter = { ent-Implanter }
.suffix = клаксон
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-TrackingImplanter = { ent-BaseImplantOnlyImplanter }
ent-TrackingImplanter = { ent-Implanter }
.suffix = трекер
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-StorageImplanter = { ent-BaseImplantOnlyImplanterSyndi }
ent-StorageImplanter = { ent-Implanter }
.suffix = хранилище
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-FreedomImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-FreedomImplanter = { ent-Implanter }
.suffix = свобода
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-UplinkImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-UplinkImplanter = { ent-Implanter }
.suffix = аплинк
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-EmpImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-EmpImplanter = { ent-Implanter }
.suffix = ЭМИ
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-ScramImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-ScramImplanter = { ent-Implanter }
.suffix = побег
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-DnaScramblerImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-DnaScramblerImplanter = { ent-Implanter }
.suffix = миксер ДНК
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-MicroBombImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-MicroBombImplanter = { ent-Implanter }
.suffix = микробомба
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-MacroBombImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-MacroBombImplanter = { ent-Implanter }
.suffix = макробомба
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-DeathRattleImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-DeathRattleImplanter = { ent-Implanter }
.suffix = предсмертный хрип
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-DeathAcidifierImplanter = { ent-BaseImplantOnlyImplanterSyndi }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-DeathAcidifierImplanter = { ent-Implanter }
.suffix = посмертный растворитель
.desc = { ent-BaseImplantOnlyImplanterSyndi.desc }
ent-MindShieldImplanter = { ent-BaseImplantOnlyImplanter }
.desc = { ent-BaseImplantOnlyImplanter.desc }
ent-MindShieldImplanter = { ent-Implanter }
.suffix = щит разума
.desc = { ent-BaseImplantOnlyImplanter.desc }
Loading

0 comments on commit f31197e

Please sign in to comment.