Add microwave recipes to the guidebook (#34105)
This commit is contained in:
committed by
GitHub
parent
55e22b6a94
commit
b7414d85b4
35
Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml
Normal file
35
Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
<PanelContainer xmlns="https://spacestation14.io"
|
||||||
|
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"
|
||||||
|
Margin="5 5 5 5">
|
||||||
|
<PanelContainer.PanelOverride>
|
||||||
|
<gfx:StyleBoxFlat BorderThickness="1" BorderColor="#777777"/>
|
||||||
|
</PanelContainer.PanelOverride>
|
||||||
|
|
||||||
|
<BoxContainer Orientation="Vertical">
|
||||||
|
<PanelContainer HorizontalExpand="True">
|
||||||
|
<BoxContainer Orientation="Horizontal" HorizontalAlignment="Center">
|
||||||
|
<BoxContainer Name="IconContainer"/>
|
||||||
|
<RichTextLabel Name="ResultName"/>
|
||||||
|
</BoxContainer>
|
||||||
|
<PanelContainer.PanelOverride>
|
||||||
|
<gfx:StyleBoxFlat BackgroundColor="#393c3f"/>
|
||||||
|
</PanelContainer.PanelOverride>
|
||||||
|
</PanelContainer>
|
||||||
|
|
||||||
|
<GridContainer Columns="2" Margin="10">
|
||||||
|
<BoxContainer Orientation="Vertical" HorizontalExpand="True">
|
||||||
|
<Label Text="{Loc 'guidebook-microwave-ingredients-header'}"/>
|
||||||
|
<GridContainer Columns="3" Name="IngredientsGrid"/>
|
||||||
|
</BoxContainer>
|
||||||
|
|
||||||
|
<BoxContainer Orientation="Vertical" HorizontalExpand="True">
|
||||||
|
<Label Text="{Loc 'guidebook-microwave-cook-time-header'}"/>
|
||||||
|
<RichTextLabel Name="CookTimeLabel"/>
|
||||||
|
</BoxContainer>
|
||||||
|
</GridContainer>
|
||||||
|
|
||||||
|
<BoxContainer Margin="10">
|
||||||
|
<RichTextLabel Name="ResultDescription" HorizontalAlignment="Left"/>
|
||||||
|
</BoxContainer>
|
||||||
|
</BoxContainer>
|
||||||
|
</PanelContainer>
|
||||||
183
Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs
Normal file
183
Content.Client/Guidebook/Controls/GuideMicrowaveEmbed.xaml.cs
Normal file
@@ -0,0 +1,183 @@
|
|||||||
|
using System.Diagnostics.CodeAnalysis;
|
||||||
|
using System.Linq;
|
||||||
|
using Content.Client.Guidebook.Richtext;
|
||||||
|
using Content.Client.Message;
|
||||||
|
using Content.Client.UserInterface.ControlExtensions;
|
||||||
|
using Content.Shared.Chemistry.Reagent;
|
||||||
|
using Content.Shared.Kitchen;
|
||||||
|
using JetBrains.Annotations;
|
||||||
|
using Robust.Client.AutoGenerated;
|
||||||
|
using Robust.Client.UserInterface.Controls;
|
||||||
|
using Robust.Client.UserInterface.XAML;
|
||||||
|
using Robust.Client.UserInterface;
|
||||||
|
using Robust.Shared.Prototypes;
|
||||||
|
using Robust.Shared.Utility;
|
||||||
|
|
||||||
|
namespace Content.Client.Guidebook.Controls;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Control for embedding a microwave recipe into a guidebook.
|
||||||
|
/// </summary>
|
||||||
|
[UsedImplicitly, GenerateTypedNameReferences]
|
||||||
|
public sealed partial class GuideMicrowaveEmbed : PanelContainer, IDocumentTag, ISearchableControl
|
||||||
|
{
|
||||||
|
[Dependency] private readonly IPrototypeManager _prototype = default!;
|
||||||
|
[Dependency] private readonly ILogManager _logManager = default!;
|
||||||
|
|
||||||
|
private ISawmill _sawmill = default!;
|
||||||
|
|
||||||
|
public GuideMicrowaveEmbed()
|
||||||
|
{
|
||||||
|
RobustXamlLoader.Load(this);
|
||||||
|
IoCManager.InjectDependencies(this);
|
||||||
|
MouseFilter = MouseFilterMode.Stop;
|
||||||
|
|
||||||
|
_sawmill = _logManager.GetSawmill("guidemicrowaveembed");
|
||||||
|
}
|
||||||
|
|
||||||
|
public GuideMicrowaveEmbed(string recipe) : this()
|
||||||
|
{
|
||||||
|
GenerateControl(_prototype.Index<FoodRecipePrototype>(recipe));
|
||||||
|
}
|
||||||
|
|
||||||
|
public GuideMicrowaveEmbed(FoodRecipePrototype recipe) : this()
|
||||||
|
{
|
||||||
|
GenerateControl(recipe);
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool CheckMatchesSearch(string query)
|
||||||
|
{
|
||||||
|
return this.ChildrenContainText(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetHiddenState(bool state, string query)
|
||||||
|
{
|
||||||
|
Visible = CheckMatchesSearch(query) ? state : !state;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TryParseTag(Dictionary<string, string> args, [NotNullWhen(true)] out Control? control)
|
||||||
|
{
|
||||||
|
control = null;
|
||||||
|
if (!args.TryGetValue("Recipe", out var id))
|
||||||
|
{
|
||||||
|
_sawmill.Error("Recipe embed tag is missing recipe prototype argument");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!_prototype.TryIndex<FoodRecipePrototype>(id, out var recipe))
|
||||||
|
{
|
||||||
|
_sawmill.Error($"Specified recipe prototype \"{id}\" is not a valid recipe prototype");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
GenerateControl(recipe);
|
||||||
|
|
||||||
|
control = this;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateHeader(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
var entity = _prototype.Index<EntityPrototype>(recipe.Result);
|
||||||
|
|
||||||
|
IconContainer.AddChild(new GuideEntityEmbed(recipe.Result, false, false));
|
||||||
|
ResultName.SetMarkup(entity.Name);
|
||||||
|
ResultDescription.SetMarkup(entity.Description);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateSolidIngredients(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
foreach (var (product, amount) in recipe.IngredientsSolids.OrderByDescending(p => p.Value))
|
||||||
|
{
|
||||||
|
var ingredient = _prototype.Index<EntityPrototype>(product);
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(new GuideEntityEmbed(product, false, false));
|
||||||
|
|
||||||
|
// solid name
|
||||||
|
|
||||||
|
var solidNameMsg = new FormattedMessage();
|
||||||
|
solidNameMsg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-solid-name-display", ("ingredient", ingredient.Name)));
|
||||||
|
solidNameMsg.Pop();
|
||||||
|
|
||||||
|
var solidNameLabel = new RichTextLabel();
|
||||||
|
solidNameLabel.SetMessage(solidNameMsg);
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(solidNameLabel);
|
||||||
|
|
||||||
|
// solid quantity
|
||||||
|
|
||||||
|
var solidQuantityMsg = new FormattedMessage();
|
||||||
|
solidQuantityMsg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-solid-quantity-display", ("amount", amount)));
|
||||||
|
solidQuantityMsg.Pop();
|
||||||
|
|
||||||
|
var solidQuantityLabel = new RichTextLabel();
|
||||||
|
solidQuantityLabel.SetMessage(solidQuantityMsg);
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(solidQuantityLabel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateLiquidIngredients(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
foreach (var (product, amount) in recipe.IngredientsReagents.OrderByDescending(p => p.Value))
|
||||||
|
{
|
||||||
|
var reagent = _prototype.Index<ReagentPrototype>(product);
|
||||||
|
|
||||||
|
// liquid color
|
||||||
|
|
||||||
|
var liquidColorMsg = new FormattedMessage();
|
||||||
|
liquidColorMsg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-reagent-color-display", ("color", reagent.SubstanceColor)));
|
||||||
|
liquidColorMsg.Pop();
|
||||||
|
|
||||||
|
var liquidColorLabel = new RichTextLabel();
|
||||||
|
liquidColorLabel.SetMessage(liquidColorMsg);
|
||||||
|
liquidColorLabel.HorizontalAlignment = Control.HAlignment.Center;
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(liquidColorLabel);
|
||||||
|
|
||||||
|
// liquid name
|
||||||
|
|
||||||
|
var liquidNameMsg = new FormattedMessage();
|
||||||
|
liquidNameMsg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-reagent-name-display", ("reagent", reagent.LocalizedName)));
|
||||||
|
liquidNameMsg.Pop();
|
||||||
|
|
||||||
|
var liquidNameLabel = new RichTextLabel();
|
||||||
|
liquidNameLabel.SetMessage(liquidNameMsg);
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(liquidNameLabel);
|
||||||
|
|
||||||
|
// liquid quantity
|
||||||
|
|
||||||
|
var liquidQuantityMsg = new FormattedMessage();
|
||||||
|
liquidQuantityMsg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-reagent-quantity-display", ("amount", amount)));
|
||||||
|
liquidQuantityMsg.Pop();
|
||||||
|
|
||||||
|
var liquidQuantityLabel = new RichTextLabel();
|
||||||
|
liquidQuantityLabel.SetMessage(liquidQuantityMsg);
|
||||||
|
|
||||||
|
IngredientsGrid.AddChild(liquidQuantityLabel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateIngredients(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
GenerateLiquidIngredients(recipe);
|
||||||
|
GenerateSolidIngredients(recipe);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateCookTime(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
var msg = new FormattedMessage();
|
||||||
|
msg.AddMarkupOrThrow(Loc.GetString("guidebook-microwave-cook-time", ("time", recipe.CookTime)));
|
||||||
|
msg.Pop();
|
||||||
|
|
||||||
|
CookTimeLabel.SetMessage(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void GenerateControl(FoodRecipePrototype recipe)
|
||||||
|
{
|
||||||
|
GenerateHeader(recipe);
|
||||||
|
GenerateIngredients(recipe);
|
||||||
|
GenerateCookTime(recipe);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
using System.Diagnostics.CodeAnalysis;
|
||||||
|
using System.Linq;
|
||||||
|
using Content.Client.Guidebook.Richtext;
|
||||||
|
using Content.Shared.Kitchen;
|
||||||
|
using JetBrains.Annotations;
|
||||||
|
using Robust.Client.UserInterface.Controls;
|
||||||
|
using Robust.Client.UserInterface;
|
||||||
|
using Robust.Shared.Prototypes;
|
||||||
|
|
||||||
|
namespace Content.Client.Guidebook.Controls;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Control for listing microwave recipes in a guidebook
|
||||||
|
/// </summary>
|
||||||
|
[UsedImplicitly]
|
||||||
|
public sealed partial class GuideMicrowaveGroupEmbed : BoxContainer, IDocumentTag
|
||||||
|
{
|
||||||
|
[Dependency] private readonly IPrototypeManager _prototype = default!;
|
||||||
|
|
||||||
|
public GuideMicrowaveGroupEmbed()
|
||||||
|
{
|
||||||
|
Orientation = LayoutOrientation.Vertical;
|
||||||
|
IoCManager.InjectDependencies(this);
|
||||||
|
MouseFilter = MouseFilterMode.Stop;
|
||||||
|
}
|
||||||
|
|
||||||
|
public GuideMicrowaveGroupEmbed(string group) : this()
|
||||||
|
{
|
||||||
|
CreateEntries(group);
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TryParseTag(Dictionary<string, string> args, [NotNullWhen(true)] out Control? control)
|
||||||
|
{
|
||||||
|
control = null;
|
||||||
|
if (!args.TryGetValue("Group", out var group))
|
||||||
|
{
|
||||||
|
Logger.Error("Microwave group embed tag is missing group argument");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
CreateEntries(group);
|
||||||
|
|
||||||
|
control = this;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateEntries(string group)
|
||||||
|
{
|
||||||
|
var prototypes = _prototype.EnumeratePrototypes<FoodRecipePrototype>()
|
||||||
|
.Where(p => p.Group.Equals(group))
|
||||||
|
.OrderBy(p => p.Name);
|
||||||
|
|
||||||
|
foreach (var recipe in prototypes)
|
||||||
|
{
|
||||||
|
var embed = new GuideMicrowaveEmbed(recipe);
|
||||||
|
AddChild(embed);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -19,6 +19,9 @@ namespace Content.Shared.Kitchen
|
|||||||
[DataField("name")]
|
[DataField("name")]
|
||||||
private string _name = string.Empty;
|
private string _name = string.Empty;
|
||||||
|
|
||||||
|
[DataField]
|
||||||
|
public string Group = "Other";
|
||||||
|
|
||||||
[DataField("reagents", customTypeSerializer:typeof(PrototypeIdDictionarySerializer<FixedPoint2, ReagentPrototype>))]
|
[DataField("reagents", customTypeSerializer:typeof(PrototypeIdDictionarySerializer<FixedPoint2, ReagentPrototype>))]
|
||||||
private Dictionary<string, FixedPoint2> _ingsReagents = new();
|
private Dictionary<string, FixedPoint2> _ingsReagents = new();
|
||||||
|
|
||||||
|
|||||||
15
Resources/Locale/en-US/guidebook/cooking.ftl
Normal file
15
Resources/Locale/en-US/guidebook/cooking.ftl
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
guidebook-microwave-ingredients-header = Ingredients
|
||||||
|
guidebook-microwave-cook-time-header = Cooking Time
|
||||||
|
guidebook-microwave-cook-time =
|
||||||
|
{ $time ->
|
||||||
|
[0] Instant
|
||||||
|
[1] [bold]1[/bold] second
|
||||||
|
*[other] [bold]{$time}[/bold] seconds
|
||||||
|
}
|
||||||
|
|
||||||
|
guidebook-microwave-reagent-color-display = [color={$color}]■[/color]
|
||||||
|
guidebook-microwave-reagent-name-display = [bold]{$reagent}[/bold]
|
||||||
|
guidebook-microwave-reagent-quantity-display = × {$amount}u
|
||||||
|
|
||||||
|
guidebook-microwave-solid-name-display = [bold]{$ingredient}[/bold]
|
||||||
|
guidebook-microwave-solid-quantity-display = × {$amount}
|
||||||
@@ -112,6 +112,22 @@ guide-entry-botanical = Botanical
|
|||||||
guide-entry-special = Special
|
guide-entry-special = Special
|
||||||
guide-entry-others = Others
|
guide-entry-others = Others
|
||||||
|
|
||||||
|
guide-entry-pizza-recipes = Pizzas
|
||||||
|
guide-entry-savory-recipes = Savory Foods
|
||||||
|
guide-entry-bread-recipes = Breads
|
||||||
|
guide-entry-breakfast-recipes = Breakfast Foods
|
||||||
|
guide-entry-moth-recipes = Moth Foods
|
||||||
|
guide-entry-pasta-recipes = Pastas & Noodles
|
||||||
|
guide-entry-dessert-recipes = Desserts & Pastries
|
||||||
|
guide-entry-soup-recipes = Soups & Stews
|
||||||
|
guide-entry-pie-recipes = Pies & Tarts
|
||||||
|
guide-entry-barsandcookies-recipes = Bars & Cookies
|
||||||
|
guide-entry-cake-recipes = Cakes
|
||||||
|
guide-entry-salad-recipes = Salads
|
||||||
|
guide-entry-medicinal-recipes = Medicinal
|
||||||
|
guide-entry-other-recipes = Other
|
||||||
|
guide-entry-secret-recipes = Secret
|
||||||
|
|
||||||
guide-entry-antagonists = Antagonists
|
guide-entry-antagonists = Antagonists
|
||||||
guide-entry-nuclear-operatives = Nuclear Operatives
|
guide-entry-nuclear-operatives = Nuclear Operatives
|
||||||
guide-entry-traitors = Traitors
|
guide-entry-traitors = Traitors
|
||||||
|
|||||||
@@ -19,6 +19,113 @@
|
|||||||
id: FoodRecipes
|
id: FoodRecipes
|
||||||
name: guide-entry-foodrecipes
|
name: guide-entry-foodrecipes
|
||||||
text: "/ServerInfo/Guidebook/Service/FoodRecipes.xml"
|
text: "/ServerInfo/Guidebook/Service/FoodRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
children:
|
||||||
|
- PizzaRecipes
|
||||||
|
- SavoryRecipes
|
||||||
|
- BreadRecipes
|
||||||
|
- BreakfastRecipes
|
||||||
|
- MothRecipes
|
||||||
|
- PastaRecipes
|
||||||
|
- DessertRecipes
|
||||||
|
- SoupRecipes
|
||||||
|
- PieRecipes
|
||||||
|
- BarsAndCookiesRecipes
|
||||||
|
- CakeRecipes
|
||||||
|
- SaladRecipes
|
||||||
|
- OtherRecipes
|
||||||
|
- MedicinalRecipes
|
||||||
|
- SecretRecipes
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: PizzaRecipes
|
||||||
|
name: guide-entry-pizza-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/PizzaRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: SavoryRecipes
|
||||||
|
name: guide-entry-savory-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/SavoryRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: BreadRecipes
|
||||||
|
name: guide-entry-bread-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/BreadRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: BreakfastRecipes
|
||||||
|
name: guide-entry-breakfast-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/BreakfastRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: MothRecipes
|
||||||
|
name: guide-entry-moth-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/MothRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: PastaRecipes
|
||||||
|
name: guide-entry-pasta-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/PastaRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: DessertRecipes
|
||||||
|
name: guide-entry-dessert-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/DessertRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: SoupRecipes
|
||||||
|
name: guide-entry-soup-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/SoupRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: PieRecipes
|
||||||
|
name: guide-entry-pie-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/PieRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: BarsAndCookiesRecipes
|
||||||
|
name: guide-entry-barsandcookies-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/BarsAndCookiesRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: CakeRecipes
|
||||||
|
name: guide-entry-cake-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/CakeRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: SaladRecipes
|
||||||
|
name: guide-entry-salad-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/SaladRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: OtherRecipes
|
||||||
|
name: guide-entry-other-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/OtherRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: MedicinalRecipes
|
||||||
|
name: guide-entry-medicinal-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/MedicinalRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
|
- type: guideEntry
|
||||||
|
id: SecretRecipes
|
||||||
|
name: guide-entry-secret-recipes
|
||||||
|
text: "/ServerInfo/Guidebook/Service/SecretRecipes.xml"
|
||||||
|
filterEnabled: True
|
||||||
|
|
||||||
- type: guideEntry
|
- type: guideEntry
|
||||||
id: Writing
|
id: Writing
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -3,6 +3,7 @@
|
|||||||
name: aloe cream recipe
|
name: aloe cream recipe
|
||||||
result: AloeCream
|
result: AloeCream
|
||||||
time: 10
|
time: 10
|
||||||
|
group: Medicinal
|
||||||
solids:
|
solids:
|
||||||
FoodAloe: 1
|
FoodAloe: 1
|
||||||
|
|
||||||
@@ -11,6 +12,7 @@
|
|||||||
name: medicated suture recipe
|
name: medicated suture recipe
|
||||||
result: MedicatedSuture
|
result: MedicatedSuture
|
||||||
time: 10
|
time: 10
|
||||||
|
group: Medicinal
|
||||||
solids:
|
solids:
|
||||||
FoodPoppy: 1
|
FoodPoppy: 1
|
||||||
Brutepack: 1
|
Brutepack: 1
|
||||||
@@ -24,6 +26,7 @@
|
|||||||
name: regenerative mesh recipe
|
name: regenerative mesh recipe
|
||||||
result: RegenerativeMesh
|
result: RegenerativeMesh
|
||||||
time: 10
|
time: 10
|
||||||
|
group: Medicinal
|
||||||
solids:
|
solids:
|
||||||
FoodAloe: 1
|
FoodAloe: 1
|
||||||
Ointment: 1
|
Ointment: 1
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Bars & Cookies
|
||||||
|
|
||||||
|
A crowd-pleaser, many of these can be made from pantry ingredients to serve to many crewmates.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="BarsAndCookies"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/BreadRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/BreadRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Breads
|
||||||
|
|
||||||
|
A fresh loaf of bread is without equal, and breads are often incorporated into other recipes.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Breads"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Breakfast Recipes
|
||||||
|
|
||||||
|
A wonderful way to start a shift! Or perhaps, to treat the crew to brunch midway through.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Breakfast"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/CakeRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/CakeRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Cakes
|
||||||
|
|
||||||
|
Cakes are a timeless classic, combining fresh ingredients and a delicious tender base to make something that can serve a lot of crewmates.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Cake"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Pastries & Desserts
|
||||||
|
|
||||||
|
A special sweet treat can go a long way to boosting the crew's morale.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Dessert"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
@@ -1,94 +1,52 @@
|
|||||||
<Document>
|
<Document>
|
||||||
## Starting Out
|
|
||||||
This is not an extensive list of recipes, these listings are to showcase the basics.
|
|
||||||
|
|
||||||
Mixes are done in a Beaker, foods are cooked in a Microwave. Cook times will be listed.
|
# Microwave Recipes
|
||||||
|
|
||||||
WARNING: This is not an automatically generated list, things here may become outdated. The wiki has much more than is listed here.
|
This is the latest published version of NanoTrasen Central Command Kitchen de Cuisine's recipe collection for chefs upon NanoTrasen vessels to prepare.
|
||||||
|
|
||||||
## The Basics: Mixing
|
## Pizza Pies
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Pizza"/>
|
||||||
|
|
||||||
- Dough = 15 Flour, 10 Water
|
## Savory Cooking
|
||||||
- Cornmeal Dough = 1 Egg (6u), 10 Milk, 15 Cornmeal
|
<GuideMicrowaveGroupEmbed Group="Savory"/>
|
||||||
- Tortila Dough = 15 Cornmeal, 10 Water
|
|
||||||
- Tofu = 5 Enzyme (Catalyst), 30 Soy Milk
|
|
||||||
- Pie Dough = 2 Eggs (12u), 15 Flour, 5 Table Salt
|
|
||||||
- Cake Batter = 2 Eggs(12u), 15 flour, 5 Sugar, 5 Milk
|
|
||||||
- Vegan Cake Batter = 15 Soy Milk, 15 Flour, 5 Sugar
|
|
||||||
- Butter = 30 Milk, 5 Table Salt (Catalyst)
|
|
||||||
- Cheese Wheel = 5 Enzyme (Catalyst), 40 Milk
|
|
||||||
- Chèvre Log = 5 Enzyme (Catalyst), 10 Goat Milk
|
|
||||||
- Meatball = 1 Egg (6u), 5 Flour, 5 Uncooked Animal Proteins
|
|
||||||
- Chocolate = 6 Cocoa Powder, 2 Milk, 2 Sugar
|
|
||||||
- Uncooked Animal Protein: Grind Raw Meat
|
|
||||||
|
|
||||||
Buzz! Don't forget about Moth diet!
|
## Breads
|
||||||
- Fiber: Juice Fabric in a Reagent Grinder, 3 Fiber per Fabric
|
<GuideMicrowaveGroupEmbed Group="Breads"/>
|
||||||
- Cotton Dough = 5 Flour, 10 Fiber, 10 Water
|
|
||||||
- Cotton bread baked the same as default but with cotton dough instead
|
|
||||||
- Cotton Pizza: Microwave 1 Flat Cotton Dough and 4 Cotton Bolls for 30 Seconds
|
|
||||||
|
|
||||||
<Box>
|
## Breakfast Foods
|
||||||
<GuideEntityEmbed Entity="FoodDough"/>
|
<GuideMicrowaveGroupEmbed Group="Breakfast"/>
|
||||||
<GuideEntityEmbed Entity="FoodDoughCornmeal"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodDoughCotton"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodTofu"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodDoughPie"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodCakeBatter"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodDoughFlat"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodDoughTortilla"/>
|
|
||||||
</Box>
|
|
||||||
|
|
||||||
<Box>
|
## Moth Foods
|
||||||
<GuideEntityEmbed Entity="FoodButter"/>
|
<GuideMicrowaveGroupEmbed Group="Moth"/>
|
||||||
<GuideEntityEmbed Entity="FoodMeatMeatball"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodCheese"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodChevre"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodSnackChocolateBar"/>
|
|
||||||
</Box>
|
|
||||||
|
|
||||||
## Secondary Products
|
## Pastas & Noodles
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Pasta"/>
|
||||||
|
|
||||||
- Dough Slice: Cut Dough
|
## Pastries & Desserts
|
||||||
- Bun: Microwave Dough Slice for 5 Seconds
|
<GuideMicrowaveGroupEmbed Group="Dessert"/>
|
||||||
- Cutlet: Slice Raw Meat
|
|
||||||
- Cheese Wedge: Slice Cheese Wheel
|
|
||||||
- Flat Dough: Use a rolling pin or a round object (fire extinguisher, soda can, bottle) on Dough.
|
|
||||||
- Tortilla Dough Slice: cut Tortilla Dough
|
|
||||||
- Flat Tortilla Dough: Use a rolling pin or a round object (fire extinguisher, soda can, bottle) on Tortilla Dough Slice
|
|
||||||
- Taco Shell: Microwave Flat Tortilla Dough for 5 Seconds
|
|
||||||
|
|
||||||
## Food Examples
|
## Soups & Stews
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Soup"/>
|
||||||
|
|
||||||
- Bread: Microwave Dough for 10 Seconds
|
## Pies & Tarts
|
||||||
- Plain Burger: Microwave 1 Bun and 1 Raw Meat for 10 Seconds
|
<GuideMicrowaveGroupEmbed Group="Pie"/>
|
||||||
- Tomato Soup: 10u Water, 1 Bowl, and 2 Tomatoes for 10 Seconds
|
|
||||||
- Citrus Salad: 1 Bowl, 1 Lemon, 1 Lime, 1 Orange for 5 Seconds
|
|
||||||
- Margherita Pizza: Microwave 1 Flat Dough, 1 Cheese Wedge, and 4 Tomatoes for 30 Seconds
|
|
||||||
- Cake: 1 Cake Batter for 15 Seconds
|
|
||||||
- Apple Pie: 1 Pie Dough, 3 Apples, and 1 Pie Tin for 15 Seconds
|
|
||||||
- Beef Taco: Microwave 1 Taco Shell, 1 Raw Meat Cutlet, 1 Cheese Wedge for 10 Seconds
|
|
||||||
- Cuban Carp : Microwave 1 Dough, 1 Cheese Wedge, 1 Chili, 1 Carp Meat for 15 Seconds
|
|
||||||
- Banana Cream Pie : Microwave 1 Pie Dough, 3 Bananas, and 1 Pie Tin for 15 Seconds
|
|
||||||
- Carrot Fries : Microwave 1 Carrot, 15u Salt for 15 Seconds
|
|
||||||
- Pancake : Microwave 5u Flour, 5u Milk, 1 Egg (6u) for 5 Seconds
|
|
||||||
|
|
||||||
<Box>
|
## Bars & Cookies
|
||||||
<GuideEntityEmbed Entity="FoodBreadPlain"/>
|
<GuideMicrowaveGroupEmbed Group="BarsAndCookies"/>
|
||||||
<GuideEntityEmbed Entity="FoodBurgerPlain"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodSoupTomato"/>
|
## Cakes
|
||||||
<GuideEntityEmbed Entity="FoodSaladCitrus"/>
|
<GuideMicrowaveGroupEmbed Group="Cake"/>
|
||||||
</Box>
|
|
||||||
<Box>
|
## Salads
|
||||||
<GuideEntityEmbed Entity="FoodPizzaMargherita"/>
|
<GuideMicrowaveGroupEmbed Group="Salad"/>
|
||||||
<GuideEntityEmbed Entity="FoodCakePlain"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodPieApple"/>
|
## Medicinal
|
||||||
</Box>
|
<GuideMicrowaveGroupEmbed Group="Medicinal"/>
|
||||||
<Box>
|
|
||||||
<GuideEntityEmbed Entity="FoodMealCubancarp"/>
|
## Other
|
||||||
<GuideEntityEmbed Entity="FoodPieBananaCream"/>
|
<GuideMicrowaveGroupEmbed Group="Other"/>
|
||||||
<GuideEntityEmbed Entity="FoodMealFriesCarrot"/>
|
|
||||||
<GuideEntityEmbed Entity="FoodBakedPancake"/>
|
## Secret
|
||||||
</Box>
|
<GuideMicrowaveGroupEmbed Group="Secret"/>
|
||||||
|
|
||||||
</Document>
|
</Document>
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Medicinal Recipes
|
||||||
|
|
||||||
|
These preparations have interesting medical effects, or are just straight-up medicines.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Medicinal"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
10
Resources/ServerInfo/Guidebook/Service/MothRecipes.xml
Normal file
10
Resources/ServerInfo/Guidebook/Service/MothRecipes.xml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Moth Foods
|
||||||
|
|
||||||
|
Moths are sophonts too, and don't appreciate eating random garbage they found any more than other species do just because they eat fabrics.
|
||||||
|
Fixing them these wonderful meals is a great way to not embarass their dignity.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Moth"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/OtherRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/OtherRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Other Recipes
|
||||||
|
|
||||||
|
The NanoTrasen Central Command Kitchen de Cuisine is still deliberating on the categorization of these recipes.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Other"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/PastaRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/PastaRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Pastas & Noodles
|
||||||
|
|
||||||
|
There's nothing like a big bowl of noodles.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Pasta"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/PieRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/PieRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Pies & Bars
|
||||||
|
|
||||||
|
Pies and bars are a great way to fix desserts for a group of people, and to make use of fresh ingredients you have.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Pie"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/PizzaRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/PizzaRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Pizza Pies
|
||||||
|
|
||||||
|
Pizzas are a great way to prepare food for a large crew, as each pizza is 8 servings.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Pizza"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/SaladRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/SaladRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Salads
|
||||||
|
|
||||||
|
Show off the freshness of your ingredients by serving them with just the right dressings and seasonings to bring out their best.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Salad"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/SavoryRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/SavoryRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Savory Recipes
|
||||||
|
|
||||||
|
Savory meals are a favourite of meat-eating species such as reptilians and felinids, and are also usually quite nutritious.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Savory"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/SecretRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/SecretRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Secret Recipes
|
||||||
|
|
||||||
|
Normal Nanotrasen-approved microwaves can't cook these recipes.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Secret"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
9
Resources/ServerInfo/Guidebook/Service/SoupRecipes.xml
Normal file
9
Resources/ServerInfo/Guidebook/Service/SoupRecipes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<Document>
|
||||||
|
|
||||||
|
# Soups & Stews
|
||||||
|
|
||||||
|
A nice hearty bowl of soup is a great way to serve tough meats, or to preserve a delicate flavour.
|
||||||
|
|
||||||
|
<GuideMicrowaveGroupEmbed Group="Soup"/>
|
||||||
|
|
||||||
|
</Document>
|
||||||
Reference in New Issue
Block a user