Files
wwdpublic/Content.Server/Paper/PaperRandomStorySystem.cs
Tayrtahn 52c205dd0b Random book story generator refactor (#28082)
* Randomized book overhaul

* Fix prototype names

* Improved setting paper content

* Praise Ratvar

(cherry picked from commit bad3bb4a89736b7b8b343dc14e0d0259ab7e45a1)
2025-07-12 01:13:21 +10:00

28 lines
796 B
C#

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<PaperRandomStoryComponent, MapInitEvent>(OnMapinit);
}
private void OnMapinit(Entity<PaperRandomStoryComponent> paperStory, ref MapInitEvent ev)
{
if (!TryComp<PaperComponent>(paperStory, out var paper))
return;
if (!_storyGen.TryGenerateStoryFromTemplate(paperStory.Comp.Template, out var story))
return;
_paper.SetContent(paperStory.Owner, story, paper);
}
}