Files
wwdpublic/Content.Client/Nutrition/EntitySystems/FoodGuideDataSystem.cs
Mnemotechnican 7974d2affe Food Recipe Guidebook (#783)
# Description
Adds an auto-generated list of recipes to the guidebook. This was mostly
made using the chemical list as a reference, so it's a bit shitcode-ey.

# TODO
- [X] Make less ugly (add paddings to table cells and fix colors)
- [X] Fix sprites not working
- [X] Unshitcode (if possible)

<details><summary><h1>Media</h1></summary>
<p>


https://github.com/user-attachments/assets/597cbec1-7114-480b-ab8d-5ed9f8b2e0c3

</p>
</details>

# Changelog
🆑
- add: The "food recipes" page in guidebook now contains an
automatically generated list of food recipes.
2024-10-19 12:41:54 +07:00

31 lines
777 B
C#

using Content.Client.Chemistry.EntitySystems;
using Robust.Shared.Prototypes;
namespace Content.Client.Nutrition.EntitySystems;
public sealed class FoodGuideDataSystem : SharedFoodGuideDataSystem
{
public override void Initialize()
{
SubscribeNetworkEvent<FoodGuideRegistryChangedEvent>(OnReceiveRegistryUpdate);
}
private void OnReceiveRegistryUpdate(FoodGuideRegistryChangedEvent message)
{
Registry = message.Changeset;
}
public bool TryGetData(EntProtoId result, out FoodGuideEntry entry)
{
var index = Registry.FindIndex(it => it.Result == result);
if (index == -1)
{
entry = default;
return false;
}
entry = Registry[index];
return true;
}
}