using Content.Shared.Paper; using Content.Shared.StoryGen; namespace Content.Server.Paper; public sealed class PaperRandomStorySystem : EntitySystem { [Dependency] private readonly StoryGeneratorSystem _storyGen = default!; [Dependency] private readonly PaperSystem _paper = default!; public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnMapInit); } private void OnMapInit(Entity paperStory, ref MapInitEvent ev) { if (!TryComp(paperStory, out var paper)) return; if (!_storyGen.TryGenerateStoryFromTemplate(paperStory.Comp.Template, out var story)) return; _paper.SetContent((paperStory.Owner, paper), story); } }