[FEAT] Всякие прикольные разности и вкусности (#554)
* feat: трикодер * feat: принтер документов * fix: текст фелинидов * feat: возможность менять голос эмоутов * feat: мяукаем при аспекте мяуканья * feat: ПНВ * fix: забирай свои метадаты * fix: oopsies * fix: линтер снова * fix: пожалуйста линтер отстань # Conflicts: # Content.Server/Speech/Components/VocalComponent.cs # Content.Server/White/AspectsSystem/Aspects/CatEarsAspect.cs # Resources/Prototypes/Catalog/Fills/Items/belt.yml # Resources/Prototypes/Reagents/Materials/materials.yml # Resources/Prototypes/White/Catalog/seniors_fills.yml # Resources/Prototypes/White/Catalog/uplink.yml # Resources/Prototypes/White/Recipes/lathe_recipes.yml # Resources/Prototypes/White/Research/experimental.yml
73
Content.Client/White/Items/Tricorder/TricorderSystem.cs
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
using Content.Client.Items;
|
||||||
|
using Content.Client.Message;
|
||||||
|
using Content.Client.Stylesheets;
|
||||||
|
using Content.Shared.White.Item.Tricorder;
|
||||||
|
using Robust.Client.UserInterface;
|
||||||
|
using Robust.Client.UserInterface.Controls;
|
||||||
|
using Robust.Shared.GameStates;
|
||||||
|
using Robust.Shared.Timing;
|
||||||
|
|
||||||
|
namespace Content.Client.White.Items.Tricorder;
|
||||||
|
|
||||||
|
/// <inheritdoc/>
|
||||||
|
public sealed class TricorderSystem : SharedTricorderSystem
|
||||||
|
{
|
||||||
|
/// <inheritdoc/>
|
||||||
|
public override void Initialize()
|
||||||
|
{
|
||||||
|
base.Initialize();
|
||||||
|
|
||||||
|
SubscribeLocalEvent<TricorderComponent, ItemStatusCollectMessage>(OnCollectItemStatus);
|
||||||
|
SubscribeLocalEvent<TricorderComponent, ComponentHandleState>(HandleTricorderState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void OnCollectItemStatus(EntityUid uid, TricorderComponent component, ItemStatusCollectMessage args)
|
||||||
|
{
|
||||||
|
if (component.CurrentMode != TricorderMode.Multitool)
|
||||||
|
{
|
||||||
|
args.Controls.Clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
args.Controls.Add(new StatusControl(component));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void HandleTricorderState(EntityUid uid, TricorderComponent component, ref ComponentHandleState args)
|
||||||
|
{
|
||||||
|
if (args.Current is not TricorderComponentState state)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
component.CurrentMode = state.CurrentMode;
|
||||||
|
}
|
||||||
|
|
||||||
|
private sealed class StatusControl : Control
|
||||||
|
{
|
||||||
|
private readonly RichTextLabel _label;
|
||||||
|
private readonly TricorderComponent _tricorder;
|
||||||
|
|
||||||
|
private TricorderMode? _linkModeActive;
|
||||||
|
|
||||||
|
public StatusControl(TricorderComponent tricorder)
|
||||||
|
{
|
||||||
|
_tricorder = tricorder;
|
||||||
|
_label = new RichTextLabel { StyleClasses = { StyleNano.StyleClassItemStatus } };
|
||||||
|
AddChild(_label);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void FrameUpdate(FrameEventArgs args)
|
||||||
|
{
|
||||||
|
base.FrameUpdate(args);
|
||||||
|
|
||||||
|
if (_linkModeActive != null && _linkModeActive == _tricorder.CurrentMode)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_linkModeActive = _tricorder.CurrentMode;
|
||||||
|
|
||||||
|
var modeLocString = GetNameByMode(_tricorder.CurrentMode);
|
||||||
|
|
||||||
|
_label.SetMarkup(Robust.Shared.Localization.Loc.GetString("tricorder-item-status-label",
|
||||||
|
("mode", Robust.Shared.Localization.Loc.GetString(modeLocString))));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
using Content.Server.Speech.EntitySystems;
|
using Content.Server.Speech.EntitySystems;
|
||||||
|
using Content.Server.White.AspectsSystem.Aspects;
|
||||||
using Content.Shared.Chat.Prototypes;
|
using Content.Shared.Chat.Prototypes;
|
||||||
using Content.Shared.Humanoid;
|
using Content.Shared.Humanoid;
|
||||||
using Robust.Shared.Audio;
|
using Robust.Shared.Audio;
|
||||||
@@ -12,7 +13,7 @@ namespace Content.Server.Speech.Components;
|
|||||||
/// Component required for entities to be able to do vocal emotions.
|
/// Component required for entities to be able to do vocal emotions.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[RegisterComponent]
|
[RegisterComponent]
|
||||||
[Access(typeof(VocalSystem))]
|
[Access(typeof(VocalSystem), typeof(CatEarsAspect))]
|
||||||
public sealed partial class VocalComponent : Component
|
public sealed partial class VocalComponent : Component
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -41,6 +42,6 @@ public sealed partial class VocalComponent : Component
|
|||||||
/// Currently loaded emote sounds prototype, based on entity sex.
|
/// Currently loaded emote sounds prototype, based on entity sex.
|
||||||
/// Null if no valid prototype for entity sex was found.
|
/// Null if no valid prototype for entity sex was found.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[ViewVariables]
|
[ViewVariables(VVAccess.ReadWrite)]
|
||||||
public EmoteSoundsPrototype? EmoteSounds = null;
|
public EmoteSoundsPrototype? EmoteSounds = null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,14 @@
|
|||||||
using Content.Server.Chat.Systems;
|
using Content.Server.Chat.Systems;
|
||||||
using Content.Server.GameTicking;
|
using Content.Server.GameTicking;
|
||||||
using Content.Server.GameTicking.Rules.Components;
|
using Content.Server.GameTicking.Rules.Components;
|
||||||
|
using Content.Server.Speech.Components;
|
||||||
using Content.Server.White.AspectsSystem.Aspects.Components;
|
using Content.Server.White.AspectsSystem.Aspects.Components;
|
||||||
using Content.Server.White.AspectsSystem.Base;
|
using Content.Server.White.AspectsSystem.Base;
|
||||||
using Content.Shared.GameTicking;
|
using Content.Shared.GameTicking;
|
||||||
using Content.Shared.Humanoid;
|
using Content.Shared.Humanoid;
|
||||||
using Content.Shared.Humanoid.Markings;
|
using Content.Shared.Humanoid.Markings;
|
||||||
using Content.Shared.Speech;
|
using Content.Shared.Speech;
|
||||||
|
using Robust.Shared.Enums;
|
||||||
using Robust.Shared.Prototypes;
|
using Robust.Shared.Prototypes;
|
||||||
using Robust.Shared.Random;
|
using Robust.Shared.Random;
|
||||||
|
|
||||||
@@ -21,6 +23,9 @@ public sealed class CatEarsAspect : AspectSystem<CatEarsAspectComponent>
|
|||||||
private MarkingPrototype _ears = default!;
|
private MarkingPrototype _ears = default!;
|
||||||
private MarkingPrototype _tail = default!;
|
private MarkingPrototype _tail = default!;
|
||||||
|
|
||||||
|
private const string FemaleFelinidVoices = "FemaleFelinid";
|
||||||
|
private const string MaleFelinidVoices = "MaleFelinid";
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
base.Initialize();
|
base.Initialize();
|
||||||
@@ -48,7 +53,10 @@ public sealed class CatEarsAspect : AspectSystem<CatEarsAspectComponent>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void Started(EntityUid uid, CatEarsAspectComponent component, GameRuleComponent gameRule,
|
protected override void Started(
|
||||||
|
EntityUid uid,
|
||||||
|
CatEarsAspectComponent component,
|
||||||
|
GameRuleComponent gameRule,
|
||||||
GameRuleStartedEvent args)
|
GameRuleStartedEvent args)
|
||||||
{
|
{
|
||||||
base.Started(uid, component, gameRule, args);
|
base.Started(uid, component, gameRule, args);
|
||||||
@@ -93,12 +101,14 @@ public sealed class CatEarsAspect : AspectSystem<CatEarsAspectComponent>
|
|||||||
AddTail(appearance);
|
AddTail(appearance);
|
||||||
|
|
||||||
Dirty(uid, appearance);
|
Dirty(uid, appearance);
|
||||||
|
ChangeEmotesVoice(uid, appearance);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
AddEars(appearance);
|
AddEars(appearance);
|
||||||
AddTail(appearance);
|
AddTail(appearance);
|
||||||
Dirty(uid, appearance);
|
Dirty(uid, appearance);
|
||||||
|
ChangeEmotesVoice(uid, appearance);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -126,4 +136,22 @@ public sealed class CatEarsAspect : AspectSystem<CatEarsAspectComponent>
|
|||||||
new Marking(_ears.ID, GetColors(appearance, _ears)) { Forced = true });
|
new Marking(_ears.ID, GetColors(appearance, _ears)) { Forced = true });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ChangeEmotesVoice(EntityUid user, HumanoidAppearanceComponent appearanceComponent)
|
||||||
|
{
|
||||||
|
if (!TryComp(user, out VocalComponent? vocals))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (appearanceComponent.Gender)
|
||||||
|
{
|
||||||
|
case Gender.Female:
|
||||||
|
_protoMan.TryIndex(FemaleFelinidVoices, out vocals.EmoteSounds);
|
||||||
|
break;
|
||||||
|
case Gender.Male:
|
||||||
|
_protoMan.TryIndex(MaleFelinidVoices, out vocals.EmoteSounds);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
161
Content.Server/White/Items/Tricorder/TricorderSystem.cs
Normal file
@@ -0,0 +1,161 @@
|
|||||||
|
using Content.Server.Medical.Components;
|
||||||
|
using Content.Server.UserInterface;
|
||||||
|
using Content.Shared.Atmos.Components;
|
||||||
|
using Content.Shared.Database;
|
||||||
|
using Content.Shared.DeviceNetwork;
|
||||||
|
using Content.Shared.DeviceNetwork.Components;
|
||||||
|
using Content.Shared.Examine;
|
||||||
|
using Content.Shared.MedicalScanner;
|
||||||
|
using Content.Shared.Verbs;
|
||||||
|
using Content.Shared.White.Item.Tricorder;
|
||||||
|
using Robust.Server.GameObjects;
|
||||||
|
using Robust.Shared.Audio;
|
||||||
|
using Robust.Shared.GameStates;
|
||||||
|
using Robust.Shared.Utility;
|
||||||
|
|
||||||
|
namespace Content.Server.White.Items.Tricorder;
|
||||||
|
|
||||||
|
public sealed class TricorderSystem : SharedTricorderSystem
|
||||||
|
{
|
||||||
|
[Dependency] private readonly IComponentFactory _componentFactory = default!;
|
||||||
|
[Dependency] private readonly AudioSystem _audioSystem = default!;
|
||||||
|
[Dependency] private readonly IEntityManager _entityManager = default!;
|
||||||
|
|
||||||
|
public override void Initialize()
|
||||||
|
{
|
||||||
|
base.Initialize();
|
||||||
|
|
||||||
|
SubscribeLocalEvent<TricorderComponent, ExaminedEvent>(OnExamined);
|
||||||
|
|
||||||
|
SubscribeLocalEvent<TricorderComponent, GetVerbsEvent<AlternativeVerb>>(OnAddSwitchModeVerbs);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnExamined(EntityUid uid, TricorderComponent component, ExaminedEvent args)
|
||||||
|
{
|
||||||
|
var mode = GetNameByMode(component.CurrentMode);
|
||||||
|
args.PushMarkup(Loc.GetString("network-configurator-examine-current-mode", ("mode", Loc.GetString(mode))));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnAddSwitchModeVerbs(EntityUid uid, TricorderComponent component, GetVerbsEvent<AlternativeVerb> args)
|
||||||
|
{
|
||||||
|
if (!args.CanAccess || !args.CanInteract || !args.Using.HasValue ||
|
||||||
|
!HasComp<TricorderComponent>(args.Target))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var icon = new SpriteSpecifier.Texture(new ResPath("/Textures/Interface/VerbIcons/settings.svg.192dpi.png"));
|
||||||
|
|
||||||
|
AlternativeVerb switchToMultitoolVerb = new()
|
||||||
|
{
|
||||||
|
Text = "Переключить на мультитул",
|
||||||
|
Icon = icon,
|
||||||
|
Act = () => SwitchToMode(args.User, uid, component, TricorderMode.Multitool),
|
||||||
|
Impact = LogImpact.Low
|
||||||
|
};
|
||||||
|
|
||||||
|
AlternativeVerb switchToGasAnalyzerlVerb = new()
|
||||||
|
{
|
||||||
|
Text = "Переключить на газоанализатор",
|
||||||
|
Icon = icon,
|
||||||
|
Act = () => SwitchToMode(args.User, uid, component, TricorderMode.GasAnalyzer),
|
||||||
|
Impact = LogImpact.Low
|
||||||
|
};
|
||||||
|
|
||||||
|
AlternativeVerb switchToHealthAnalyzerVerb = new()
|
||||||
|
{
|
||||||
|
Text = "Переключить на анализатор здоровья",
|
||||||
|
Icon = icon,
|
||||||
|
Act = () => SwitchToMode(args.User, uid, component, TricorderMode.HealthAnalyzer),
|
||||||
|
Impact = LogImpact.Low
|
||||||
|
};
|
||||||
|
|
||||||
|
args.Verbs.Add(switchToHealthAnalyzerVerb);
|
||||||
|
args.Verbs.Add(switchToGasAnalyzerlVerb);
|
||||||
|
args.Verbs.Add(switchToMultitoolVerb);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SwitchToMode(EntityUid? user, EntityUid tricoderUid, TricorderComponent tricorder, TricorderMode mode)
|
||||||
|
{
|
||||||
|
if (tricorder.CurrentMode == mode)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
tricorder.CurrentMode = mode;
|
||||||
|
|
||||||
|
switch (mode)
|
||||||
|
{
|
||||||
|
case TricorderMode.Multitool:
|
||||||
|
SetToMultitool(tricoderUid);
|
||||||
|
break;
|
||||||
|
case TricorderMode.GasAnalyzer:
|
||||||
|
SetToGasAnalyzer(tricoderUid);
|
||||||
|
break;
|
||||||
|
case TricorderMode.HealthAnalyzer:
|
||||||
|
SetToHealthAnalyzer(tricoderUid);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!user.HasValue)
|
||||||
|
return;
|
||||||
|
|
||||||
|
UpdateModeAppearance(user.Value, tricorder);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UpdateModeAppearance(
|
||||||
|
EntityUid userUid,
|
||||||
|
TricorderComponent tricorder)
|
||||||
|
{
|
||||||
|
Dirty(tricorder);
|
||||||
|
_audioSystem.PlayPvs(tricorder.SoundSwitchMode, userUid, AudioParams.Default.WithVolume(1.5f));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetToMultitool(EntityUid uid)
|
||||||
|
{
|
||||||
|
var comp = AddComp<NetworkConfiguratorComponent>(uid);
|
||||||
|
RemComp<GasAnalyzerComponent>(uid);
|
||||||
|
RemComp<HealthAnalyzerComponent>(uid);
|
||||||
|
Dirty(comp);
|
||||||
|
|
||||||
|
if (!TryComp(uid, out ActivatableUIComponent? ui))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ui.Key = NetworkConfiguratorUiKey.Configure;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetToGasAnalyzer(EntityUid uid)
|
||||||
|
{
|
||||||
|
RemComp<NetworkConfiguratorComponent>(uid);
|
||||||
|
AddComp<GasAnalyzerComponent>(uid);
|
||||||
|
RemComp<HealthAnalyzerComponent>(uid);
|
||||||
|
|
||||||
|
if (!TryComp(uid, out ActivatableUIComponent? ui))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ui.Key = GasAnalyzerComponent.GasAnalyzerUiKey.Key;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetToHealthAnalyzer(EntityUid uid)
|
||||||
|
{
|
||||||
|
RemComp<NetworkConfiguratorComponent>(uid);
|
||||||
|
RemComp<GasAnalyzerComponent>(uid);
|
||||||
|
|
||||||
|
var healthAnalyzerComponent = _componentFactory.GetComponent<HealthAnalyzerComponent>();
|
||||||
|
healthAnalyzerComponent.ScanningEndSound = new SoundPathSpecifier("/Audio/Items/Medical/healthscanner.ogg");
|
||||||
|
|
||||||
|
healthAnalyzerComponent.Owner = uid;
|
||||||
|
_entityManager.AddComponent(uid, healthAnalyzerComponent);
|
||||||
|
|
||||||
|
if (!TryComp(uid, out ActivatableUIComponent? ui))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ui.Key = HealthAnalyzerUiKey.Key;
|
||||||
|
}
|
||||||
|
}
|
||||||
30
Content.Shared/White/Item/Tricorder/SharedTricorderSystem.cs
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
using Robust.Shared.GameStates;
|
||||||
|
|
||||||
|
namespace Content.Shared.White.Item.Tricorder;
|
||||||
|
|
||||||
|
public abstract class SharedTricorderSystem : EntitySystem
|
||||||
|
{
|
||||||
|
/// <inheritdoc/>
|
||||||
|
public override void Initialize()
|
||||||
|
{
|
||||||
|
base.Initialize();
|
||||||
|
|
||||||
|
SubscribeLocalEvent<TricorderComponent, ComponentGetState>(GetTricorderState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void GetTricorderState(EntityUid uid, TricorderComponent component, ref ComponentGetState args)
|
||||||
|
{
|
||||||
|
args.State = new TricorderComponentState(component.CurrentMode);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetNameByMode(TricorderMode mode)
|
||||||
|
{
|
||||||
|
return mode switch
|
||||||
|
{
|
||||||
|
TricorderMode.Multitool => "[color=yellow]мультитул[/color]",
|
||||||
|
TricorderMode.GasAnalyzer => "[color=cyan]газоанализатор[/color]",
|
||||||
|
TricorderMode.HealthAnalyzer => "[color=green]анализатор здоровья[/color]",
|
||||||
|
_ => "[color=yellow]мультитул[/color]"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
38
Content.Shared/White/Item/Tricorder/TricorderComponent.cs
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
using Robust.Shared.Audio;
|
||||||
|
using Robust.Shared.GameStates;
|
||||||
|
using Robust.Shared.Serialization;
|
||||||
|
|
||||||
|
namespace Content.Shared.White.Item.Tricorder;
|
||||||
|
|
||||||
|
[RegisterComponent]
|
||||||
|
[NetworkedComponent]
|
||||||
|
[Access(typeof(SharedTricorderSystem))]
|
||||||
|
public sealed class TricorderComponent : Component
|
||||||
|
{
|
||||||
|
[DataField("currentState"), ViewVariables(VVAccess.ReadWrite)]
|
||||||
|
public TricorderMode CurrentMode = TricorderMode.Multitool;
|
||||||
|
|
||||||
|
[DataField("soundSwitchMode")]
|
||||||
|
public SoundSpecifier SoundSwitchMode = new SoundPathSpecifier("/Audio/Machines/quickbeep.ogg");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Contains network state for TricorderComponent.
|
||||||
|
/// </summary>
|
||||||
|
[Serializable, NetSerializable]
|
||||||
|
public sealed class TricorderComponentState : ComponentState
|
||||||
|
{
|
||||||
|
public TricorderMode CurrentMode;
|
||||||
|
|
||||||
|
public TricorderComponentState(TricorderMode currentMode)
|
||||||
|
{
|
||||||
|
CurrentMode = currentMode;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum TricorderMode
|
||||||
|
{
|
||||||
|
Multitool,
|
||||||
|
GasAnalyzer,
|
||||||
|
HealthAnalyzer
|
||||||
|
}
|
||||||
@@ -8,6 +8,7 @@ materials-steel = сталь
|
|||||||
materials-gold = золото
|
materials-gold = золото
|
||||||
materials-silver = серебро
|
materials-silver = серебро
|
||||||
materials-plasteel = пласталь
|
materials-plasteel = пласталь
|
||||||
|
materials-paper = бумага
|
||||||
# Other
|
# Other
|
||||||
materials-biomass = биомасса
|
materials-biomass = биомасса
|
||||||
materials-cloth = ткань
|
materials-cloth = ткань
|
||||||
|
|||||||
1
Resources/Locale/ru-RU/white/items/tricorder.ftl
Normal file
@@ -0,0 +1 @@
|
|||||||
|
tricorder-item-status-label = Текущий режим: { $mode }
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
hairball-action = Откашлять комок шерсти.
|
hairball-action = Откашлять комок шерсти.
|
||||||
hairball-action-desc = Люди это не любят.
|
hairball-action-desc = Люди это не любят.
|
||||||
hairball-mask = Сначала сними { $mask }.
|
hairball-mask = Сначала сними { $mask }.
|
||||||
hairball-cough = { CAPITALIZE(THE($name)) } пытается выкашлять комок шесрти!
|
hairball-cough = { CAPITALIZE(THE($name)) } пытается выкашлять комок шерсти!
|
||||||
action-name-eat-mouse = Съесть мышь.
|
action-name-eat-mouse = Съесть мышь.
|
||||||
action-description-eat-mouse = Съешьте мышь в своей руке, получая питательные вещества и заряд комка шерсти.
|
action-description-eat-mouse = Съешьте мышь в своей руке, получая питательные вещества и заряд комка шерсти.
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,610 @@
|
|||||||
|
paper-text-request = Запрос Центральному Командованию
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя капитана", в должности Капитана, запрашиваю цель для станции "номер станции"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Для выполнения задачи Центрального Командования будут задействованы все доступные ресурсы станции с минимальным ущербом самой станции, если не было приказано иначе.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-report = Заявление в штаб Центрального Командования
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя" "должность" станции "номер станции", отправляю рапорт о ходе выполнения цели станции и ее продвижении.
|
||||||
|
Цель: "цель смены".
|
||||||
|
Ситуация: "как проходит цель".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Рапорт был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-completed = Заявление в штаб Центрального Командования
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, Капитан "имя заявителя" станции "номер станции", с гордостью сообщаю об успешном выполнении экипажем назначенной цели текущей смены.
|
||||||
|
|
||||||
|
Цель: "цель смены".
|
||||||
|
|
||||||
|
Оценка личного состава и состояния станции: "кратко опишите ситуацию на станции".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Запрашиваю начало процедуры смены экипажа и ожидаю дальнейших указаний.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-failed = Заявление в штаб Центрального Командования
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, Капитан "имя заявителя" станции "номер станции", с прискорбием сообщаю о невозможности выполнения экипажем назначенной цели текущей смены.
|
||||||
|
|
||||||
|
Цель: "цель смены".
|
||||||
|
|
||||||
|
Причина: "почему ее нельзя выполнить".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Вследствие провала задания, запрашиваю начало "процедуры смены экипажа / эвакуации" и ожидаю дальнейших указаний.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-request-CentComm = Рапорт Офицерскому составу Центрального Командования
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Номер станции: "укажите номер станции из ПДА"
|
||||||
|
Я, "имя заявителя", в должности "должность заявителя", представляю доклад о "происшествии/несоответствии" Офицерскому составу Центрального Командования.
|
||||||
|
|
||||||
|
Причина:"описание происшествия/несоответствия".
|
||||||
|
|
||||||
|
Данная ситуация требует вмешательства "сотрудника ЦК", так как не может быть решена силами экипажа и командования станции.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Рапорт был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность и, в случае сокрытия информации для собственной выгоды, готов понести высшую меру наказания.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-request-ERT = Запрос в отдел Аварийно-Восстановительных Формирований NanoTrasen
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "должность заявителя", отправляю запрос в отдел Аварийно-Восстановительного Формирования для вызова на станцию "номер станции из ПДА" Отряда Быстрого Реагирования.
|
||||||
|
|
||||||
|
Причина: "описание происшествия".
|
||||||
|
|
||||||
|
Данная ситуация требует вмешательства "название типа ОБР" ОБР, так как не может быть решена силами экипажа и командования станции и ставит под угрозу существование самой станции.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Запрос был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность и, в случае сокрытия информации для собственной выгоды, готов понести высшую меру наказания.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-request-RXBZZ = Запрос в отдел Аварийно-Восстановительных Формирований NanoTrasen
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "должность заявителя", отправляю запрос в отдел Аварийно-Восстановительного Формирования для вызова на станцию "номер станции из ПДА" Отряда Быстрого Реагирования.
|
||||||
|
|
||||||
|
Причина: "описание происшествия".
|
||||||
|
|
||||||
|
Данная ситуация требует вмешательства "название типа ОБР" ОБР, так как не может быть решена силами экипажа и командования станции и ставит под угрозу существование самой станции.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Запрос был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность и, в случае сокрытия информации для собственной выгоды, готов понести высшую меру наказания.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-request-high-order-compaint = Заявление в бюро доносов NanoTrasen
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Номер станции: "укажите номер станции из ПДА"
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
|
||||||
|
Субъект правонарушения: "имя нарушителя"
|
||||||
|
Должность: "должность нарушителя"
|
||||||
|
|
||||||
|
Нарушенные пункты КЗ: "нарушенные статьи/отсутствует"
|
||||||
|
Нарушенные пункты СОП: "нарушенные пункты/отсутствует"
|
||||||
|
Нарушенные пункты ОПЧК: "нарушенные пункты/отсутствует"
|
||||||
|
|
||||||
|
Свидетели нарушений: "имена свидетелей/отсутствуют"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Описание: "подробное, но лаконичное описание правонарушения".
|
||||||
|
|
||||||
|
Жалоба была составлена мною в пребывании адекватного состояния. Все, расписанное в данной жалобе, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Запрос: "ожидаемый заявителем исход/принять соответствующие меры по пресечению будущих нарушений".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-text-request-magistrat = Запрос в Верховный суд Nanotrasen
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "должность заявителя", отправляю запрос в Верховный суд для вызова на станцию "номер станции из ПДА" Магистрата.
|
||||||
|
|
||||||
|
Заявление об инициации судебного процесса: прилагается.
|
||||||
|
|
||||||
|
Данная ситуация требует вмешательства сотрудника Верховного суда, так как не может быть решена компетенцией экипажа и командования станции и ставит под угрозу справедливость вынесенного приговора.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Запрос был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность и, в случае сокрытия информации для собственной выгоды, готов понести высшую меру наказания.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-comm-text-crew-mem-domotion = Постановление в архив командования станции
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Главе персонала станции "номер станции из ПДА".
|
||||||
|
|
||||||
|
Я, "имя заявителя", в должности главы отдела "ваш отдел" приказываю понизить сотрудника "должность сотрудника" "имя сотрудника" до должности "должность после понижения".
|
||||||
|
|
||||||
|
Причина: "кратко опишите причину понижения".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Обязуюсь восполнить отсутствие персонала и поддерживать эффективность отдела на высшем уровне.
|
||||||
|
|
||||||
|
Приказ ввести в исполнение немедленно во избежание необратимого ущерба.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-comm-text-crew-mem-dismissal = Постановление в архив командования станции
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Главе персонала станции "номер станции из ПДА".
|
||||||
|
|
||||||
|
Я, "имя заявителя", в должности главы отдела "ваш отдел" приказываю немедленно уволить сотрудника "имя сотрудника" с должности "должность сотрудника".
|
||||||
|
|
||||||
|
Причина: "кратко опишите причину увольнения".
|
||||||
|
|
||||||
|
Сотрудник обязан(-а) немедленно покинуть рабочее место и сдать все выданное снаряжение и имущество отдела. В случае нарушения данного приказа, будут приняты дополнительные меры в соответствии с настоящим законодательством.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Обязуюсь восполнить отсутствие персонала и поддерживать эффективность отдела на высшем уровне.
|
||||||
|
|
||||||
|
Приказ ввести в исполнение немедленно во избежание необратимого ущерба.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-comm-text-request-council = Запрос командному составу станции
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "ваша должность" запрашиваю провести голосование среди командного состава станции "номер станции".
|
||||||
|
|
||||||
|
Причина: "причина голосования".
|
||||||
|
|
||||||
|
Цель: "ожидаемый итог голосования".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-comm-text-council-end = Отчет по голосованию
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Голосованием глав станции "номер станции", по вопросу "причина голосования", было принято решение "Поддержать / Отклонить" инициативу.
|
||||||
|
|
||||||
|
Количество голосов "За": "кол-во"
|
||||||
|
|
||||||
|
Количество голосов "Против": "кол-во"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-order = Ордер на обыск
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Выдан: "имя заявителя" "Юрист/Капитан".
|
||||||
|
Подозреваемый: "имя подозреваемого" "должность".
|
||||||
|
Характер обыска: "обыск отдела/обыск сотрудника".
|
||||||
|
|
||||||
|
Причина обыска: "причина подозрения"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-complaint = Жалоба
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
|
||||||
|
Субъект правонарушения: "имя нарушителя"
|
||||||
|
Должность: "должность нарушителя"
|
||||||
|
|
||||||
|
Свидетели нарушений: "имена свидетелей/отсутствуют"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Описание: "нарушение".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Жалоба была составлена мною в пребывании адекватного состояния. Все, расписанное в данной жалобе, готов подтвердить повторно, при необходимости.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-lic = Разрешение на ношение оружия
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
Разрешение на ношение: "название оружия"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Причина: "причина на запрос оружия".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Обязуюсь, что орудоваемое мною оружие будет использовано в целях описаных выше или в целях вынужденной самообороны.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-request-weapon = Временный запрос оружия
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
Запрос оружия: "название оружия"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Причина: "причина на запрос оружия".
|
||||||
|
На период: "через сколько обязан вернуть оружие"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Обязуюсь использовать исключительно в целях указанных выше или при вынужденной самообороне и сдать оружие в арсенал в указанное время или по первому требованию службы безопасности.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-request-execution = Запрос на казнь сотрудника
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
|
||||||
|
Нарушитель: "имя и фамилия"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Причина: "что нарушил".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность и, в случае сокрытия информации для собственной выгоды, готов понести высшую меру наказания.
|
||||||
|
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать Капитана или Центрального Командования.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-request-cargo-weapon = Разрешение на заказ оружие отделом Снабжения
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
|
||||||
|
Причина: "по какой причине нужно оружие".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Отправляя этот запрос, возлагаю на себя полную ответственность за заказанное оружие.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sec-text-request-guard = Заявление под программу защиты свидетелей
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Причина: "что угрожает вашей жизни".
|
||||||
|
Запрос: "убежища в бриге / предоставить вам защиту"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Служба безопасности берет ответственность за жизнь данного сотрудника и обязана предоставить ему защиту.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-eng-text-request-build = Заявление о проведении строительных работ
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Строительные работы будут проведены в отделе "название отдела".
|
||||||
|
|
||||||
|
Объект: "что будет сделано".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Исполнитель несёт полную ответственность за качество выполненных работ.
|
||||||
|
|
||||||
|
Во время строительства обязаны быть соблюдены все нормы безопасности.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-eng-text-request-material = Запрос материалов
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Список: "что вам нужно".
|
||||||
|
|
||||||
|
Причина: "зачем вам материалы".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-eng-text-report-elect = Отчет об электроснабжении
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Производитель электроэнергии: "ДАМ / Сингулярность / альтернативный источник"
|
||||||
|
Коэффициент потраченной / производимой электроэнергии: "указать коэффициент, к примеру: 2/9"
|
||||||
|
Стабильность электропитания: "указать уровень стабильности"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я - подотчетное лицо, несу полную ответственность своих действий и не пытаюсь скрыть какую-либо информацию.
|
||||||
|
В случае сокрытия информации подотчетное лицо будет подвержено наказанию высшей степени.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-eng-text-report-atmos = Отчет об атмосфере
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Производимые газы:"указать производимые газы"
|
||||||
|
Коэффициент газов в атмосфере станции:"указать коэффициент газов, к примеру кислород - 22%, азот - 77%, углерод - 1%"
|
||||||
|
Дополнительно производимые газы:"указать дополнительно производимые газы, к примеру - тритий, фрезон и т.п."
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я - подотчетное лицо, несу полную ответственность своих действий и не пытаюсь скрыть какую-либо информацию.
|
||||||
|
В случае сокрытия информации подотчетное лицо будет подвержено наказанию высшей степени.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-med-text-request-perm-narc = Лекарственный рецепт
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "психолога/СМО", выписываю для лечения пациента "имя пациента" следующие препараты: "названия препаратов".
|
||||||
|
|
||||||
|
Причина: "заболевание".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Этот документ подтверждает право пациента на хранение и употребление вышеперечисленных препаратов.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-med-text-request-execution = Запрос на проведение эвтаназии
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "должность" в связи "указать причину", прошу провести для себя процедуру эвтаназии.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Претензий к медицинскому отделу, при соблюдении ими протоколов, не имею.
|
||||||
|
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать Юриста.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-med-text-waiver-claims = Отказ от претензий
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "должность" даю разрешение провести на мне ряд научных исследований во благо науки.
|
||||||
|
|
||||||
|
Эксперимент: "что на вас будут проверять".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Претензий к "медицинскому/научному" отделу, при соблюдении ими протоколов, не имею.
|
||||||
|
|
||||||
|
Я полностью осведомлен(а) и информирован(а) об эксперименте и возможных угрозах.
|
||||||
|
|
||||||
|
Настоящая расписка составлена и подписана добровольно, без какого-либо давления, обещаний или угроз.
|
||||||
|
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать Юриста.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-med-text-durka = Заключение о невменяемости
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "СМО/Психолога" признаю сотрудника "имя пациента" невменяемым. В связи с тем, что психические расстройства несут опасность как для самого пациента, так и для остального экипажа, пациент должен быть помещен в перманентную тюрьму.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Служба безопасности обязана соблюдать все права в отношении пациента, защищать и проводить его для эвакуации до Центрального Командования.
|
||||||
|
|
||||||
|
Подписывая данный документ, возлагаю на себя полную ответственность и, в случае неправильного диагноза, понесу высшую меру наказания.
|
||||||
|
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать ГСБ или Капитана.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sci-text-reasonable = Признание разумности существа
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "Ученого/Научного руководителя", подтверждаю разумность существа.
|
||||||
|
|
||||||
|
Существо: "название"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
В процессе проведения экспериментов было подтверждено, что данное существо обладает характеристиками, необходимыми для признания его разумным, такими как: способность к мышлению, обучаемость, понимание моральных норм и способность осознавать последствия своих действий.
|
||||||
|
|
||||||
|
Существо имеет потенциал для работы на корпорацию NanoTrasen, в связи с чем должно пройти процедуру найма.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
После того, как глава персонала сделает ПДА данному существу, оно официально войдёт под юрисдикцию ОПЧК на равных основах с остальными членами корпорации.
|
||||||
|
|
||||||
|
Заявитель несет ответственность за правильное признание существа разумным.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sci-text-request-law = Постановление о изменении законов боргов
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Данный документ информирует о изменении законов "всех/название борга" борга/ов.
|
||||||
|
|
||||||
|
Вносимые изменения: "перечень внесённых изменений".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печати и подписи двух или более глав.
|
||||||
|
|
||||||
|
Подписи глав: "подписи через запятую"
|
||||||
|
|
||||||
|
Новые законы не нарушают ОПЧК и Космический Закон, направлены на принесение пользы корпорации NanoTrasen.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-sci-text-brain = Постановление о пересадке мозга
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Данный документ информирует о пересадке мозга человека в борга по причине невозможности реанимировать прошлого владельца.
|
||||||
|
|
||||||
|
Я, "имя и фамилия", в должности "должность" проведу операцию по пересадки мозга "должность" "имя и фамилия пациента" в тело борга.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать СМО.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-car-text-order = Заказ товара
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Заявитель: "имя заявителя"
|
||||||
|
Должность: "должность заявителя"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Товар: "кол-во - название товара"
|
||||||
|
|
||||||
|
Причина: "зачем вам это".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-up-IDcard = Повышение доступа
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя" "должность", прошу предоставить мне дополнительно следующие доступы: "название мест".
|
||||||
|
|
||||||
|
Причина: "причина повышения доступов"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Доступ будет использован исключительно в интересах станции и экипажа. Я обязуюсь не заимствовать вещи из других отделов без разрешения главы отдела, а также покину отдел в случае приказа главы.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-work = Ускоренный найм
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Главе персонала станции "номер станции из ПДА".
|
||||||
|
|
||||||
|
Я, "имя заявителя", желаю пройти процедуру ускоренного найма на космической станции NanoTrasen. Ознакомившись с условиями и положениями ускоренного трудоустройства.
|
||||||
|
|
||||||
|
Желаемая должность: "название должности"
|
||||||
|
Отдел: "название отдела"
|
||||||
|
|
||||||
|
"По желанию - опыт в профессии, причина трудоустройства"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Со стандартными рабочими процедурами, правилами и политикой NanoTrasen ознакомлен. Ответственность, возлагаемую на себя, осознаю.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-trash = Свидетельство о заключении брака
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности священника, заключаю брак между "имя и фамилия" и "имя и фамилия" с согласия обоих сторон.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
После заключения брака присвоены фамилии: Мужу "фамилия" Жене "фамилия"
|
||||||
|
Подпись жениха: "имя и фамилия"
|
||||||
|
Подпись невесты: "имя и фамилия"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-trash-end = Свидетельство о расторжении брака
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности священника, расторгаю брак между "имя и фамилия" и "имя и фамилия" с согласия обоих сторон.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
После расторжения брака присвоены фамилии: Мужу "фамилия" Жене "фамилия"
|
||||||
|
Подпись мужа: "имя и фамилия"
|
||||||
|
Подпись жены: "имя и фамилия"
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-court = Инициация судебного процесса
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя и фамилия", в должности "должность", настаиваю на немедленной инициации судебного процесса в отношении "имя обвиняемого" в должности "должность обвиняемого".
|
||||||
|
|
||||||
|
Безотлагательный судебный процесс необходим, поскольку: "почему приговор несправедливый со стороны охранной службы".
|
||||||
|
|
||||||
|
Дополнительная документация: "прилагается / отсутствует".
|
||||||
|
|
||||||
|
Свидетели: "список свидетелей / отсутствуют".
|
||||||
|
|
||||||
|
Исходя из данных, представленных выше, должен пройти публичный судейский процесс, подающий пример остальным сотрудникам станции.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Запрос был составлен мною в пребывании адекватного состояния. Все расписанное, готов подтвердить повторно, при необходимости.
|
||||||
|
|
||||||
|
Данный документ приобретает юридическую силу, если имеет печать Юриста.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-dismissal = Увольнение
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", прошу уволить меня с должности "ваша должность" по собственному желанию.
|
||||||
|
|
||||||
|
Причина: "кратко опишите причину увольнения".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Документ составлен в адекватном состоянии, со всеми последствиями ознакомлен.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-promotion = Повышение
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "ваша должность" прошу повысить меня до "желаемая должность" в отделе "название отдела".
|
||||||
|
|
||||||
|
Причина: "кратко опишите свои заслуги".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я убежден, что повышение позволит мне сделать значительный вклад в работу отдела и обязуюсь с особой старательностью выполнять свои обязанности. Со стандартными рабочими процедурами, правилами и политикой NanoTrasen ознакомлен. Ответственность, возлагаемую на себя, осознаю.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-ser-text-request-botan = Запрос растений
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Я, "имя заявителя", в должности "должность" запрашиваю растения в ботанике.
|
||||||
|
|
||||||
|
Растения: "название растения"
|
||||||
|
|
||||||
|
Причина: "причина".
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Данное растения будет использовано исключительно в выше описанных целях.
|
||||||
|
---------------------------------------------------------------------
|
||||||
|
Подпись: "подпись заявителя"
|
||||||
|
Дата: "день"."месяц".2562
|
||||||
|
Печать:
|
||||||
|
|
||||||
|
paper-syn-text-ha-ha = .
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣾⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣷⣦⣀⡄⠀⠀⣠⣤⣾⡿⢿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⣿⣷⣜⣋⣸⣿⣿⣷⣤⣾⣿⣷⣤⣴⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿⣿⠏⠉⠻⣿⣿⣿⣿⣿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⡿⠟⠉⠀⠀⠀⠨⠛⠿⠿⠿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⢰⣦⡀⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡆⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⢰⣶⣤⠀⠙⣿⣦⡀⠀⠀⠀⠀⠀⠀⠀⣠⡄⠀⣄⡀⠀⠀⠀⠀⠀⠀⠀⣠⣼⡟⠁⠀⢠⠄⠀⠀⠀
|
||||||
|
⠀⠀⠀⠈⢿⣯⡀⠀⠈⠛⢿⣷⣦⣤⣤⣤⣶⣿⣿⠃⠀⢻⣿⣶⣤⣤⣤⣤⣴⣿⠟⠉⠀⠀⢰⠃⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠘⠿⡀⠀⢀⠀⠀⠈⠙⠛⠛⠛⠋⠉⠀⠀⠀⠀⠈⠛⠛⠛⠛⠋⠁⠀⢀⣤⣴⣶⠃⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠳⢶⣏⡀⣠⣤⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⣀⣠⣴⣾⡿⠿⠛⠁⠀⠀⠀⠀⠀⠀
|
||||||
|
⠀⠀⠀⠀⠀⠀⠀⠈⠻⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠛⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||||
|
⣷⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠛⠿⠿⠿⠿⠿⠿⠿⠟⠛⠛⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣴
|
||||||
|
⣿⣿⣿⣿⣶⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣶⣿⣿⣿
|
||||||
|
⣿⣿⣿⣿⣿⣿⣿⣿⣶⣤⣀⠀⠀⢠⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⣶⡄⠀⠀⣀⣤⣶⣿⣿⣿⣿⣿⣿⣿
|
||||||
|
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⡘⢿⡿⣿⠛⠉⠉⠉⠉⠙⠻⡿⢿⡿⢁⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||||
|
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣴⣿⣦⠀⠀⠀⠀⢀⣼⣿⣦⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||||
|
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⠓⠀⠀⠀⠛⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||||
@@ -26,6 +26,7 @@
|
|||||||
- id: Welder
|
- id: Welder
|
||||||
- id: Multitool
|
- id: Multitool
|
||||||
|
|
||||||
|
# WD EDIT START
|
||||||
- type: entity
|
- type: entity
|
||||||
id: ClothingBeltChiefEngineerFilled
|
id: ClothingBeltChiefEngineerFilled
|
||||||
parent: ClothingBeltChiefEngineer
|
parent: ClothingBeltChiefEngineer
|
||||||
@@ -36,10 +37,11 @@
|
|||||||
- id: PowerDrill
|
- id: PowerDrill
|
||||||
- id: JawsOfLife
|
- id: JawsOfLife
|
||||||
- id: WelderExperimental
|
- id: WelderExperimental
|
||||||
- id: Multitool
|
- id: Tricorder
|
||||||
- id: HolofanProjector
|
- id: HolofanProjector
|
||||||
- id: GasAnalyzer
|
amount: 2
|
||||||
- id: trayScanner
|
- id: CableApcStack
|
||||||
|
# WD EDIT END
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
id: ClothingBeltSecurityFilled
|
id: ClothingBeltSecurityFilled
|
||||||
|
|||||||
@@ -84,3 +84,15 @@
|
|||||||
Telecrystal: 15
|
Telecrystal: 15
|
||||||
categories:
|
categories:
|
||||||
- UplinkImplants
|
- UplinkImplants
|
||||||
|
|
||||||
|
# Night Vision
|
||||||
|
- type: listing
|
||||||
|
id: UplinkNightGoggles
|
||||||
|
name: ПНВ [Хамелеон]
|
||||||
|
description: Теперь ты видишь во тьме!
|
||||||
|
productEntity: ClothingEyesNightVisionGogglesSyndie
|
||||||
|
icon: { sprite: White/Clothing/Head/nightvision.rsi, state: icon }
|
||||||
|
cost:
|
||||||
|
Telecrystal: 3
|
||||||
|
categories:
|
||||||
|
- UplinkArmor
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
# Night Vision Goggles
|
||||||
|
- type: entity
|
||||||
|
parent: ClothingEyesBase
|
||||||
|
id: ClothingEyesNightVisionGoggles
|
||||||
|
name: ПНВ
|
||||||
|
description: Теперь ты видишь во тьме!
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Clothing/Head/nightvision.rsi
|
||||||
|
- type: Clothing
|
||||||
|
sprite: White/Clothing/Head/nightvision.rsi
|
||||||
|
- type: ClothingGrantComponent
|
||||||
|
component:
|
||||||
|
- type: NightVision
|
||||||
|
|
||||||
|
# Night Vision Goggles (Chameleon)
|
||||||
|
- type: entity
|
||||||
|
parent: ClothingEyesNightVisionGoggles
|
||||||
|
id: ClothingEyesNightVisionGogglesSyndie
|
||||||
|
components:
|
||||||
|
- type: ChameleonClothing
|
||||||
|
slot: [ eyes ]
|
||||||
|
default: ClothingEyesGlassesSunglasses
|
||||||
|
- type: UserInterface
|
||||||
|
interfaces:
|
||||||
|
- key: enum.ChameleonUiKey.Key
|
||||||
|
type: ChameleonBoundUserInterface
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
- type: entity
|
||||||
|
parent: BaseItem
|
||||||
|
id: Tricorder
|
||||||
|
name: трикодер
|
||||||
|
description: Многофункциональное устройство, которое может выполнять огромный спектр задач.
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Items/Tools/tricorder.rsi
|
||||||
|
layers:
|
||||||
|
- state: icon
|
||||||
|
- state: on
|
||||||
|
map: [ "tricorder_power" ]
|
||||||
|
- type: Tricorder
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 300
|
||||||
|
- type: Tool
|
||||||
|
qualities:
|
||||||
|
- Pulsing
|
||||||
|
- type: ActivatableUI
|
||||||
|
key: enum.NetworkConfiguratorUiKey.List
|
||||||
|
inHandsOnly: true
|
||||||
|
- type: UserInterface
|
||||||
|
interfaces:
|
||||||
|
- key: enum.NetworkConfiguratorUiKey.List
|
||||||
|
type: NetworkConfiguratorBoundUserInterface
|
||||||
|
- key: enum.NetworkConfiguratorUiKey.Configure
|
||||||
|
type: NetworkConfiguratorBoundUserInterface
|
||||||
|
- key: enum.NetworkConfiguratorUiKey.Link
|
||||||
|
type: NetworkConfiguratorBoundUserInterface
|
||||||
|
- key: enum.GasAnalyzerUiKey.Key
|
||||||
|
type: GasAnalyzerBoundUserInterface
|
||||||
|
- key: enum.HealthAnalyzerUiKey.Key
|
||||||
|
type: HealthAnalyzerBoundUserInterface
|
||||||
|
- type: NetworkConfigurator
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- DroneUsable
|
||||||
|
- Multitool
|
||||||
|
- DiscreteHealthAnalyzer
|
||||||
|
- type: Clothing
|
||||||
|
sprite: Objects/Tools/multitool.rsi
|
||||||
|
quickEquip: false
|
||||||
|
slots:
|
||||||
|
- Belt
|
||||||
|
- type: EmitSoundOnPickup
|
||||||
|
sound:
|
||||||
|
path: /Audio/White/Items/handling/multitool_pickup.ogg
|
||||||
|
- type: EmitSoundOnDrop
|
||||||
|
sound:
|
||||||
|
path: /Audio/Items/multitool_drop.ogg
|
||||||
|
- type: EmitSoundOnLand
|
||||||
|
sound:
|
||||||
|
path: /Audio/Items/multitool_drop.ogg
|
||||||
@@ -0,0 +1,985 @@
|
|||||||
|
# Base Document Printer
|
||||||
|
- type: entity
|
||||||
|
id: BaseDocPrinter
|
||||||
|
parent: BaseMachinePowered
|
||||||
|
abstract: true
|
||||||
|
name: принтер
|
||||||
|
components:
|
||||||
|
- type: Appearance
|
||||||
|
- type: Physics
|
||||||
|
bodyType: Static
|
||||||
|
- type: Fixtures
|
||||||
|
fixtures:
|
||||||
|
fix1:
|
||||||
|
shape:
|
||||||
|
!type:PhysShapeAabb
|
||||||
|
bounds: "-0.25,-0.25,0.25,0.25"
|
||||||
|
density: 25
|
||||||
|
mask:
|
||||||
|
- TabletopMachineMask
|
||||||
|
layer:
|
||||||
|
- TabletopMachineLayer
|
||||||
|
- type: Lathe
|
||||||
|
- type: MaterialStorage
|
||||||
|
- type: ActivatableUI
|
||||||
|
key: enum.LatheUiKey.Key
|
||||||
|
- type: ActivatableUIRequiresPower
|
||||||
|
- type: UserInterface
|
||||||
|
interfaces:
|
||||||
|
- key: enum.LatheUiKey.Key
|
||||||
|
type: LatheBoundUserInterface
|
||||||
|
- key: enum.ResearchClientUiKey.Key
|
||||||
|
type: ResearchClientBoundUserInterface
|
||||||
|
- type: Transform
|
||||||
|
anchored: true
|
||||||
|
- type: Pullable
|
||||||
|
- type: StaticPrice
|
||||||
|
price: 800
|
||||||
|
- type: ResearchClient
|
||||||
|
- type: TechnologyDatabase
|
||||||
|
|
||||||
|
# Document Printer
|
||||||
|
- type: entity
|
||||||
|
parent: BaseDocPrinter
|
||||||
|
id: DocPrinter
|
||||||
|
name: принтер форм документов
|
||||||
|
description: Принтер для распечатки разных форм документов. Блюспейс-технологии на службе бюрократии!
|
||||||
|
components:
|
||||||
|
- type: Physics
|
||||||
|
bodyType: Static
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
drawdepth: SmallObjects
|
||||||
|
layers:
|
||||||
|
- state: icon
|
||||||
|
map: ["enum.LatheVisualLayers.IsRunning"]
|
||||||
|
- state: unlit
|
||||||
|
shader: unshaded
|
||||||
|
map: ["enum.PowerDeviceVisualLayers.Powered"]
|
||||||
|
- state: inserting
|
||||||
|
map: ["enum.MaterialStorageVisualLayers.Inserting"]
|
||||||
|
- type: Lathe
|
||||||
|
producingSound: /Audio/Machines/scanning.ogg
|
||||||
|
idleState: icon
|
||||||
|
runningState: printing
|
||||||
|
staticRecipes:
|
||||||
|
- BoxFolderGreenBAN
|
||||||
|
- PaperRequestTargetStation
|
||||||
|
- PaperReportCC
|
||||||
|
- PaperCompletedStation
|
||||||
|
- PaperFailedStation
|
||||||
|
- PaperRequestCentComm
|
||||||
|
- PaperRequestERT
|
||||||
|
- PaperRequestRXBZZ
|
||||||
|
- PaperRequestExecution
|
||||||
|
- PaperRequestMagistrat
|
||||||
|
- BoxFolderBlueBAN
|
||||||
|
- PaperDomotionComm
|
||||||
|
- PaperDismissalReq
|
||||||
|
- PaperRequestHeadCouncil
|
||||||
|
- PaperHeadCouncilEnd
|
||||||
|
- BoxFolderRedBAN
|
||||||
|
- PaperOrderSec
|
||||||
|
- PaperDonos
|
||||||
|
- PaperLic
|
||||||
|
- PaperTimeRequestWeapon
|
||||||
|
- PaperRequestExecutionSec
|
||||||
|
- PaperOrderWeapon
|
||||||
|
- PaperRequestGuard
|
||||||
|
- BoxFolderRYellowBAN
|
||||||
|
- PaperRequestBuild
|
||||||
|
- PaperRequestMaterial
|
||||||
|
- PaperReportElect
|
||||||
|
- PaperReportAtmos
|
||||||
|
- BoxFolderWhiteBAN
|
||||||
|
- PaperRequestNarco
|
||||||
|
- PaperRequestExecutionMed
|
||||||
|
- PaperWaiverOfClaims
|
||||||
|
- PaperDurka
|
||||||
|
- BoxFolderPurpleBAN
|
||||||
|
- PaperRequestReasonable
|
||||||
|
- PaperRequestLaw
|
||||||
|
- PaperBrain
|
||||||
|
- BoxFolderYellowBAN
|
||||||
|
- PaperCargoOrder
|
||||||
|
- BoxFolderGreyBAN
|
||||||
|
- PaperRequestUpID
|
||||||
|
- PaperRequestWork
|
||||||
|
- PaperRequestTrash
|
||||||
|
- PaperEndTrash
|
||||||
|
- PaperRequestCourt
|
||||||
|
- PaperDismissalSer
|
||||||
|
- PaperPromotion
|
||||||
|
- PaperRequestBotan
|
||||||
|
- type: EmagLatheRecipes
|
||||||
|
emagStaticRecipes:
|
||||||
|
- BoxFolderBlackBAN
|
||||||
|
- PaperSyndicat
|
||||||
|
- type: MaterialStorage
|
||||||
|
|
||||||
|
# Recipe Paper
|
||||||
|
# Station->CentComm
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestTargetStation # Tide
|
||||||
|
result: PaperRequestTargetStation
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperReportCC # Tide
|
||||||
|
result: PaperReportCC
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperCompletedStation # Tide
|
||||||
|
result: PaperCompletedStation
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperFailedStation # Tide
|
||||||
|
result: PaperFailedStation
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestCentComm # Tide
|
||||||
|
result: PaperRequestCentComm
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestERT # Tide
|
||||||
|
result: PaperRequestERT
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestRXBZZ # Tide
|
||||||
|
result: PaperRequestRXBZZ
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestExecution # Tide
|
||||||
|
result: PaperRequestExecution
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestMagistrat # Tide
|
||||||
|
result: PaperRequestMagistrat
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperCommand
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperDomotionComm # Tide
|
||||||
|
result: PaperDomotionComm
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperDismissalReq # Tide
|
||||||
|
result: PaperDismissalReq
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestHeadCouncil # Tide
|
||||||
|
result: PaperRequestHeadCouncil
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperHeadCouncilEnd # Tide
|
||||||
|
result: PaperHeadCouncilEnd
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperSecurity
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperOrderSec # Tide
|
||||||
|
result: PaperOrderSec
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestExecutionSec # Tide
|
||||||
|
result: PaperRequestExecutionSec
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperDonos # Tide
|
||||||
|
result: PaperDonos
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperLic # Tide
|
||||||
|
result: PaperLic
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperTimeRequestWeapon # Tide
|
||||||
|
result: PaperTimeRequestWeapon
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperOrderWeapon # Tide
|
||||||
|
result: PaperOrderWeapon
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestGuard # Tide
|
||||||
|
result: PaperRequestGuard
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperEng
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestBuild # Tide
|
||||||
|
result: PaperRequestBuild
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestMaterial # Tide
|
||||||
|
result: PaperRequestMaterial
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperReportElect # Tide
|
||||||
|
result: PaperReportElect
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperReportAtmos # Tide
|
||||||
|
result: PaperReportAtmos
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperMed
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestNarco # Tide
|
||||||
|
result: PaperRequestNarco
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestExecutionMed # Tide
|
||||||
|
result: PaperRequestExecutionMed
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperWaiverOfClaims # Tide
|
||||||
|
result: PaperWaiverOfClaims
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperDurka # Tide
|
||||||
|
result: PaperDurka
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperSci
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestReasonable # Tide
|
||||||
|
result: PaperRequestReasonable
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestLaw # Tide
|
||||||
|
result: PaperRequestLaw
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperBrain # Tide
|
||||||
|
result: PaperBrain
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperCargo
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperCargoOrder # Tide
|
||||||
|
result: PaperCargoOrder
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperService
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestUpID # Tide
|
||||||
|
result: PaperRequestUpID
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestWork # Tide
|
||||||
|
result: PaperRequestWork
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestTrash # Tide
|
||||||
|
result: PaperRequestTrash
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperEndTrash # Tide
|
||||||
|
result: PaperEndTrash
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestCourt # Tide
|
||||||
|
result: PaperRequestCourt
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperDismissalSer # Tide
|
||||||
|
result: PaperDismissalSer
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperPromotion # Tide
|
||||||
|
result: PaperPromotion
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperRequestBotan # Tide
|
||||||
|
result: PaperRequestBotan
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PaperSyndicat
|
||||||
|
- type: latheRecipe
|
||||||
|
id: PaperSyndicat # Tide
|
||||||
|
result: PaperSyndicat
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 0
|
||||||
|
|
||||||
|
# PapersAll
|
||||||
|
# Station->CentComm
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestTargetStation
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос цели
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperReportCC
|
||||||
|
noSpawn: true
|
||||||
|
name: отчет о цели
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-report
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperCompletedStation
|
||||||
|
noSpawn: true
|
||||||
|
name: цель выполнена
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-completed
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperFailedStation
|
||||||
|
noSpawn: true
|
||||||
|
name: цель провалена
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-failed
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestCentComm
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос ПЦК
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request-CentComm
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestERT
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос ОБР
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request-ERT
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestRXBZZ
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос РХБЗЗ
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request-RXBZZ
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestExecution
|
||||||
|
noSpawn: true
|
||||||
|
name: жалоба высшей степени
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request-high-order-compaint
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestMagistrat
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос в магистрат
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-text-request-magistrat
|
||||||
|
|
||||||
|
# PaperCommand
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperDomotionComm
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос на понижение
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-comm-text-crew-mem-domotion
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperDismissalReq
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос на увольнение
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-comm-text-crew-mem-dismissal
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestHeadCouncil
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос на голосование глав
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-comm-text-request-council
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperHeadCouncilEnd
|
||||||
|
noSpawn: true
|
||||||
|
name: отчет по голосованию глав
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-comm-text-council-end
|
||||||
|
|
||||||
|
# PaperSecurity
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperOrderSec
|
||||||
|
noSpawn: true
|
||||||
|
name: ордер на арест
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-order
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperDonos
|
||||||
|
noSpawn: true
|
||||||
|
name: жалоба
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-complaint
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperLic
|
||||||
|
noSpawn: true
|
||||||
|
name: разрешение на ношение оружия
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-lic
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperTimeRequestWeapon
|
||||||
|
noSpawn: true
|
||||||
|
name: временный запрос на оружие
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-request-weapon
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestExecutionSec
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос на казнь
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-request-execution
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperOrderWeapon
|
||||||
|
noSpawn: true
|
||||||
|
name: разрешение на заказ оружия
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-request-cargo-weapon
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestGuard
|
||||||
|
noSpawn: true
|
||||||
|
name: программа защиты свидетелей
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sec-text-request-guard
|
||||||
|
|
||||||
|
# PaperEng
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestBuild
|
||||||
|
noSpawn: true
|
||||||
|
name: разрешение о проведении строительных работ
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-eng-text-request-build
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestMaterial
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос материалов
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-eng-text-request-material
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperReportElect
|
||||||
|
noSpawn: true
|
||||||
|
name: отчет об электроснабжении
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-eng-text-report-elect
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperReportAtmos
|
||||||
|
noSpawn: true
|
||||||
|
name: отчет об атмосфере
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-eng-text-report-atmos
|
||||||
|
|
||||||
|
# PaperMed
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestNarco
|
||||||
|
noSpawn: true
|
||||||
|
name: лекарственный рецепт
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-med-text-request-perm-narc
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestExecutionMed
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос на проведение эвтаназии
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-med-text-request-execution
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperWaiverOfClaims
|
||||||
|
noSpawn: true
|
||||||
|
name: отказ от претензий
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-med-text-waiver-claims
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperDurka
|
||||||
|
noSpawn: true
|
||||||
|
name: заключение о невменяемости
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-med-text-durka
|
||||||
|
|
||||||
|
# PaperSci
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestReasonable
|
||||||
|
noSpawn: true
|
||||||
|
name: признание разумности существа
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sci-text-reasonable
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestLaw
|
||||||
|
noSpawn: true
|
||||||
|
name: постановление о изменении законов боргов
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sci-text-request-law
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperBrain
|
||||||
|
noSpawn: true
|
||||||
|
name: постановление о пересадке мозга
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-sci-text-brain
|
||||||
|
|
||||||
|
# PaperCargo
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperCargoOrder
|
||||||
|
noSpawn: true
|
||||||
|
name: заказ товара
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-car-text-order
|
||||||
|
|
||||||
|
# PaperService
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestUpID
|
||||||
|
noSpawn: true
|
||||||
|
name: повышение доступа
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-up-IDcard
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestWork
|
||||||
|
noSpawn: true
|
||||||
|
name: ускоренный найм
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-work
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestTrash
|
||||||
|
noSpawn: true
|
||||||
|
name: свидетельство о заключении брака
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-trash
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperEndTrash
|
||||||
|
noSpawn: true
|
||||||
|
name: свидетельство о расторжении брака
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-trash-end
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestCourt
|
||||||
|
noSpawn: true
|
||||||
|
name: инициация судебного процесса
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-court
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperDismissalSer
|
||||||
|
noSpawn: true
|
||||||
|
name: увольнение
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-dismissal
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperPromotion
|
||||||
|
noSpawn: true
|
||||||
|
name: повышение
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-promotion
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperRequestBotan
|
||||||
|
noSpawn: true
|
||||||
|
name: запрос растений
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-ser-text-request-botan
|
||||||
|
|
||||||
|
# PaperSyndicat
|
||||||
|
- type: entity
|
||||||
|
parent: Paper
|
||||||
|
id: PaperSyndicat
|
||||||
|
noSpawn: true
|
||||||
|
name: секретные документы
|
||||||
|
components:
|
||||||
|
- type: Paper
|
||||||
|
content: paper-syn-text-ha-ha
|
||||||
|
|
||||||
|
# BoxFolder
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderRedBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы службы безопасноти
|
||||||
|
suffix: Red
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-sec
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderBlueBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы командования
|
||||||
|
suffix: Blue
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-com
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderYellowBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы карго
|
||||||
|
suffix: Yellow
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-car
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderWhiteBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы медиков
|
||||||
|
suffix: White
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-med
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderGreyBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы сервиса
|
||||||
|
suffix: Grey
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-ser
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderGreenBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы для ЦентКома
|
||||||
|
suffix: Green
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-CC
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderRYellowBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы инженеров
|
||||||
|
suffix: RYellow
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-eng
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderPurpleBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы учёных
|
||||||
|
suffix: Purple
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-sci
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
id: BoxFolderBlackBAN
|
||||||
|
parent: BoxFolderBase
|
||||||
|
noSpawn: true
|
||||||
|
name: формы J@4D*S
|
||||||
|
suffix: Black
|
||||||
|
components:
|
||||||
|
- type: Sprite
|
||||||
|
sprite: White/Structures/Machines/doc_printer.rsi
|
||||||
|
layers:
|
||||||
|
- state: folder-syn
|
||||||
|
- type: TimedDespawn
|
||||||
|
lifetime: 0,1
|
||||||
|
|
||||||
|
# RecipeBoxFolder
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderGreenBAN # Tide
|
||||||
|
result: BoxFolderGreenBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderGreyBAN # Tide
|
||||||
|
result: BoxFolderGreyBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderWhiteBAN # Tide
|
||||||
|
result: BoxFolderWhiteBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderYellowBAN # Tide
|
||||||
|
result: BoxFolderYellowBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderBlueBAN # Tide
|
||||||
|
result: BoxFolderBlueBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderRedBAN # Tide
|
||||||
|
result: BoxFolderRedBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderRYellowBAN # Tide
|
||||||
|
result: BoxFolderRYellowBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderPurpleBAN # Tide
|
||||||
|
result: BoxFolderPurpleBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
|
|
||||||
|
- type: latheRecipe
|
||||||
|
id: BoxFolderBlackBAN # Tide
|
||||||
|
result: BoxFolderBlackBAN
|
||||||
|
completetime: 1
|
||||||
|
materials:
|
||||||
|
Paper: 1
|
||||||
@@ -11,3 +11,13 @@
|
|||||||
completetime: 5
|
completetime: 5
|
||||||
materials:
|
materials:
|
||||||
Steel: 1500
|
Steel: 1500
|
||||||
|
- type: latheRecipe
|
||||||
|
id: ClothingEyesNightVisionGoggles
|
||||||
|
result: ClothingEyesNightVisionGoggles
|
||||||
|
completetime: 2
|
||||||
|
materials:
|
||||||
|
Steel: 200
|
||||||
|
Glass: 100
|
||||||
|
Silver: 100
|
||||||
|
Gold: 100
|
||||||
|
|
||||||
|
|||||||
43
Resources/Prototypes/White/Research/experimental.yml
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
- type: technology
|
||||||
|
id: AdvancedRobotics
|
||||||
|
name: research-technology-advanced-robotics
|
||||||
|
icon:
|
||||||
|
sprite: White/Mobs/Player/Borgs/cyborg.rsi
|
||||||
|
state: icon
|
||||||
|
discipline: Experimental
|
||||||
|
tier: 1
|
||||||
|
cost: 5000
|
||||||
|
recipeUnlocks:
|
||||||
|
- CyborgMonitoringComputerCircuitboard
|
||||||
|
- BorgChargerMachineCircuitboard
|
||||||
|
- CyborgMonitoringServerMachineCircuitboard
|
||||||
|
- PositronicBrain
|
||||||
|
|
||||||
|
- type: technology
|
||||||
|
id: UpgradeBorgModule
|
||||||
|
name: research-technology-upgrade-borg
|
||||||
|
icon:
|
||||||
|
sprite: White/Objects/Devices/cyborgradiomodule.rsi
|
||||||
|
state: icon
|
||||||
|
discipline: Experimental
|
||||||
|
tier: 2
|
||||||
|
cost: 15000
|
||||||
|
recipeUnlocks:
|
||||||
|
- CyborgHUDModuleSec
|
||||||
|
- CyborgHUDModuleMed
|
||||||
|
- CyborgSpeedModule
|
||||||
|
- CyborgInstrumentModuleFilled
|
||||||
|
- CyborgJetpackModule
|
||||||
|
|
||||||
|
# Night Vision Tech
|
||||||
|
- type: technology
|
||||||
|
id: NightVisionTech
|
||||||
|
name: night vision technology
|
||||||
|
icon:
|
||||||
|
sprite: White/Clothing/Head/nightvision.rsi
|
||||||
|
state: icon
|
||||||
|
discipline: Experimental
|
||||||
|
tier: 2
|
||||||
|
cost: 10000
|
||||||
|
recipeUnlocks:
|
||||||
|
- ClothingEyesNightVisionGoggles
|
||||||
|
After Width: | Height: | Size: 387 B |
BIN
Resources/Textures/White/Clothing/Head/nightvision.rsi/icon.png
Normal file
|
After Width: | Height: | Size: 218 B |
|
After Width: | Height: | Size: 385 B |
|
After Width: | Height: | Size: 410 B |
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/5a73e8f825ff279e82949b9329783a9e3070e2da",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "icon"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "equipped-EYES",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-left",
|
||||||
|
"directions": 4
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inhand-right",
|
||||||
|
"directions": 4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
BIN
Resources/Textures/White/Items/Tools/tricorder.rsi/icon.png
Normal file
|
After Width: | Height: | Size: 312 B |
20
Resources/Textures/White/Items/Tools/tricorder.rsi/meta.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "Taken from tgstation",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "icon"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "on"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "off"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
BIN
Resources/Textures/White/Items/Tools/tricorder.rsi/off.png
Normal file
|
After Width: | Height: | Size: 151 B |
BIN
Resources/Textures/White/Items/Tools/tricorder.rsi/on.png
Normal file
|
After Width: | Height: | Size: 151 B |
|
After Width: | Height: | Size: 246 B |
|
After Width: | Height: | Size: 98 B |
|
After Width: | Height: | Size: 256 B |
|
After Width: | Height: | Size: 264 B |
|
After Width: | Height: | Size: 261 B |
|
After Width: | Height: | Size: 263 B |
|
After Width: | Height: | Size: 113 B |
|
After Width: | Height: | Size: 261 B |
|
After Width: | Height: | Size: 260 B |
|
After Width: | Height: | Size: 255 B |
|
After Width: | Height: | Size: 249 B |
|
After Width: | Height: | Size: 393 B |
|
After Width: | Height: | Size: 735 B |
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,96 @@
|
|||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"license": "CC-BY-SA-3.0",
|
||||||
|
"copyright": "Made by Valentyi",
|
||||||
|
"size": {
|
||||||
|
"x": 32,
|
||||||
|
"y": 32
|
||||||
|
},
|
||||||
|
"states": [
|
||||||
|
{
|
||||||
|
"name": "icon"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "unlit",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.6,
|
||||||
|
0.7,
|
||||||
|
0.6,
|
||||||
|
0.7
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-base"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "idle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-CC"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-overlay-paper"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-med"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-sec"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-eng"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-sci"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-car"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-syn"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-com"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "folder-ser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inserting",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2,
|
||||||
|
0.2
|
||||||
|
]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "printing",
|
||||||
|
"delays": [
|
||||||
|
[
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4,
|
||||||
|
0.4
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 232 B |