* Randomized book overhaul * Fix prototype names * Improved setting paper content * Praise Ratvar
28 lines
796 B
C#
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);
|
|
}
|
|
}
|