aboutsummaryrefslogtreecommitdiff
path: root/server/data/src/book/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/data/src/book/mod.rs')
-rw-r--r--server/data/src/book/mod.rs63
1 files changed, 3 insertions, 60 deletions
diff --git a/server/data/src/book/mod.rs b/server/data/src/book/mod.rs
index b52779f3..f9b54d0d 100644
--- a/server/data/src/book/mod.rs
+++ b/server/data/src/book/mod.rs
@@ -30,64 +30,6 @@ use hurrycurry_protocol::{
book::{Book, BookPage},
};
-struct RecipePageParams<'a> {
- name: &'a str,
- repr_items: &'a [&'a str],
-}
-static RECIPE_PAGES: &[RecipePageParams] = &[
- RecipePageParams {
- name: "cheese-leek-soup",
- repr_items: &["plate:cheese-leek-soup"],
- },
- RecipePageParams {
- name: "tomato-soup",
- repr_items: &["plate:tomato-soup"],
- },
- RecipePageParams {
- name: "mushroom-soup",
- repr_items: &["plate:mushroom-soup"],
- },
- RecipePageParams {
- name: "burger",
- repr_items: &[
- "plate:seared-patty,sliced-bun,sliced-lettuce,sliced-tomato",
- "plate:seared-patty,sliced-bun,sliced-cheese,sliced-tomato",
- ],
- },
- RecipePageParams {
- name: "noodles",
- repr_items: &["plate:cooked-noodles,sliced-cheese,tomato-juice"],
- },
- RecipePageParams {
- name: "pizza",
- repr_items: &["plate:baked-rolled-dough:sliced-cheese,sliced-mushroom,tomato-juice"],
- },
- RecipePageParams {
- name: "curry",
- repr_items: &["plate:cooked-rice,curry"],
- },
- RecipePageParams {
- name: "drinks",
- repr_items: &[
- "glass:water",
- "glass:tomato-juice",
- "glass:strawberry-shake",
- ],
- },
- RecipePageParams {
- name: "mochi",
- repr_items: &["plate:strawberry-mochi"],
- },
- RecipePageParams {
- name: "doughnut",
- repr_items: &["plate:doughnut"],
- },
- RecipePageParams {
- name: "doughnut",
- repr_items: &["plate:doughnut"],
- },
-];
-
pub fn book(data: &Gamedata, serverdata: &Serverdata) -> Result<Book> {
let mut pages = Vec::new();
@@ -97,8 +39,9 @@ pub fn book(data: &Gamedata, serverdata: &Serverdata) -> Result<Book> {
});
let mut toc = Vec::new();
- for &RecipePageParams { name, repr_items } in RECIPE_PAGES {
- let mut diagram = recipe_diagram(data, serverdata, repr_items)?;
+ for (name, repr) in serverdata.recipe_groups.clone() {
+ let repr = repr.into_iter().collect::<Vec<_>>();
+ let mut diagram = recipe_diagram(data, serverdata, &repr)?;
diagram_layout(&mut diagram)?;
let title = Message::Translation {
id: format!("b.{name}.title"),